Bug 164641

Summary: IndexedDB 2.0: "close pending flag" and firing blocked events all need fixing
Product: WebKit Reporter: Brady Eidson <beidson>
Component: WebCore Misc.Assignee: Brady Eidson <beidson>
Status: RESOLVED FIXED    
Severity: Normal CC: achristensen, alecflett, commit-queue, jsbell
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 160306    
Attachments:
Description Flags
Patch achristensen: review+

Description Brady Eidson 2016-11-11 10:09:07 PST
IndexedDB 2.0: imported/w3c/web-platform-tests/IndexedDB/idbobjectstore-rename-store.html fails

It fails in a test that verifies key generators work properly.

But it fails for reasons unrelated to object store renaming or key generators; It actually exposes a flaw in how we handle IDBDatabase.close()!

Right now, patch seems like it should be easy.
Comment 1 Brady Eidson 2016-11-11 10:15:14 PST
Confirmed a one line change fixes this test.

Now running all the other IDB tests to make sure they all still behave.
Comment 2 Brady Eidson 2016-11-11 12:57:23 PST
One line fixed this specific test, but exposed a trail of failures in others.

Basically revealed long standing issues with the "close pending" flag and firing blocked events.

This can all be fixed at once, covered by existing tests.

Retitling:
IndexedDB 2.0: "close pending flag" and firing blocked events all need fixing
Comment 3 Brady Eidson 2016-11-11 13:19:48 PST
Created attachment 294527 [details]
Patch
Comment 4 Brady Eidson 2016-11-11 14:01:05 PST
https://trac.webkit.org/changeset/208609