Closed Bug 1650627 Opened 5 years ago Closed 5 years ago

Firefox Profiler couldn't retrieve the profile from the Firefox due to "NotFoundError: IDBDatabase.transaction: 'symbol-tables' is not a known object store name"

Categories

(Core :: Gecko Profiler, defect)

x86_64
Windows 7
defect

Tracking

()

VERIFIED MOVED

People

(Reporter: Virtual, Unassigned)

References

Details

(Keywords: nightly-community, reproducible)

Attachments

(2 files)

I wanted to catch profile in latest Mozilla Firefox Nightly 80.0a1, because of constant hangs on opening new website pages for last few days, but I can't do that, as Firefox Profiles shows me this error:

Firefox Profiler

Couldn't retrieve the profile from the Firefox.

NotFoundError: IDBDatabase.transaction: 'symbol-tables' is not a known object store name

The full stack has been written to the Web Console.

In Web Console I have this errors:

13:11:16.540 __ _ __
/ () / |
| |
_ _ __ | | _____ __
| _| | '
/ _ \ / _ \ / /
| | | | | | __/ || (
) > < __ _ _
|| ||| ___|| _//_\ / () |
,. ,. _ __ _ __ ___ | |
| | ___ _ _
| \ / | | '
| '
/ _ | | | |/ _ \ '|
|/ \ _ / | | |) | | | () | | | | | / |
| | | .
/|| ___/|| |||___||
/ - - \ |
|
,- V__V -.
-= __- * - .,=-
\_ - _/-----' d2b9e41cf6f4ec03bbf7.bundle.js:134:6233
13:11:16.541 The following profiler information is available via the console:

window.profile - The currently loaded profile
window.filteredThread - The current filtered thread
window.filteredMarkers - The current filtered and processed markers
window.callTree - The call tree of the current filtered thread
window.getState - The function that returns the current Redux state.
window.selectors - All the selectors that are used to get data from the Redux state.
window.dispatch - The function to dispatch a Redux action to change the state.
window.actions - All the actions that can be dispatched to change the state.

The profile format is documented here:
https://github.com/firefox-devtools/profiler/blob/master/docs-developer/processed-profile-format.md

The CallTree class's source code is available here:
https://github.com/firefox-devtools/profiler/blob/master/src/profile-logic/call-tree.js d2b9e41cf6f4ec03bbf7.bundle.js:134:7159
13:11:16.729 Successfully compiled asm.js code (total compilation time 80ms) zee-worker.js
13:11:18.370 Encountered error while cleaning out database: DOMException: IDBDatabase.transaction: 'symbol-tables' is not a known object store name d2b9e41cf6f4ec03bbf7.bundle.js:56:91984
13:11:18.374 DOMException: IDBDatabase.transaction: 'symbol-tables' is not a known object store name d2b9e41cf6f4ec03bbf7.bundle.js:130:82797
13:11:18.398 Uncaught (in promise) DOMException: IDBDatabase.transaction: 'symbol-tables' is not a known object store name d2b9e41cf6f4ec03bbf7.bundle.js:56

This looks more like a front-end issue.

Julien, what do you think? (If I'm correct, please open a corresponding issue on Github.)

Flags: needinfo?(felash)

Yeah this is clearly a frontend problems.
We already got a mention of a similar problem, and the problem is clear: the DB we use is present, but doesn't have our object store. We don't know how this can happen. Maybe some eviction that didn't happen properly (eviction is supposed to remove all data for an origin), in this case I'm thinking of a bug in Firefox.

To fix it quickly you can:

  1. go to profiler.firefox.com
  2. go to the devtools' storage panel
  3. delete the indexeddb that exists for the origin.

Before 3 I'd be interested to see what's there, can you please make me a screenshot please? Thanks!

Flags: needinfo?(felash) → needinfo?(Virtual)
Attached image 1.png

Awesome! That fixed issue. Thank you very much! Here are requested screenshots.

Flags: needinfo?(Virtual)

Resetting the severity so that the triage owner can decide. This doesn't seem like an S1 severity to me, though.
https://wiki.mozilla.org/BMO/UserGuide/BugFields#bug_severity

Severity: S1 → --

Thanks for the screenshots!
Yeah, as I suspected, we have a DB with version 2 with no objectstores, which shouldn't ever happen.

I'm tempted to bump the version to force creating the db again. Maybe we had a bad version in the past? Or some version of Firefox had a bug with eviction?

I'll be closing this bug here for now, but filed https://github.com/firefox-devtools/profiler/issues/2637 on our frontend repository.
Thanks!

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → MOVED

(In reply to Julien Wajsberg [:julienw] from comment #6)

Thanks for the screenshots!
Yeah, as I suspected, we have a DB with version 2 with no objectstores, which shouldn't ever happen.

I'm tempted to bump the version to force creating the db again. Maybe we had a bad version in the past? Or some version of Firefox had a bug with eviction?

Please do. It will help other people with same issue as mine.

(In reply to Julien Wajsberg [:julienw] from comment #6)

I'll be closing this bug here for now, but filed https://github.com/firefox-devtools/profiler/issues/2637 on our frontend repository.
Thanks!

OK. Thank you very much for creating it in my stead.

Blocks: 1653276
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: