Make transactions inactive during clone
Categories
(Core :: Storage: IndexedDB, enhancement, P3)
Tracking
()
People
(Reporter: asuth, Assigned: sg)
References
()
Details
Attachments
(11 files)
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review | |
47 bytes,
text/x-phabricator-request
|
Details | Review |
There's a nice invariant cleanup at https://github.com/w3c/IndexedDB/pull/310 that would be good to implement.
Tests already were upstreamed by Chrome to WPT in https://github.com/web-platform-tests/wpt/commit/fee6738f9523f5e257accfaea8ddfef2e28cfbcd and we have the test in-tree (although failing) at https://searchfox.org/mozilla-central/source/testing/web-platform/tests/IndexedDB/structured-clone-transaction-state.any.js
:sg, this seems up your alley with your recent cleanups.
Assignee | ||
Updated•1 year ago
|
Assignee | ||
Comment 1•1 year ago
|
||
Implementing this properly requires the cleanup of the IDBTranscation state model to better match the spec planned for Bug 1497007 (explicit commit).
Assignee | ||
Comment 2•1 year ago
|
||
Is calling IDBObjectStore.deleteIndex
allowed during structured clone? We have a custom test for that here: dom/indexedDB/test/unit/test_clone_before_key_evaluation.js, which fails after making the wpt work.
Reporter | ||
Comment 3•1 year ago
•
|
||
It was previously allowed but a bad idea to allow it. test_clone_before_key_evaluation.js can be removed as with the changes to the spec and WPT we will have sufficient coverage of this area of code.
Er, and to be explicit: deleteIndex is no longer allowed during structured clone per the spec changes. (And I think this is a significant improvement in the spec!)
Assignee | ||
Comment 4•1 year ago
|
||
Assignee | ||
Comment 5•1 year ago
|
||
Also removed obsolete dom/indexedDB/test/test_clone_before_key_evaluation.html test case,
which tested for the opposite behaviour.
Depends on D54266
Assignee | ||
Comment 6•1 year ago
|
||
Depends on D54267
Assignee | ||
Comment 7•1 year ago
|
||
Depends on D54321
Assignee | ||
Comment 8•1 year ago
|
||
Depends on D54322
Pushed by sgiesecke@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/18bfaf645c42 Improved test assertion messages and removed code duplication. r=dom-workers-and-storage-reviewers,edenchuang https://hg.mozilla.org/integration/autoland/rev/fa4b9c36227a Fix structured-clone-transaction-state.any.js test case. r=dom-workers-and-storage-reviewers,janv https://hg.mozilla.org/integration/autoland/rev/82141e34c89f Use scoped enums in IDBTransaction. r=dom-workers-and-storage-reviewers,edenchuang https://hg.mozilla.org/integration/autoland/rev/812780d706ae Make use of std::copy_if/MakeBackInserter in IDBTransaction::AbortInternal. r=dom-workers-and-storage-reviewers,ytausky
Assignee | ||
Comment 10•1 year ago
|
||
Comment 11•1 year ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/18bfaf645c42
https://hg.mozilla.org/mozilla-central/rev/fa4b9c36227a
https://hg.mozilla.org/mozilla-central/rev/82141e34c89f
https://hg.mozilla.org/mozilla-central/rev/812780d706ae
Assignee | ||
Comment 12•1 year ago
|
||
Assignee | ||
Comment 13•1 year ago
|
||
Depends on D54322
Assignee | ||
Comment 14•1 year ago
|
||
Depends on D55079
Assignee | ||
Comment 15•1 year ago
|
||
Depends on D55080
Comment 16•1 year ago
|
||
Pushed by sgiesecke@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/7e0a3e5cdb4d Fixed log message printf string. r=dom-workers-and-storage-reviewers,janv
Assignee | ||
Comment 17•1 year ago
|
||
Depends on D55081
Comment 18•1 year ago
|
||
Pushed by sgiesecke@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/97a03c24e865 Align ReadyState with states defined in the spec. r=dom-workers-and-storage-reviewers,edenchuang https://hg.mozilla.org/integration/autoland/rev/fb6184becfbd Remove uses of already_AddRefed. r=dom-workers-and-storage-reviewers,janv
Comment 19•1 year ago
|
||
bugherder |
Updated•1 year ago
|
Comment 20•1 year ago
|
||
Pushed by sgiesecke@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/9c56dd45e9f5 Added FlippedOnce class template to help reducing statefulness of boolean flags. r=dom-workers-and-storage-reviewers,ytausky https://hg.mozilla.org/integration/autoland/rev/2c2c3b33ea1b Made some boolean flags in IDBTransaction FlippedOnce to reduce statefulness. r=dom-workers-and-storage-reviewers,ytausky
Comment 21•1 year ago
|
||
Pushed by sgiesecke@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/ebf5f725d0b3 Implement transaction inactive state according to spec. r=dom-workers-and-storage-reviewers,ytausky
Comment 22•1 year ago
|
||
bugherder |
Comment 23•1 year ago
|
||
bugherder |
Assignee | ||
Updated•1 year ago
|
Comment 24•1 year ago
|
||
Pushed by sgiesecke@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/ca182ba97ae6 Fixed log messages, use serial number of transaction. r=dom-workers-and-storage-reviewers,janv
Comment 25•1 year ago
|
||
bugherder |
Updated•1 year ago
|
Description
•