<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - REGRESSION (r201461): LayoutTest storage/indexeddb/database-close-private.html is a flaky failure"
href="https://bugs.webkit.org/show_bug.cgi?id=158500#c7">Comment # 7</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - REGRESSION (r201461): LayoutTest storage/indexeddb/database-close-private.html is a flaky failure"
href="https://bugs.webkit.org/show_bug.cgi?id=158500">bug 158500</a>
from <span class="vcard"><a class="email" href="mailto:beidson@apple.com" title="Brady Eidson <beidson@apple.com>"> <span class="fn">Brady Eidson</span></a>
</span></b>
<pre>I created a modified test case that spins up 100 transactions instead of just 2.
It's always the same failure more - only 1 hasn't finished.
Then I epihanied: This is because the event for the second transaction completing is queued, and not fired, and *then* the delete operation is unblocked before the queued event fires.
It can never happen in the DatabaseProcess because of how the IPC races resolves themselves with the in process thread hopping races. - The delete being unblocked will never come in before the transaction complete event fires.
This is truly unique to the InProcessIDBServer, which basically spins the main thread run loop to simulate asynchroncity, but much more reliably triggers a case like this.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>