IDB: Add IsShuttingDown check to DatabaseOperationBase::OnProgress
Categories
(Core :: Storage: IndexedDB, task, P1)
Tracking
()
People
(Reporter: janv, Assigned: janv)
References
Details
Attachments
(1 file)
47 bytes,
text/x-phabricator-request
|
jcristau
:
approval-mozilla-beta+
|
Details | Review |
According to:
https://crash-stats.mozilla.org/report/index/a35162fc-bc01-4184-b4c8-300c80190607#allthreads
the IDB shutdown timer fired when an IDB thread was actively running an operation.
I guess it can happen that an operation like GetAll with a big database can block shutdown for long time. DatabaseOperationBase::OnProgress now interrupts the operation only when the actor was destroyed. I think we should also add the IsShuttingDown check there.
Assignee | ||
Comment 1•5 years ago
|
||
Assignee | ||
Updated•5 years ago
|
Comment 3•5 years ago
|
||
bugherder |
Assignee | ||
Comment 4•5 years ago
•
|
||
Comment on attachment 9070688 [details]
Bug 1557820 - IDB: Add IsShuttingDown check to DatabaseOperationBase::OnProgress; r=asuth
Beta/Release Uplift Approval Request
- User impact if declined: Users may experience shutdown hangs caused by long running database operations.
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): The change is simple. We just interrupt a database operation when we are shutting down. When quota manager and its clients (for example IndexedDB) are shutting down other system components should have already flushed changes to disk.
- String changes made/needed: None
Comment 5•5 years ago
|
||
Comment on attachment 9070688 [details]
Bug 1557820 - IDB: Add IsShuttingDown check to DatabaseOperationBase::OnProgress; r=asuth
shutdown hang prevention, approved for 68.0b10
Comment 6•5 years ago
|
||
bugherder uplift |
Description
•