Closed Bug 1664405 Opened 3 months ago Closed 3 months ago

Missing some CSS stylesheet network requests after reload

Categories

(Core :: Networking, defect)

80 Branch
defect

Tracking

()

RESOLVED FIXED
82 Branch
Tracking Status
firefox-esr68 --- unaffected
firefox-esr78 --- unaffected
firefox80 --- wontfix
firefox81 --- fixed
firefox82 --- fixed

People

(Reporter: yajo.sk8, Assigned: emilio)

References

(Regression)

Details

(Keywords: regression)

Attachments

(2 files)

User Agent: Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:80.0) Gecko/20100101 Firefox/80.0

Steps to reproduce:

You need to open Odoo website in debug=assets mode and filter scss files downloaded. The gif shows it live, but here are the steps explained:

  • Open network inspector
  • Filter requests for "scss" string
  • Go to https://runbot.odoo.com/
  • Click on the 1st blue icon for "odoo" in the row entitled "13.0"
  • Select the database that ends with "all"
  • Edit URL and go to "/?debug=assets" to enable debug mode
  • You should see a few scss requests (in reality the code downloaded is plain CSS, but the file name contains "scss" to let the dev know where this CSS is compiled from).
  • Reload the page using Ctrl+F5
  • You see all those scss requests also
  • Reload the page using F5 this time

Actual results:

No more scss requests appear in the network log.

Expected results:

The same scss requests should appear, because they are actually downloaded.

Component: Untriaged → DOM: Core & HTML
Product: Firefox → Core
Component: DOM: Core & HTML → CSS Parsing and Computation

Yeah there's something fishy there...

We're hitting the memory cache, which doesn't do network requests... But as far as I can tell those get served with Cache-Control: no-cache (even though they get served with an expires value of a week from now on).

So I think we're caching them incorrectly.

Flags: needinfo?(emilio)
Assignee: nobody → emilio
Status: UNCONFIRMED → NEW
Component: CSS Parsing and Computation → Networking
Ever confirmed: true
Flags: needinfo?(emilio)
Keywords: regression
Regressed by: 1649807

Oof, I sometimes really hate C++ :/

The new assert makes our tests go boom without the fix.

Thanks a lot for the steps to reproduce (even if a bit contrived)! We had seen a couple reports of this but none of them gave clear steps to reproduce.

Duplicate of this bug: 1660200

This was fixed by way of backout for 81.0rc1. We can rely on the patch from this bug to properly fix it for 82+ going forward.
https://hg.mozilla.org/releases/mozilla-beta/rev/8c2e83cd3507

Pushed by ealvarez@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/3a1de8553b3e
Properly copy mHasCacheControl in nsHttpResponseHead::operator=. r=dragana,necko-reviewers
Status: NEW → RESOLVED
Closed: 3 months ago
Resolution: --- → FIXED
Target Milestone: --- → 82 Branch

Yay! Happy to help! And happy to know I'm not crazy 😂

See Also: → 1669351
You need to log in before you can comment on or make changes to this bug.