Perma [fission][tier2] browser/base/content/test/general/browser_alltabslistener.js | Got a notification for the front notifications listener - Got "onStateChange", expected "onLocationChange"
Categories
(Core :: Audio/Video: Playback, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr68 | --- | unaffected |
firefox-esr78 | --- | unaffected |
firefox80 | --- | unaffected |
firefox81 | --- | unaffected |
firefox82 | --- | wontfix |
firefox83 | --- | wontfix |
firefox84 | --- | wontfix |
firefox85 | --- | fixed |
People
(Reporter: intermittent-bug-filer, Assigned: annyG)
References
(Regression)
Details
(Keywords: intermittent-failure, regression, Whiteboard: [stockwell disabled])
Attachments
(2 files, 1 obsolete file)
Filed by: nbeleuzu [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer.html#?job_id=314320248&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/G0tYNBH1Q8mjeDWitR6ygg/runs/0/artifacts/public/logs/live_backing.log
[task 2020-08-28T21:09:01.074Z] 21:09:01 INFO - TEST-PASS | browser/base/content/test/general/browser_alltabslistener.js | Got an expected notification for the front notifications listener - 2 < 5 -
[task 2020-08-28T21:09:01.074Z] 21:09:01 INFO - Buffered messages finished
[task 2020-08-28T21:09:01.075Z] 21:09:01 INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/general/browser_alltabslistener.js | Got a notification for the front notifications listener - Got "onStateChange", expected "onLocationChange"
[task 2020-08-28T21:09:01.075Z] 21:09:01 INFO - Stack trace:
[task 2020-08-28T21:09:01.075Z] 21:09:01 INFO - chrome://mochikit/content/browser-test.js:test_is:1332
[task 2020-08-28T21:09:01.075Z] 21:09:01 INFO - chrome://mochitests/content/browser/browser/base/content/test/general/browser_alltabslistener.js:onStateChange:33
[task 2020-08-28T21:09:01.075Z] 21:09:01 INFO - chrome://browser/content/tabbrowser.js:callListeners:832
[task 2020-08-28T21:09:01.076Z] 21:09:01 INFO - chrome://browser/content/tabbrowser.js:_callProgressListeners:846
[task 2020-08-28T21:09:01.076Z] 21:09:01 INFO - chrome://browser/content/tabbrowser.js:_callProgressListeners:5826
[task 2020-08-28T21:09:01.076Z] 21:09:01 INFO - chrome://browser/content/tabbrowser.js:onStateChange:6091
[task 2020-08-28T21:09:01.076Z] 21:09:01 INFO - AllProgress (http://example.org/browser/browser/base/content/test/general/alltabslistener.html): onStateChange 0xf0001
[task 2020-08-28T21:09:01.080Z] 21:09:01 INFO - TEST-PASS | browser/base/content/test/general/browser_alltabslistener.js | onStateChange notification came from the correct browser -
[task 2020-08-28T21:09:01.080Z] 21:09:01 INFO - TEST-PASS | browser/base/content/test/general/browser_alltabslistener.js | Got an expected notification for the all notifications listener - 1 < 4 -
[task 2020-08-28T21:09:01.080Z] 21:09:01 INFO - Not taking screenshot here: see the one that was previously logged
[task 2020-08-28T21:09:01.080Z] 21:09:01 INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/general/browser_alltabslistener.js | Got a notification for the all notifications listener - Got "onStateChange", expected "onLocationChange"
[task 2020-08-28T21:09:01.080Z] 21:09:01 INFO - Stack trace:
[task 2020-08-28T21:09:01.081Z] 21:09:01 INFO - chrome://mochikit/content/browser-test.js:test_is:1332
[task 2020-08-28T21:09:01.081Z] 21:09:01 INFO - chrome://mochitests/content/browser/browser/base/content/test/general/browser_alltabslistener.js:onStateChange:102
[task 2020-08-28T21:09:01.081Z] 21:09:01 INFO - chrome://browser/content/tabbrowser.js:callListeners:832
[task 2020-08-28T21:09:01.081Z] 21:09:01 INFO - chrome://browser/content/tabbrowser.js:_callProgressListeners:852
[task 2020-08-28T21:09:01.081Z] 21:09:01 INFO - chrome://browser/content/tabbrowser.js:_callProgressListeners:5826
[task 2020-08-28T21:09:01.081Z] 21:09:01 INFO - chrome://browser/content/tabbrowser.js:onStateChange:6099
[task 2020-08-28T21:09:01.081Z] 21:09:01 INFO - GECKO(3767) | [Child 4182, Main Thread] WARNING: NS_ENSURE_TRUE(info) failed: file /builds/worker/checkouts/gecko/extensions/permissions/PermissionDelegateHandler.cpp, line 348
[task 2020-08-28T21:09:01.085Z] 21:09:01 INFO - GECKO(3767) | [Child 4182: Main Thread]: I/DocShellAndDOMWindowLeak ++DOMWINDOW == 3 (0x7f4f34880800) [pid = 4182] [serial = 3] [outer = 0x7f4f4aa93520]
[task 2020-08-28T21:09:01.086Z] 21:09:01 INFO - GECKO(3767) | [Child 4266, Main Thread] WARNING: could not set real-time limit in CubebUtils::InitLibrary: file /builds/worker/checkouts/gecko/dom/media/CubebUtils.cpp, line 626
[task 2020-08-28T21:09:01.086Z] 21:09:01 INFO - FrontProgress: onLocationChange http://example.org/browser/browser/base/content/test/general/alltabslistener.html
[task 2020-08-28T21:09:01.090Z] 21:09:01 INFO - TEST-PASS | browser/base/content/test/general/browser_alltabslistener.js | Got an expected notification for the front notifications listener - 3 < 5 -
[task 2020-08-28T21:09:01.090Z] 21:09:01 INFO - Not taking screenshot here: see the one that was previously logged
Comment 1•4 years ago
|
||
Bugbug thinks this bug should belong to this component, but please revert this change in case of error.
Comment 2•4 years ago
|
||
Updated•4 years ago
|
Comment hidden (Intermittent Failures Robot) |
Comment 4•4 years ago
|
||
Comment 5•4 years ago
|
||
Anny, could you take a look?
Updated•4 years ago
|
Updated•4 years ago
|
Comment hidden (Intermittent Failures Robot) |
Comment 7•4 years ago
|
||
Set release status flags based on info from the regressing bug 1589102
Assignee | ||
Comment 8•4 years ago
|
||
Hi, looking into this!
Comment hidden (Intermittent Failures Robot) |
Comment 10•4 years ago
|
||
This is now perma-failing on tier1: https://treeherder.mozilla.org/#/jobs?repo=autoland&group_state=expanded&selectedTaskRun=cCddP1xLS8qNRvgq-dmazA.0&resultStatus=testfailed%2Cbusted%2Cexception&revision=64efed429f67a5f929e044fcc3f3a402101af7dd
If there is no fix here until tomorrow the latest, we will disable it on fission.
Thank you.
Ni Razvan for the fyi.
Comment 11•4 years ago
|
||
Updated•4 years ago
|
Comment hidden (Intermittent Failures Robot) |
Updated•4 years ago
|
Updated•4 years ago
|
Comment 13•4 years ago
|
||
Pushed by rgurzau@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/98c4825fc36c Disabled browser_alltabslistener.js on fission. r?#intermittent-reviewers
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Comment 14•4 years ago
|
||
bugherder |
Comment hidden (Intermittent Failures Robot) |
Updated•4 years ago
|
Comment hidden (Intermittent Failures Robot) |
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 17•4 years ago
|
||
This potentially might depend on bug 1668864
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 18•4 years ago
|
||
:kmag suggested that instead of keeping mSuspendedProgressEvents
in BrowserParent, we can do the following
So, I'd say we should either store the flag on FrameLoaderOwner and copy it to the BrowserParent when we initialize the remote browser here or add a helper to grab the owner element and cast it to a FrameLoaderOwner in the places where we check the flag such as here though that'll be a bit tricky if we have to handler OOP iframes where we'll have a BrowserBridgeParent rather than a FrameLoaderOwner
Some observations:
mSuspendedProgressEvents
flag is used inBrowserParent
whenever we receive any progress events, in methodsBrowserParent::RecvOnStateChange
,BrowserParent::RecvOnProgressChange
,BrowserParent::RecvOnLocationChange
,BrowserParent::RecvOnStatusChange
. We can start storing this flag on nsFrameLoaderOwner and BrowserBridgeParent so that whenever BrowserParent needs to access it, it can cast its owner element to either nsFrameLoaderOwner or BrowserBridgeParent and retrieve the flag that way.mSuspendedProgressEvents
is modified in the following cases:- In
nsFrameLoader::StartDestroy
. Here if we have a BrowserParent available that means the nsFrameLoader corresponds to the top level document and we are currently in the parent process. Modify the flag on nsFrameLoaderOwner. - In
nsFrameLoaderOwner::ChangeRemotenessCommon
. Same as above - In
DocumentLoadListener::TriggerProcessSwitch
. Before we get the BrowserParent we ensure thatWindowGlobalParent::IsProcessRoot
returns true. Do the same thing as above. - In
DocumentLoadListener::OnStartRequest
. Depends on what the owner element is.
- In
I will extract setting of the flag into its own function on BrowserParent that will do the right thing based on its owner element.
Assignee | ||
Comment 19•4 years ago
|
||
Assignee | ||
Comment 20•4 years ago
|
||
Updated•4 years ago
|
Comment 21•4 years ago
|
||
Pushed by agakhokidze@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/6ad5891e7cc0 Fix duplicate OnStateChange events during process switches, r=nika
Comment 22•4 years ago
|
||
Pushed by cbrindusan@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/0cc476b645cc Fix ESlint prettier error. r=nbeleuzu CLOSED TREE
Comment 23•4 years ago
|
||
bugherder |
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Updated•3 years ago
|
Updated•3 years ago
|
Updated•3 years ago
|
Description
•