Re: [w3c/IndexedDB] The done flag is never unset between upgradeneeded and success (#161)

Thanks as always @brettz9 !

I tacked this in https://github.com/w3c/IndexedDB/pull/202

> I'd expect a final step there that unsets the done flag.

I added this in the case where the result is cleared out for abort. I still don't think it's observable, but it made sense to do as part of the related changes...

> if there is an error (abort errors are the specified ones) during or after the "steps to run an upgrade transaction", should open not reset the result to undefined as well?

Correct. This appears at the end of "Aborting a transaction" where request's transaction is cleared. The timing is specific here - this is visible *after* the event fires.

> ...the "steps to open a database" are run in parallel with the queuing of a task...

That's not what "in parallel" means. It's defined at https://html.spec.whatwg.org/multipage/infrastructure.html#in-parallel and means the referenced steps are run parallel to the surrounding algorithm, but are themselves run sequentially. It's known that the terminology is confusing, see https://github.com/whatwg/html/issues/2643 (and in https://github.com/w3c/IndexedDB/pull/199 I at least turn "in parallel" into a link)

> the done flag is also not explicitly set anywhere upon a success

Ugh, yeah. So that's taken care of in the PR as part of the open/delete steps.

Can you review the PR and comment there?






-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/IndexedDB/issues/161#issuecomment-300907233

Received on Thursday, 11 May 2017 20:26:45 UTC