Open Bug 1277798 Opened 10 years ago Updated 3 years ago

video content not reloaded with reload override cache

Categories

(Core :: Audio/Video: Playback, defect, P3)

46 Branch
x86_64
Linux
defect

Tracking

()

REOPENED

People

(Reporter: firefox.com, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:46.0) Gecko/20100101 Firefox/46.0 Build ID: 20160502172042 Steps to reproduce: * Create a page on http://localhost/~user/videotest.html containing <video poster="foo.jpg"><source src="foo.mp4" type="video/mp4" preload="auto" autoplay></video> * Load the page play the video. * Place another video at same path (~/public_hrml/foo.mp4) * Reload page using [SHIFT] [CTRL] [R] Actual results: Old video played again. New video wasn't fetched from the webserver. Content of apache/access.log 127.0.0.1 - - [03/Jun/2016:11:27:20 +0200] "GET /~user/videotest.html HTTP/1.1" 200 2341 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:46.0) Gecko/20100101 Firefox/46.0" 127.0.0.1 - - [03/Jun/2016:11:27:20 +0200] "GET /~user/foo.jpg HTTP/1.1" 200 25984 "http://localhost/~user/videotest.html" "Mozilla/5.0 (X11; Linux x86_64; rv:46.0) Gecko/20100101 Firefox/46.0" Expected results: New video was fetched and played.
OS: Unspecified → Linux
Hardware: Unspecified → x86_64
Component: Untriaged → Networking: Cache
Product: Firefox → Core
Thanks for filing this bug. Do you think you could comment with what request/response headers are set for each request?
Flags: needinfo?(firefox.com)
Wireshark says: Html: GET / HTTP/1.1 Host: localhost User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Connection: keep-alive HTTP/1.1 200 OK Date: Mon, 13 Jun 2016 05:53:20 GMT Server: Apache/2.4.10 (Debian) Last-Modified: Mon, 13 Jun 2016 05:52:40 GMT ETag: "89-535227f0ce359-gzip" Accept-Ranges: bytes Vary: Accept-Encoding Content-Encoding: gzip Content-Length: 124 Keep-Alive: timeout=5, max=100 Connection: Keep-Alive Content-Type: text/html Poster: GET /bg.jpg HTTP/1.1 Host: localhost User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0 Accept: */* Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Referer: http://localhost/ Connection: keep-alive HTTP/1.1 200 OK Date: Mon, 13 Jun 2016 05:53:20 GMT Server: Apache/2.4.10 (Debian) Last-Modified: Mon, 13 Jun 2016 05:51:13 GMT ETag: "6460-5352279deaabb" Accept-Ranges: bytes Content-Length: 25696 Keep-Alive: timeout=5, max=99 Connection: Keep-Alive Content-Type: image/jpeg Video: GET /bg.mp4 HTTP/1.1 Host: localhost User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0 Accept: video/webm,video/ogg,video/*;q=0.9,application/ogg;q=0.7,audio/*;q=0.6,*/*;q=0.5 Accept-Language: en-US,en;q=0.5 Range: bytes=0- Referer: http://localhost/ Connection: keep-alive HTTP/1.1 206 Partial Content Date: Mon, 13 Jun 2016 05:53:20 GMT Server: Apache/2.4.10 (Debian) Last-Modified: Mon, 13 Jun 2016 05:51:21 GMT ETag: "11f845-535227a565b15" Accept-Ranges: bytes Content-Length: 1177669 Content-Range: bytes 0-1177668/1177669 Keep-Alive: timeout=5, max=98 Connection: Keep-Alive Content-Type: video/mp4 Reload [CTRL] [SHIFT] [R]: Html: GET / HTTP/1.1 Host: localhost User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Connection: keep-alive Pragma: no-cache Cache-Control: no-cache HTTP/1.1 200 OK Date: Mon, 13 Jun 2016 06:00:35 GMT Server: Apache/2.4.10 (Debian) Last-Modified: Mon, 13 Jun 2016 05:59:47 GMT ETag: "89-5352298843d50-gzip" Accept-Ranges: bytes Vary: Accept-Encoding Content-Encoding: gzip Content-Length: 121 Keep-Alive: timeout=5, max=100 Connection: Keep-Alive Content-Type: text/html Poster: GET /bg.jpg HTTP/1.1 Host: localhost User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:47.0) Gecko/none20100101 Firefox/47.0 Accept: */* Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Referer: http://localhost/ Connection: keep-alive Pragma: no-cache Cache-Control: no-cache HTTP/1.1 200 OK Date: Mon, 13 Jun 2016 05:57:16 GMT Server: Apache/2.4.10 (Debian) Last-Modified: Mon, 13 Jun 2016 05:51:13 GMT ETag: "6460-5352279deaabb" Accept-Ranges: bytes Content-Length: 25696 Keep-Alive: timeout=5, max=99 Connection: Keep-Alive Content-Type: image/jpeg Video: [Not requested] Content of html: <html> <body> <video poster="bg.jpg" loop preload="auto" autoplay muted> <source src="bg.mp4" type="video/mp4"> </video> </body> </html> I even tried to touch the index.html file to get a new ETag for that.
Flags: needinfo?(firefox.com)
It seems I can reproduce this locally using the simple instructions provided by the reporter. I looked at some logs, and it seems the refresh doesn't reload the video at all. At the same time, I've enabled logging for MediaCache and it seems to be active in this. Could we get someone in the media/DOM team to take a look at this?
Component: Networking: Cache → Audio/Video
Flags: needinfo?(jyavenard)
Component: Audio/Video → Audio/Video: Playback
Mass change P2 -> P3
Priority: P2 → P3
I don't think this is a media playback issue. but how the resource handling is doing it. Not sure if Networking:Cache is the appropriate place, but the name certainly sounds right !
Component: Audio/Video: Playback → Networking: Cache
Flags: needinfo?(jyavenard)
Looks like a dup of bug 1290318.
Status: UNCONFIRMED → RESOLVED
Closed: 10 years ago
Resolution: --- → DUPLICATE
It's unlikely this is a dupe. From what I can tell bug 1290318 is about clearing the entire cache. This is just about force-reloading a page. Even though the HTML hasn't changed, the content of the video file has. However, we don't make another network request for it. In my previous investigation I remember not being able to figure out which component decides not to make another network request - Necko, DOM, or the Media cache. I'll take a look in a few weeks, unless someone else wants to look into it first.
Status: RESOLVED → REOPENED
Ever confirmed: true
Flags: needinfo?(valentin.gosu)
Resolution: DUPLICATE → ---
Whiteboard: [necko-next]
(In reply to Valentin Gosu [:valentin] (vacation until 1 Sept) from comment #3) > It seems I can reproduce this locally using the simple instructions provided > by the reporter. I looked at some logs, and it seems the refresh doesn't > reload the video at all. > At the same time, I've enabled logging for MediaCache and it seems to be > active in this. > Could we get someone in the media/DOM team to take a look at this? Did you see an http channel open for the video on shift reload? If not, this is not a necko bug.
Attached file log.txt
There seems to be only one channel to the mp4 file created. So this is either a mediaCache/DOM issue.
Flags: needinfo?(valentin.gosu)
Component: Networking: Cache → Audio/Video: Playback
Whiteboard: [necko-next]
See Also: → 1324883
Valentin, any chance you'll be able to look again? This sounds like a confusing experience for developers when working on a site.
Flags: needinfo?(valentin.gosu)
Based on comment 8, 9 and 10, this is a mediaCache or DOM issue. Someone on the AV team should take a look at this.
Flags: needinfo?(valentin.gosu)
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: