Closed Bug 1716444 Opened 3 years ago Closed 3 years ago

browser/components/sessionstore/test/browser_sessionHistory.js fails intermittently with SHIP+BFCache

Categories

(Firefox :: Session Restore, defect)

defect

Tracking

()

RESOLVED FIXED
91 Branch
Tracking Status
firefox-esr78 --- unaffected
firefox89 --- unaffected
firefox90 --- unaffected
firefox91 --- fixed

People

(Reporter: smaug, Assigned: u608768)

References

(Regression)

Details

(Keywords: regression)

Attachments

(1 file)

This is some recent-ish regression, maybe from bug 1715264
(since the test was fixed already once to work with bfcache in bug 1704553)

One may need to use --repeat <some number> to trigger the failure. Fails locally with an opt linux build.

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

With fission and bfcache:
FAIL url is correct - Got "data:text/html;charset=utf-8,<frameset cols=50%25,50%25><frame src='http://mochi.test:8888/browser/browser/components/sessionstore/test/browser_sessionHistory_slow.sjs'></frameset>", expected "http://example.com/"

Kashav said that the effect of this failure would be reopen last closed tab not restoring the correct tab, and that this test is racy. So, this might be a test issue or a corner case that a user is very unlikely to run into. We haven't had any reports of this functionality not working and some of the fission team members have been running with bfcacheInParent enabled and haven't run into this either.
Marking for M8.

Fission Milestone: --- → M8

If we're destroying the frame loader of a replaced browsing context we'll end up
firing browser-shutdown-tabstate-updated for a tab that wasn't actually closed.

This results in us cleaning up Session Store state earlier than expected, which
means we drop future updates to SessionStoreInternal._closedTabs.

Fixes browser_sessionHistory.js, browser_async_remove_tab.js, and possibly
browser_491168.js for SHIP+BFCache.

Assignee: nobody → kmadan
Status: NEW → ASSIGNED

The following was my bugzilla comment arriving a day after I wrote it. Kashav has already solved it, see comment 4 above.

I get "Uncaught exception - AbortError: Actor 'SpecialPowers' destroyed before query 'Spawn' was resolved" without Fission, in debug. [1]

With Fission and bfcache in parent I get[2]:
3:56.82 FAIL url is correct - Got "data:text/html;charset=utf-8,<frameset cols=50%25,50%25><frame src='http://mochi.test:8888/browser/browser/components/sessionstore/test/browser_sessionHistory_slow.sjs'></frameset>", expected "http://example.com/"
Stack trace:
chrome://mochikit/content/browser-test.js:test_is:1362
chrome://mochitests/content/browser/browser/components/sessionstore/test/browser_sessionHistory.js:test_load_start:33

[1] https://pernos.co/debug/ub2EnTRrl7D_ZrvDW9xgGQ/index.html
[2] https://pernos.co/debug/uZfj9hEJce9Q9mVB_mh8Cw/index.html

Status: ASSIGNED → NEW
Fission Milestone: M8 → ---
Pushed by kmadan@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/fe13a01099cf Don't do final tab state flush for replaced contexts, r=farre,annyG
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 91 Branch
Has Regression Range: --- → yes
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: