Closed Bug 1834567 Opened 2 years ago Closed 1 years ago

High freq Assertion failure: !StylistNeedsUpdate(), at /builds/worker/checkouts/gecko/layout/style/ServoStyleSet.cpp:609

Categories

(Core :: CSS Parsing and Computation, defect, P5)

defect

Tracking

()

RESOLVED FIXED
116 Branch
Tracking Status
firefox-esr102 --- unaffected
firefox114 --- unaffected
firefox115 --- unaffected
firefox116 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: emilio)

References

(Regression)

Details

(Keywords: assertion, intermittent-failure, regression, Whiteboard: [retriggered][stockwell unknown])

Attachments

(1 file)

Filed by: nerli [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=416731257&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/SpqfCmcXSUyab6wDXa0u-Q/runs/0/artifacts/public/logs/live_backing.log


[task 2023-05-23T15:13:51.417Z] 15:13:51     INFO - TEST-START | browser/components/preferences/tests/browser_localSearchShortcuts.js
[task 2023-05-23T15:13:51.434Z] 15:13:51     INFO - GECKO(1590) | [Child 1786: Main Thread]: I/DocShellAndDOMWindowLeak ++DOCSHELL 7f1434733c00 == 1 [pid = 1786] [id = 11]
[task 2023-05-23T15:13:51.436Z] 15:13:51     INFO - GECKO(1590) | [Child 1786: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 1 (7f143986d470) [pid = 1786] [serial = 23] [outer = 0]
[task 2023-05-23T15:13:51.439Z] 15:13:51     INFO - GECKO(1590) | [Child 1786: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 2 (7f1434735000) [pid = 1786] [serial = 24] [outer = 7f143986d470]
[task 2023-05-23T15:13:51.593Z] 15:13:51     INFO - GECKO(1590) | [Parent 1590: Main Thread]: I/DocShellAndDOMWindowLeak ++DOCSHELL 7fc008a09c00 == 17 [pid = 1590] [id = 358]
[task 2023-05-23T15:13:51.596Z] 15:13:51     INFO - GECKO(1590) | [Parent 1590: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 56 (7fc0015d4940) [pid = 1590] [serial = 1162] [outer = 0]
[task 2023-05-23T15:13:51.599Z] 15:13:51     INFO - GECKO(1590) | [Parent 1590: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 57 (7fc00b6d1400) [pid = 1590] [serial = 1163] [outer = 7fc0015d4940]
[task 2023-05-23T15:13:51.614Z] 15:13:51     INFO - GECKO(1590) | [Parent 1590, Main Thread] WARNING: '!sTextInputHandlingWidget', file /builds/worker/checkouts/gecko/dom/events/IMEStateManager.cpp:1015
[task 2023-05-23T15:13:51.630Z] 15:13:51     INFO - GECKO(1590) | [Parent 1590: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 58 (7fc007212800) [pid = 1590] [serial = 1164] [outer = 7fc0015d4940]
[task 2023-05-23T15:13:51.675Z] 15:13:51     INFO - GECKO(1590) | [Parent 1590, Main Thread] WARNING: 'aOwner->IsDiscarded()', file /builds/worker/workspace/obj-build/dist/include/mozilla/dom/SyncedContextInlines.h:95
[task 2023-05-23T15:13:51.973Z] 15:13:51     INFO - GECKO(1590) | [Parent 1590: Main Thread]: I/DocShellAndDOMWindowLeak ++DOCSHELL 7fc00c7b6000 == 18 [pid = 1590] [id = 359]
[task 2023-05-23T15:13:51.975Z] 15:13:51     INFO - GECKO(1590) | [Parent 1590: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 59 (7fc00d0704e0) [pid = 1590] [serial = 1165] [outer = 0]
[task 2023-05-23T15:13:51.976Z] 15:13:51     INFO - GECKO(1590) | [Parent 1590: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 60 (7fc00c7b6800) [pid = 1590] [serial = 1166] [outer = 7fc00d0704e0]
[task 2023-05-23T15:13:52.007Z] 15:13:52     INFO - GECKO(1590) | [Child 1782: Main Thread]: I/DocShellAndDOMWindowLeak --DOCSHELL 7fdb90036c00 == 0 [pid = 1782] [id = 40] [url = about:blank]
[task 2023-05-23T15:13:52.383Z] 15:13:52     INFO - GECKO(1590) | [Parent 1590: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 61 (7fc00c9b8800) [pid = 1590] [serial = 1167] [outer = 7fc00d0704e0]
[task 2023-05-23T15:13:52.741Z] 15:13:52     INFO - GECKO(1590) | [Parent 1590, Main Thread] WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80004005 (NS_ERROR_FAILURE): file /builds/worker/checkouts/gecko/toolkit/xre/nsXREDirProvider.cpp:475
[task 2023-05-23T15:13:52.836Z] 15:13:52     INFO - GECKO(1590) | [fluent-dom] While translating an element with fluent ID "translations-manage-download-button" a child element of type "hbox" was removed. Either the fluent message does not contain markup, or it does not contain markup of this type.
[task 2023-05-23T15:13:52.839Z] 15:13:52     INFO - GECKO(1590) | [fluent-dom] While translating an element with fluent ID "translations-manage-delete-button" a child element of type "hbox" was removed. Either the fluent message does not contain markup, or it does not contain markup of this type.
[task 2023-05-23T15:13:52.889Z] 15:13:52     INFO - GECKO(1590) | Assertion failure: !StylistNeedsUpdate(), at /builds/worker/checkouts/gecko/layout/style/ServoStyleSet.cpp:609
[task 2023-05-23T15:13:52.899Z] 15:13:52     INFO -  Initializing stack-fixing for the first stack frame, this may take a while...
Summary: Intermittent Assertion failure: !StylistNeedsUpdate(), at /builds/worker/checkouts/gecko/layout/style/ServoStyleSet.cpp:609 → High freq Assertion failure: !StylistNeedsUpdate(), at /builds/worker/checkouts/gecko/layout/style/ServoStyleSet.cpp:609

First occurrence, so far: backfill range and retriggers.

Whiteboard: [retriggered]

Update

There have been 54 failures within the last 7 days:

  • 6 failures on Linux 18.04 x64 WebRender debug
  • 18 failures on OS X 10.15 WebRender debug
  • 8 failures on Windows 11 x86 22H2 WebRender debug
  • 22 failures on Windows 11 x64 22H2 WebRender debug

Recent failure log: https://treeherder.mozilla.org/logviewer?job_id=417800508&repo=autoland&lineNumber=17059

Emilio, can you help us assign this to someone?
Thank you.

Flags: needinfo?(emilio)
Whiteboard: [retriggered] → [retriggered][stockwell needswork:owner]

Do we have an idea of what caused this to start popping up?

Flags: needinfo?(emilio) → needinfo?(ncsoregi)

Also is it always when running browser/components/preferences/tests/browser_localSearchShortcuts.js? Or are there other tests that show this?

Our investigation reveals that this might be caused by https://bugzilla.mozilla.org/show_bug.cgi?id=1831259.
This was initially landed on 23rd of May and was backed out a few pushes later. Another change was then landed on the 30th and was backed out, followed by another land on 31st.
The last land was requested to be backed out on 1st of June for causing 2 other regressions. Since then, the fails stopped.
All the above can be seen in orange factor.

Found other two tests that show this:
browser/components/preferences/tests/browser_searchRestoreDefaults.js
browser/components/preferences/tests/browser_searchFindMoreLink.js

Flags: needinfo?(ncsoregi)
Keywords: regression
Regressed by: 1831259

:Gijs, since you are the author of the regressor, bug 1831259, could you take a look?

For more information, please visit BugBot documentation.

Flags: needinfo?(gijskruitbosch+bugs)

Looks like the fluent errors for the language download stuff are maybe a red herring? But either way that's being fixed in https://phabricator.services.mozilla.com/D179718 .

I don't really know what this assertion means - the message is not very helpful for people not familiar with the code - or why it would be triggered as a result of the patches in bug 1831259. Broadly, those patches are trying to make initialization of the preference panes more sensible. On current central, that initialization manually translates all the fluent while the nodes for not-yet-initialized panes are not in the DOM, and waits for that to be complete before inserting the content. After my patch, the content is just inserted into the DOM and we depend on "normal" fluent mutation-observer based l10n to do the translation work.

Emilio, does that help shed light on why this assertion might trigger? Is there something else I can do to help?

Flags: needinfo?(gijskruitbosch+bugs) → needinfo?(emilio)

If this happens the caller could potentially get an slightly outdated
style, but I couldn't repro this locally and realistically it's not a
big deal in this caller, and it's not observable to the web, so...

Assignee: nobody → emilio
Status: NEW → ASSIGNED

So what that assertion means is that somebody injected stylesheets (might be a shadow tree, maybe something else), but we haven't flushed before calling ResolveTreePseudoStyle. I couldn't repro this when I tried yesterday and I don't think I want to spend a bunch of time investigating this, worst case we just get a one-frame delay in getting the cursor of a XUL tree right...

Flags: needinfo?(emilio)
Pushed by ealvarez@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/d0e9eed0248a Downgrade an assertion in ResolveXULTreePseudoStyle. r=jwatt
Status: ASSIGNED → RESOLVED
Closed: 1 years ago
Resolution: --- → FIXED
Target Milestone: --- → 116 Branch

Set release status flags based on info from the regressing bug 1831259

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: