Closed
Bug 1374675
Opened 7 years ago
Closed 7 years ago
Crash in mozilla::dom::IDBFactory::CreateForWindow
Categories
(Core :: Storage: IndexedDB, defect)
Tracking
()
RESOLVED
FIXED
mozilla56
Tracking | Status | |
---|---|---|
firefox-esr52 | --- | unaffected |
firefox54 | --- | unaffected |
firefox55 | --- | unaffected |
firefox56 | --- | fixed |
People
(Reporter: marcia, Assigned: bevis)
References
Details
(Keywords: crash, regression)
Crash Data
Attachments
(1 file)
2.48 KB,
text/plain
|
Details |
This bug was filed from the Socorro interface and is report bp-255e059d-91c1-467a-b602-2881d0170620. ============================================================= Seen while looking at crash data - crashes started using 20170620030208: http://bit.ly/2sSfwEu Possible regression range based on Build ID: https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=95543bdc59bd038a3d5d084b85a4fec493c349ee&tochange=7a6baa6cca3292e8099e652b64d27e74df560874 Bug 1352401 touched some code in this area. ni on :bevis
Flags: needinfo?(btseng)
Comment 1•7 years ago
|
||
It seems globalWindow->GetScriptableTop() can return nullptr.
Assignee | ||
Comment 2•7 years ago
|
||
In this case, we should re-consider to count individually in IDBFactory::UpdateActiveXxxCount() using TabGroup & mWindow instead of mTopWindow. I'll backout bug 1352401 first and revise the UpdateActive{Database|Transaction)Count() method again.
Flags: needinfo?(btseng)
Comment 3•7 years ago
|
||
IIRC, TabGroup was accessed through mTopWindow in your previous version of the patch, that's why I suggested to update both counters in the window code. Anyway, mWindow has access to the TabGroup too.
Assignee | ||
Comment 4•7 years ago
|
||
Yes, my concern is that TabGroup is always accessible from mTopWindow so the counter could be updated correctly. However, for the counter in the TopWindow that is used by TimeoutManager, how could we update the counters correctly if GetScriptableTop() is null? :(
Assignee | ||
Comment 5•7 years ago
|
||
(In reply to Bevis Tseng [:bevis][:btseng] from comment #4) > Yes, my concern is that TabGroup is always accessible from mTopWindow so the ^ Sorry, it's mWindow instead. > counter could be updated correctly. > However, for the counter in the TopWindow that is used by TimeoutManager, > how could we update the counters correctly if GetScriptableTop() is null? :(
Assignee | ||
Comment 6•7 years ago
|
||
But you are right, we should keep the counting be implemented inside nsGlobalWindow but count with mWindow instead of mTopWindow in IDBFactory.
Comment 7•7 years ago
|
||
So, can you just call mWindow->UpdateXXX() and let that code decide what to update ? The method would always update its TabGroup counter and only update its top window counter if the top window exists. It would be even nicer if we can get rid of mTopWindow in IDBFactory.
Assignee | ||
Comment 8•7 years ago
|
||
(In reply to Jan Varga [:janv] from comment #7) > So, can you just call mWindow->UpdateXXX() and let that code decide what to > update ? > The method would always update its TabGroup counter and only update its top > window counter if the top window exists. > It would be even nicer if we can get rid of mTopWindow in IDBFactory. Yes, that's what I plan to do but maybe update the counter directly to the TimeoutManager of the mWindow. (Because it's still scary to me that we have a valid inner window and its TimeoutManager but we don't provide valid counter information to its TimeoutManager when ScriptableTop is not available which could block the IDB access in other window if timer throttling is enabled.
Comment 9•7 years ago
|
||
Ok, sounds good.
Comment 10•7 years ago
|
||
Backout by btseng@mozilla.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/23cd94436e78 Backed out changeset 9c62253ad1a3 https://hg.mozilla.org/integration/mozilla-inbound/rev/2566cc1e0dd7 Backed out changeset 70d068cc946d
Assignee | ||
Updated•7 years ago
|
Blocks: 1352401
Keywords: regression
Comment 11•7 years ago
|
||
It looks like you folks may have a handle on this, but in case it's helpful, there are two users here (poster and a commenter) reporting similar problems as well as a user in the #nightly IRC channel reporting the same. https://www.reddit.com/r/firefox/comments/6ifrza/nightly_has_stopped_working_every_time_i_close/ They include various bits of information about their systems and the crashes. The reporter from #nightly induced a crash and provided this crash report: https://crash-stats.mozilla.com/report/index/5255f998-26f5-4b93-990f-6efe80170621
Comment 12•7 years ago
|
||
(There are plenty of crash reports, referring to this bug.)
Assignee | ||
Comment 13•7 years ago
|
||
(In reply to Peter Gervai from comment #12) > (There are plenty of crash reports, referring to this bug.) Sorry about that. It has been backed out in mozilla-inbound and shall be backed out from mozilla-central soon.
Comment 14•7 years ago
|
||
Seen the backout. No grudge here. Just had to leave nightly until this gets fixed and pushed out since it became absolutely unusable. It's a weird feeling to be on FF-ESR [and having all my addons magically work again]. :-]
Comment 16•7 years ago
|
||
This was also seen on two urls in Bughunter: https://elise.com.ua/2015/01/11/za-samoj-krovavoj-terroristicheskoj-o/ https://www.theatlantic.com/magazine/archive/2017/06/when-your-child-is-a-psychopath/524502/?utm_source=twb bug 1375066 has a testcase attachment 8880001 [details]
Comment 17•7 years ago
|
||
Forgot to mention: Assertion failure: topOutterWindow, at /home/worker/workspace/build/src/dom/indexedDB/IDBFactory.cpp:168
Merged the backout: https://hg.mozilla.org/mozilla-central/rev/23cd94436e78 https://hg.mozilla.org/mozilla-central/rev/2566cc1e0dd7
Assignee | ||
Comment 19•7 years ago
|
||
Will land the patch again by fixing bug 1352401.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Updated•7 years ago
|
Assignee: nobody → btseng
status-firefox54:
--- → unaffected
status-firefox-esr52:
--- → unaffected
Target Milestone: --- → mozilla56
You need to log in
before you can comment on or make changes to this bug.
Description
•