[Webkit-unassigned] [Bug 204379] New: IndexedDB: lock-based implementation of suspension

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Nov 19 14:34:54 PST 2019


https://bugs.webkit.org/show_bug.cgi?id=204379

            Bug ID: 204379
           Summary: IndexedDB: lock-based implementation of suspension
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: New Bugs
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: sihui_liu at apple.com

When process is about to suspend, we would:
1. suspend the database thread (by making it wait on a condition variable)
2. (wait on main thread until 1 finishes) stop all transactions on the main thread
To implement this, database thread would check whether it needs to suspend *after each task*. If it needs to, it would wake up the main thread, and wait on suspend condition.

However, if the database thread is already suspended (e.g. waiting on lock) in the middle of some task, the thread will not get to the point of checking suspension state and waking up main thread. Main thread would be stuck.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20191119/4532f5d0/attachment-0001.htm>


More information about the webkit-unassigned mailing list