Closed Bug 1711886 Opened 3 years ago Closed 3 years ago

Consolidate the session store storage for session storage format with the how session storage stores its values

Categories

(Firefox :: Session Restore, enhancement)

enhancement

Tracking

()

RESOLVED FIXED
94 Branch
Fission Milestone Future
Tracking Status
firefox-esr78 --- wontfix
firefox-esr91 --- wontfix
firefox92 --- wontfix
firefox93 --- wontfix
firefox94 --- fixed

People

(Reporter: farre, Assigned: farre)

References

Details

Attachments

(2 files)

In Bug 1710004 we introduce a timer in CanonicalBrowsingContext to flush session storage to session store that is due to navigation. In the same bug we also introduce a work-around because of how values in session storage are store in the parent.

What we would want is to either change the storage format in session store to store the session storage values keyed on the same keys as in the SessionStorageManagerBase class, which is (originAttributes x originKey) or change SessionStorageManagerBase to use the same key as session store, which is the origin (including origin attributes).

Assignee: nobody → afarre
Status: NEW → ASSIGNED
Depends on: 1710004
Fission Milestone: --- → M8

This is a nice-to-have that we should do soon, but is not a blocker for Fission release experiment so moving to MVP.

Fission Milestone: M8 → MVP

Moving to Fission Future.

Fission Milestone: MVP → Future

By storing the PrincipalInfo in the parent copy it is possible to
query the BackgroundSessionStorageManager withouth the need of a
preprocessing step matching resulting data to principals using the
browsing context tree. Instead the result from the query contains the
principal info.

To be able to initialize the parent actor lazily with a principal
info, it was needed to make clearing the storage be a less fine
grained transaction. Instead of sending updates per cache, we after
clearing in the child process we send a message to the parent that in
turn performs the same steps.

Previously we've removed data from the session store that aren't
currently in the current browsing context tree, but this is different
from what BackgroundSessionStorageManager considers to be a
session. After part 1 in this patch series, session store will save
exactly the view BackgroundSessionStorageManager has of the current
sessionStorage state.

Depends on D125680

Pushed by afarre@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/9c9950b72aa7 Part 1: Store PrincipalInfo in SessionStorageCacheParent. r=asuth https://hg.mozilla.org/integration/autoland/rev/734ea92aef27 Part 2: Remove too strict session store test assertions. r=asuth
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 94 Branch

Setting status-firefox93=wontfix because we don't need to uplift this session store fix to Beta 93.

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

Attachment

General

Created:
Updated:
Size: