Open Bug 1806398 Opened 3 months ago Updated 3 months ago

Crash in private mode after upgrade to 108 related to IDB encryption in PBM

Categories

(Core :: Storage: IndexedDB, defect, P3)

Firefox 108
defect

Tracking

()

ASSIGNED

People

(Reporter: onlylogout, Assigned: hsingh)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Attached file stacktrace.log

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

Steps to reproduce:

  1. Ensure you have ublock origin installed and enabled (I suspect it should cache its files first)
  2. Ensure history is not enabled and the browser runs in private mode
  3. Upgrade the browser from 106 to 108 (fedora37 package firefox-108.0-2.fc37.x86_64)
  4. Launch firefox
  5. Observe the crash

Actual results:

So the browser crashes. The stack trace is attached in the stacktrace.log file. After a preliminary look, it seems that it's related to the newly introduced IDB encryption. Possibly the data was incorrectly migrated, since after deleting all PBM IDB data files for the ublock extension, firefox starts normally.

The crash happens here:

mozilla::dom::indexedDB::(anonymous namespace)::CreateFileBlobImpl (aId=9255, aNativeFile=<synthetic pointer>..., aDatabase=...) at /usr/src/debug/firefox-108.0-2.fc37.x86_64/dom/indexedDB/ActorsParent.cpp:5628

to me it seems to suggest that the cipher key is somehow not present for the file..
5628 MOZ_RELEASE_ASSERT(key.isSome());

I can provide the migrated IDB data, but I don't have the old unencrypted data files anymore.

Expected results:

Expected results are that the data for the extension should be properly migrated and the browser shouldn't crash :)

I didn't bold it, but I want to reiterate that after deleting the "moz-extension+++068f467a-f67b-483b-a9b8-18a82c53b2b2^privateBrowsingId=1" folder, firefox starts normally (and a new folder with the same name is created there).

The Bugbug bot thinks this bug should belong to the 'Core::Storage: IndexedDB' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Storage: IndexedDB
Product: Firefox → Core

IDB encryption should be under configuration toggle. Could you please confirm if we have enabled the configuration 'dom.indexedDB.privateBrowsing.enabled' in this system ?

Flags: needinfo?(onlylogout)

(In reply to Harveer Singh from comment #3)

IDB encryption should be under configuration toggle. Could you please confirm if we have enabled the configuration 'dom.indexedDB.privateBrowsing.enabled' in this system ?

I have this setting set to true (it displays as bold). However I don't remember toggling it "unprovoked", I may have toggled it (still not sure) because something didn't work in private mode.

Flags: needinfo?(onlylogout)

So, this feature is still under development. So, I am going to put this bug in our backlog and will definitely ensure that this bug gets fixed before we officially release it.

Assignee: nobody → hsingh
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Blocks: 1639549
Blocks: idb-private-browsing
No longer blocks: 1639549
Severity: -- → S4
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.