Switch indexeddb backend to sqlite and improve IPC messaging (#38187)

- Use sqlite instead of heed. (one indexed database = one sqlite
database)
- Implement the backend for indexes
- Use keyranges where needed (as specified by the spec)
- Implement `getKey`
- Fix channel error messaging (led to a bunch of changes to how async
requests are handled)

Note: `components/net/indexeddb/engines/sqlite/serialize.rs` is unused;
I can delete it if needed.

Testing: Switching to sqlite eliminated many panics (exposing some new
failures).
Fixes: #38040

---------

Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
This commit is contained in:
Ashwin Naren 2025-08-16 00:27:17 -07:00 committed by GitHub
parent f4bbdf8010
commit fc3feceee5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
59 changed files with 2002 additions and 818 deletions

View file

@ -1,5 +1,10 @@
[blob-contenttype.any.html]
expected: CRASH
expected: TIMEOUT
[Ensure that content type round trips when reading blob data]
expected: TIMEOUT
[blob-contenttype.any.worker.html]
expected: CRASH
expected: TIMEOUT
[Ensure that content type round trips when reading blob data]
expected: TIMEOUT

View file

@ -1,5 +1,10 @@
[blob-valid-after-deletion.any.html]
expected: CRASH
expected: TIMEOUT
[Blobs stay alive after their records are deleted.]
expected: TIMEOUT
[blob-valid-after-deletion.any.worker.html]
expected: CRASH
expected: TIMEOUT
[Blobs stay alive after their records are deleted.]
expected: TIMEOUT

View file

@ -1,5 +1,10 @@
[blob-valid-before-commit.any.html]
expected: CRASH
expected: TIMEOUT
[Blobs can be read back before their records are committed.]
expected: TIMEOUT
[blob-valid-before-commit.any.worker.html]
expected: CRASH
expected: TIMEOUT
[Blobs can be read back before their records are committed.]
expected: TIMEOUT

View file

@ -1,11 +1,33 @@
[clone-before-keypath-eval.any.worker.html]
expected: CRASH
[Key generator and key path validity check operates on a clone]
expected: FAIL
[Failing key path validity check operates on a clone]
expected: FAIL
[Store and index key path evaluations operate on the same clone]
expected: FAIL
[Cursor update checks and keypath evaluations operate on a clone]
expected: FAIL
[clone-before-keypath-eval.any.serviceworker.html]
expected: ERROR
[clone-before-keypath-eval.any.html]
expected: CRASH
[Key generator and key path validity check operates on a clone]
expected: FAIL
[Failing key path validity check operates on a clone]
expected: FAIL
[Store and index key path evaluations operate on the same clone]
expected: FAIL
[Cursor update checks and keypath evaluations operate on a clone]
expected: FAIL
[clone-before-keypath-eval.any.sharedworker.html]
expected: ERROR

View file

@ -1,5 +1,26 @@
[delete-range.any.html]
expected: CRASH
[Delete range]
expected: FAIL
[Delete range 1]
expected: FAIL
[Delete range 2]
expected: FAIL
[Delete range 3]
expected: FAIL
[delete-range.any.worker.html]
expected: CRASH
[Delete range]
expected: FAIL
[Delete range 1]
expected: FAIL
[Delete range 2]
expected: FAIL
[Delete range 3]
expected: FAIL

View file

@ -1,8 +1,12 @@
[error-attributes.any.worker.html]
expected: CRASH
[IDBRequest and IDBTransaction error properties should be DOMExceptions]
expected: FAIL
[error-attributes.any.html]
expected: CRASH
[IDBRequest and IDBTransaction error properties should be DOMExceptions]
expected: FAIL
[error-attributes.any.sharedworker.html]
expected: ERROR

View file

@ -1,8 +1,18 @@
[event-dispatch-active-flag.any.html]
expected: CRASH
[Active during success handlers]
expected: FAIL
[Active during success listeners]
expected: FAIL
[event-dispatch-active-flag.any.worker.html]
expected: CRASH
[Active during success handlers]
expected: FAIL
[Active during success listeners]
expected: FAIL
[event-dispatch-active-flag.any.serviceworker.html]
expected: ERROR

View file

@ -1,8 +1,110 @@
[fire-error-event-exception.any.html]
expected: CRASH
expected: TIMEOUT
[Exception in error event handler on request]
expected: TIMEOUT
[Exception in error event handler on request, with preventDefault]
expected: TIMEOUT
[Exception in error event listener on request]
expected: TIMEOUT
[Exception in error event listener ("handleEvent" lookup) on request]
expected: TIMEOUT
[Exception in error event listener (non-callable "handleEvent") on request]
expected: TIMEOUT
[Exception in second error event listener on request]
expected: TIMEOUT
[Exception in first error event listener on request, transaction active in second]
expected: TIMEOUT
[Exception in error event handler on transaction]
expected: TIMEOUT
[Exception in error event handler on transaction, with preventDefault]
expected: TIMEOUT
[Exception in error event listener on transaction]
expected: TIMEOUT
[Exception in second error event listener on transaction]
expected: TIMEOUT
[Exception in first error event listener on transaction, transaction active in second]
expected: TIMEOUT
[Exception in error event handler on connection]
expected: TIMEOUT
[Exception in error event handler on connection, with preventDefault]
expected: TIMEOUT
[Exception in error event listener on connection]
expected: TIMEOUT
[Exception in second error event listener on connection]
expected: TIMEOUT
[Exception in first error event listener on connection, transaction active in second]
expected: TIMEOUT
[fire-error-event-exception.any.worker.html]
expected: CRASH
expected: TIMEOUT
[Exception in error event handler on request]
expected: TIMEOUT
[Exception in error event handler on request, with preventDefault]
expected: TIMEOUT
[Exception in error event listener on request]
expected: TIMEOUT
[Exception in error event listener ("handleEvent" lookup) on request]
expected: TIMEOUT
[Exception in error event listener (non-callable "handleEvent") on request]
expected: TIMEOUT
[Exception in second error event listener on request]
expected: TIMEOUT
[Exception in first error event listener on request, transaction active in second]
expected: TIMEOUT
[Exception in error event handler on transaction]
expected: TIMEOUT
[Exception in error event handler on transaction, with preventDefault]
expected: TIMEOUT
[Exception in error event listener on transaction]
expected: TIMEOUT
[Exception in second error event listener on transaction]
expected: TIMEOUT
[Exception in first error event listener on transaction, transaction active in second]
expected: TIMEOUT
[Exception in error event handler on connection]
expected: TIMEOUT
[Exception in error event handler on connection, with preventDefault]
expected: TIMEOUT
[Exception in error event listener on connection]
expected: TIMEOUT
[Exception in second error event listener on connection]
expected: TIMEOUT
[Exception in first error event listener on connection, transaction active in second]
expected: TIMEOUT
[fire-error-event-exception.any.sharedworker.html]
expected: ERROR

View file

@ -5,7 +5,42 @@
expected: ERROR
[fire-success-event-exception.any.worker.html]
expected: CRASH
expected: TIMEOUT
[Exception in success event handler on request]
expected: TIMEOUT
[Exception in success event listener on request]
expected: TIMEOUT
[Exception in success event listener ("handleEvent" lookup) on request]
expected: TIMEOUT
[Exception in success event listener (non-callable "handleEvent") on request]
expected: TIMEOUT
[Exception in second success event listener on request]
expected: TIMEOUT
[Exception in first success event listener, tx active in second]
expected: TIMEOUT
[fire-success-event-exception.any.html]
expected: CRASH
expected: TIMEOUT
[Exception in success event handler on request]
expected: TIMEOUT
[Exception in success event listener on request]
expected: TIMEOUT
[Exception in success event listener ("handleEvent" lookup) on request]
expected: TIMEOUT
[Exception in success event listener (non-callable "handleEvent") on request]
expected: TIMEOUT
[Exception in second success event listener on request]
expected: TIMEOUT
[Exception in first success event listener, tx active in second]
expected: TIMEOUT

View file

@ -1,5 +1,4 @@
[idb-binary-key-roundtrip.any.worker.html]
expected: CRASH
[Binary keys can be supplied using the view type Uint8Array]
expected: FAIL
@ -50,7 +49,6 @@
[idb-binary-key-roundtrip.any.html]
expected: CRASH
[Binary keys can be supplied using the view type Uint8Array]
expected: FAIL

View file

@ -1,3 +0,0 @@
[idb-partitioned-persistence.sub.html]
[Persistence test for partitioned IndexedDB]
expected: FAIL

View file

@ -1,2 +1,4 @@
[idb_webworkers.htm]
expected: CRASH
expected: TIMEOUT
[IndexedDB inside of a WebWorker ]
expected: TIMEOUT

View file

@ -8,9 +8,6 @@
[Create 1000 object stores, add one item and delete]
expected: FAIL
[Empty name]
expected: FAIL
[Object store 'name' and 'keyPath' properties are correctly set ]
expected: FAIL
@ -31,9 +28,6 @@
[Create 1000 object stores, add one item and delete]
expected: FAIL
[Empty name]
expected: FAIL
[Object store 'name' and 'keyPath' properties are correctly set ]
expected: FAIL

View file

@ -1,19 +1,10 @@
[idbfactory_open.any.worker.html]
[IDBFactory.open() - no version opens current database]
expected: FAIL
[IDBFactory.open() - open database with a higher version than current]
expected: FAIL
[IDBFactory.open() - error in version change transaction aborts open]
expected: FAIL
[Calling open() with version argument 1.5 should not throw.]
expected: FAIL
[Calling open() with version argument 9007199254740991 should not throw.]
expected: FAIL
[Calling open() with version argument undefined should not throw.]
expected: FAIL
@ -23,6 +14,9 @@
[IDBFactory.open() - second open's transaction is available to get objectStores]
expected: FAIL
[Calling open() with version argument 9007199254740991 should not throw.]
expected: FAIL
[idbfactory_open.any.sharedworker.html]
expected: ERROR
@ -31,21 +25,12 @@
expected: ERROR
[idbfactory_open.any.html]
[IDBFactory.open() - no version opens current database]
expected: FAIL
[IDBFactory.open() - open database with a higher version than current]
expected: FAIL
[IDBFactory.open() - error in version change transaction aborts open]
expected: FAIL
[Calling open() with version argument 1.5 should not throw.]
expected: FAIL
[Calling open() with version argument 9007199254740991 should not throw.]
expected: FAIL
[Calling open() with version argument undefined should not throw.]
expected: FAIL
@ -54,3 +39,6 @@
[IDBFactory.open() - second open's transaction is available to get objectStores]
expected: FAIL
[Calling open() with version argument 9007199254740991 should not throw.]
expected: FAIL

View file

@ -1,7 +1,7 @@
[idbobjectstore-cross-realm-methods.html]
expected: TIMEOUT
[Cross-realm IDBObjectStore::put() method from detached <iframe> works as expected]
expected: FAIL
expected: TIMEOUT
[Cross-realm IDBObjectStore::add() method from detached <iframe> works as expected]
expected: FAIL
@ -10,7 +10,7 @@
expected: FAIL
[Cross-realm IDBObjectStore::clear() method from detached <iframe> works as expected]
expected: TIMEOUT
expected: FAIL
[Cross-realm IDBObjectStore::getKey() method from detached <iframe> works as expected]
expected: FAIL
@ -29,3 +29,6 @@
[Cross-realm IDBObjectStore::openKeyCursor() method from detached <iframe> works as expected]
expected: FAIL
[Cross-realm IDBObjectStore::get() method from detached <iframe> works as expected]
expected: FAIL

View file

@ -2,25 +2,12 @@
expected: ERROR
[idbobjectstore-request-source.any.worker.html]
expected: CRASH
[The source of the request from store => store.put(0) is the object store itself]
expected: FAIL
[The source of the request from store => store.add(0) is the object store itself]
expected: FAIL
[The source of the request from store => store.delete(0) is the object store itself]
expected: FAIL
[The source of the request from store => store.clear() is the object store itself]
expected: FAIL
[The source of the request from store => store.get(0) is the object store itself]
expected: FAIL
[The source of the request from store => store.getKey(0) is the object store itself]
expected: FAIL
[The source of the request from store => store.getAll() is the object store itself]
expected: FAIL
@ -41,4 +28,23 @@
expected: ERROR
[idbobjectstore-request-source.any.html]
expected: CRASH
[The source of the request from store => store.put(0) is the object store itself]
expected: FAIL
[The source of the request from store => store.add(0) is the object store itself]
expected: FAIL
[The source of the request from store => store.getAll() is the object store itself]
expected: FAIL
[The source of the request from store => store.getAllKeys() is the object store itself]
expected: FAIL
[The source of the request from store => store.count() is the object store itself]
expected: FAIL
[The source of the request from store => store.openCursor() is the object store itself]
expected: FAIL
[The source of the request from store => store.openKeyCursor() is the object store itself]
expected: FAIL

View file

@ -1,5 +1,13 @@
[idbobjectstore_clear.any.html]
expected: CRASH
[Verify clear removes all records ]
expected: FAIL
[Clear removes all records from an index ]
expected: FAIL
[If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError ]
expected: FAIL
[idbobjectstore_clear.any.sharedworker.html]
expected: ERROR
@ -8,4 +16,11 @@
expected: ERROR
[idbobjectstore_clear.any.worker.html]
expected: CRASH
[Verify clear removes all records ]
expected: FAIL
[Clear removes all records from an index ]
expected: FAIL
[If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError ]
expected: FAIL

View file

@ -1,16 +1,13 @@
[idbobjectstore_delete.any.worker.html]
expected: CRASH
expected: TIMEOUT
[delete() removes record (inline keys)]
expected: FAIL
[delete() key doesn't match any records]
expected: FAIL
expected: TIMEOUT
[Object store's key path is an object attribute]
expected: FAIL
expected: TIMEOUT
[delete() removes record (out-of-line keys)]
expected: FAIL
expected: TIMEOUT
[delete() removes all of the records in the range]
expected: FAIL
@ -23,18 +20,15 @@
expected: ERROR
[idbobjectstore_delete.any.html]
expected: CRASH
expected: TIMEOUT
[delete() removes record (inline keys)]
expected: FAIL
[delete() key doesn't match any records]
expected: FAIL
expected: TIMEOUT
[Object store's key path is an object attribute]
expected: FAIL
expected: TIMEOUT
[delete() removes record (out-of-line keys)]
expected: FAIL
expected: TIMEOUT
[delete() removes all of the records in the range]
expected: FAIL

View file

@ -2,25 +2,37 @@
expected: ERROR
[idbobjectstore_get.any.html]
[Attempts to retrieve a record that doesn't exist]
expected: FAIL
[Returns the record with the first key in the range]
expected: FAIL
[When a transaction is aborted, throw TransactionInactiveError]
expected: FAIL
[Key is a number]
expected: FAIL
[Key is a string]
expected: FAIL
[Key is a date]
expected: FAIL
[idbobjectstore_get.any.serviceworker.html]
expected: ERROR
[idbobjectstore_get.any.worker.html]
[Attempts to retrieve a record that doesn't exist]
expected: FAIL
[Returns the record with the first key in the range]
expected: FAIL
[When a transaction is aborted, throw TransactionInactiveError]
expected: FAIL
[Key is a number]
expected: FAIL
[Key is a string]
expected: FAIL
[Key is a date]
expected: FAIL

View file

@ -1,7 +1,4 @@
[idbobjectstore_getKey.any.worker.html]
[IDBObjectStore.getKey() - invalid parameters]
expected: FAIL
[IDBObjectStore.getKey() - basic - key]
expected: FAIL
@ -52,9 +49,6 @@
[idbobjectstore_getKey.any.html]
[IDBObjectStore.getKey() - invalid parameters]
expected: FAIL
[IDBObjectStore.getKey() - basic - key]
expected: FAIL

View file

@ -1,5 +1,13 @@
[idbtransaction_abort.any.worker.html]
expected: CRASH
[Abort event should fire during transaction]
expected: FAIL
[Abort during auto-committing should throw InvalidStateError.]
expected: FAIL
[Abort on completed transaction should throw InvalidStateError.]
expected: FAIL
[idbtransaction_abort.any.sharedworker.html]
expected: ERROR
@ -8,4 +16,11 @@
expected: ERROR
[idbtransaction_abort.any.html]
expected: CRASH
[Abort event should fire during transaction]
expected: FAIL
[Abort during auto-committing should throw InvalidStateError.]
expected: FAIL
[Abort on completed transaction should throw InvalidStateError.]
expected: FAIL

View file

@ -1,22 +1,34 @@
[idbtransaction_objectStoreNames.any.html]
expected: CRASH
[idbtransaction_objectStoreNames.any.worker.html]
expected: CRASH
[IDBTransaction.objectStoreNames - during upgrade transaction]
expected: FAIL
expected: TIMEOUT
[IDBTransaction.objectStoreNames - value after close]
expected: FAIL
[IDBTransaction.objectStoreNames - transaction scope]
[IDBTransaction.objectStoreNames - value after commit]
expected: TIMEOUT
[IDBTransaction.objectStoreNames - value after abort]
expected: TIMEOUT
[IDBTransaction.objectStoreNames - sorting]
expected: FAIL
[IDBTransaction.objectStoreNames - no duplicates]
expected: FAIL
[IDBTransaction.objectStoreNames - unusual names]
expected: FAIL
[idbtransaction_objectStoreNames.any.worker.html]
expected: TIMEOUT
[IDBTransaction.objectStoreNames - value after close]
expected: FAIL
[IDBTransaction.objectStoreNames - value after commit]
expected: FAIL
expected: TIMEOUT
[IDBTransaction.objectStoreNames - value after abort]
expected: FAIL
expected: TIMEOUT
[IDBTransaction.objectStoreNames - sorting]
expected: FAIL

View file

@ -14,9 +14,6 @@
[IDBObjectStore interface: attribute transaction]
expected: FAIL
[IDBObjectStore interface: operation getKey(any)]
expected: FAIL
[IDBObjectStore interface: operation getAll(optional any, optional unsigned long)]
expected: FAIL
@ -184,9 +181,6 @@
[IDBObjectStore interface: attribute transaction]
expected: FAIL
[IDBObjectStore interface: operation getKey(any)]
expected: FAIL
[IDBObjectStore interface: operation getAll(optional any, optional unsigned long)]
expected: FAIL

View file

@ -1,5 +1,7 @@
[keypath-exceptions.any.html]
expected: CRASH
[Array key conversion should not invoke prototype getters]
expected: FAIL
[keypath-exceptions.any.serviceworker.html]
expected: ERROR
@ -8,21 +10,5 @@
expected: ERROR
[keypath-exceptions.any.worker.html]
expected: CRASH
[The last element of keypath is validated]
expected: FAIL
[Key path evaluation: Exceptions from non-enumerable getters]
expected: FAIL
[Key path evaluation: Exceptions from enumerable getters]
expected: FAIL
[Key path evaluation: Exceptions from non-enumerable getters on prototype]
expected: FAIL
[Key path evaluation: Exceptions from enumerable getters on prototype]
expected: FAIL
[Array key conversion should not invoke prototype getters]
expected: FAIL

View file

@ -1,14 +1,30 @@
[keypath-special-identifiers.any.html]
expected: CRASH
[keypath-special-identifiers.any.sharedworker.html]
expected: ERROR
[keypath-special-identifiers.any.serviceworker.html]
expected: ERROR
[keypath-special-identifiers.any.worker.html]
expected: CRASH
[Type: String, identifier: length]
expected: FAIL
[Type: Array, identifier: length]
expected: FAIL
[Type: Blob, identifier: size]
expected: FAIL
[Type: Blob, identifier: type]
expected: FAIL
[Type: File, identifier: name]
expected: FAIL
[Type: File, identifier: lastModified]
expected: FAIL
[keypath-special-identifiers.any.sharedworker.html]
expected: ERROR
[keypath-special-identifiers.any.serviceworker.html]
expected: ERROR
[keypath-special-identifiers.any.worker.html]
[Type: String, identifier: length]
expected: FAIL

View file

@ -122,6 +122,27 @@
[Date: Sat Nov 20 2286 09:46:40 GMT-0800 (Pacific Standard Time)]
expected: FAIL
[Date: Thu Jan 01 1970 05:29:59 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Thu Jan 01 1970 05:30:00 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Thu Jan 01 1970 05:30:01 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Thu Jan 01 1970 05:46:40 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Mon Jan 12 1970 19:16:40 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Sun Sep 09 2001 07:16:40 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Sat Nov 20 2286 23:16:40 GMT+0530 (India Standard Time)]
expected: FAIL
[structured-clone.any.html?81-100]
[Uint16Array: 0,1,65534,65535]
@ -418,6 +439,18 @@
[Date: Wed Dec 31 1969 15:43:20 GMT-0800 (Pacific Standard Time)]
expected: FAIL
[Date: Mon Feb 10 1653 12:06:48 GMT+0553 (India Standard Time)]
expected: FAIL
[Date: Mon Apr 25 1938 03:43:20 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Sat Dec 20 1969 15:43:20 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Thu Jan 01 1970 05:13:20 GMT+0530 (India Standard Time)]
expected: FAIL
[structured-clone.any.worker.html?41-60]
[Number: 0]
@ -516,6 +549,18 @@
[Date: Wed Dec 31 1969 15:43:20 GMT-0800 (Pacific Standard Time)]
expected: FAIL
[Date: Mon Feb 10 1653 12:06:48 GMT+0553 (India Standard Time)]
expected: FAIL
[Date: Mon Apr 25 1938 03:43:20 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Sat Dec 20 1969 15:43:20 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Thu Jan 01 1970 05:13:20 GMT+0530 (India Standard Time)]
expected: FAIL
[structured-clone.any.html?61-80]
[Date: Wed Dec 31 1969 23:59:59 GMT+0000 (Coordinated Universal Time)]
@ -641,6 +686,27 @@
[Date: Sat Nov 20 2286 09:46:40 GMT-0800 (Pacific Standard Time)]
expected: FAIL
[Date: Thu Jan 01 1970 05:29:59 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Thu Jan 01 1970 05:30:00 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Thu Jan 01 1970 05:30:01 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Thu Jan 01 1970 05:46:40 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Mon Jan 12 1970 19:16:40 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Sun Sep 09 2001 07:16:40 GMT+0530 (India Standard Time)]
expected: FAIL
[Date: Sat Nov 20 2286 23:16:40 GMT+0530 (India Standard Time)]
expected: FAIL
[structured-clone.any.html?1-20]
[undefined: undefined]

View file

@ -1,5 +1,4 @@
[transaction-abort-request-error.any.worker.html]
expected: CRASH
[Properties of error events fired at requests when aborting a transaction]
expected: FAIL
@ -8,7 +7,6 @@
expected: ERROR
[transaction-abort-request-error.any.html]
expected: CRASH
[Properties of error events fired at requests when aborting a transaction]
expected: FAIL

View file

@ -1,40 +1,16 @@
[transaction-deactivation-timing.any.worker.html]
expected: CRASH
[New transactions are deactivated before next task]
expected: FAIL
[New transactions are not deactivated until after the microtask checkpoint]
expected: FAIL
[New transactions from microtask are deactivated before next task]
expected: FAIL
[New transactions from microtask are still active through the microtask checkpoint]
expected: FAIL
expected: TIMEOUT
[Deactivation of new transactions happens at end of invocation]
expected: FAIL
expected: TIMEOUT
[transaction-deactivation-timing.any.serviceworker.html]
expected: ERROR
[transaction-deactivation-timing.any.html]
expected: CRASH
[New transactions are deactivated before next task]
expected: FAIL
[New transactions are not deactivated until after the microtask checkpoint]
expected: FAIL
[New transactions from microtask are deactivated before next task]
expected: FAIL
[New transactions from microtask are still active through the microtask checkpoint]
expected: FAIL
expected: TIMEOUT
[Deactivation of new transactions happens at end of invocation]
expected: FAIL
expected: TIMEOUT
[transaction-deactivation-timing.any.sharedworker.html]

View file

@ -5,7 +5,6 @@
expected: ERROR
[transaction-lifetime-empty.any.worker.html]
expected: CRASH
[Transactions without requests complete in the expected order]
expected: FAIL
@ -14,7 +13,6 @@
[transaction-lifetime-empty.any.html]
expected: CRASH
[Transactions without requests complete in the expected order]
expected: FAIL

View file

@ -1,10 +1,8 @@
[transaction-scheduling-across-connections.any.html]
expected: CRASH
[Check that readwrite transactions with overlapping scopes do not run in parallel.]
expected: FAIL
[transaction-scheduling-across-connections.any.worker.html]
expected: CRASH
[Check that readwrite transactions with overlapping scopes do not run in parallel.]
expected: FAIL

View file

@ -1,10 +1,8 @@
[transaction-scheduling-across-databases.any.html]
expected: CRASH
[Check that transactions in different databases can run in parallel.]
expected: FAIL
[transaction-scheduling-across-databases.any.worker.html]
expected: CRASH
[Check that transactions in different databases can run in parallel.]
expected: FAIL

View file

@ -1,10 +1,8 @@
[transaction-scheduling-mixed-scopes.any.html]
expected: CRASH
[Check that scope restrictions on mixed transactions are enforced.]
expected: FAIL
[transaction-scheduling-mixed-scopes.any.worker.html]
expected: CRASH
[Check that scope restrictions on mixed transactions are enforced.]
expected: FAIL

View file

@ -1,10 +1,10 @@
[transaction-scheduling-ordering.any.html]
expected: CRASH
expected: TIMEOUT
[Verify Indexed DB transactions are ordered per spec]
expected: FAIL
expected: TIMEOUT
[transaction-scheduling-ordering.any.worker.html]
expected: CRASH
expected: TIMEOUT
[Verify Indexed DB transactions are ordered per spec]
expected: FAIL
expected: TIMEOUT

View file

@ -1,10 +1,8 @@
[transaction-scheduling-ro-waits-for-rw.any.html]
expected: CRASH
[readonly transaction should see the result of a previous readwrite transaction]
expected: FAIL
[transaction-scheduling-ro-waits-for-rw.any.worker.html]
expected: CRASH
[readonly transaction should see the result of a previous readwrite transaction]
expected: FAIL

View file

@ -1,10 +1,8 @@
[transaction-scheduling-rw-scopes.any.worker.html]
expected: CRASH
[Check that scope restrictions on read-write transactions are enforced.]
expected: FAIL
[transaction-scheduling-rw-scopes.any.html]
expected: CRASH
[Check that scope restrictions on read-write transactions are enforced.]
expected: FAIL

View file

@ -1,10 +1,8 @@
[transaction-scheduling-within-database.any.html]
expected: CRASH
[Check that read-only transactions within a database can run in parallel.]
expected: FAIL
[transaction-scheduling-within-database.any.worker.html]
expected: CRASH
[Check that read-only transactions within a database can run in parallel.]
expected: FAIL

View file

@ -1,16 +1,44 @@
[value.any.html]
expected: TIMEOUT
[Values - Array]
expected: TIMEOUT
expected: FAIL
[BigInts as values in IndexedDB - primitive BigInt]
expected: FAIL
[BigInts as values in IndexedDB - BigInt object]
expected: FAIL
[BigInts as values in IndexedDB - primitive BigInt inside object]
expected: FAIL
[BigInts as values in IndexedDB - BigInt object inside object]
expected: FAIL
[Values - Date]
expected: FAIL
[value.any.sharedworker.html]
expected: ERROR
[value.any.worker.html]
expected: TIMEOUT
[Values - Array]
expected: TIMEOUT
expected: FAIL
[BigInts as values in IndexedDB - primitive BigInt]
expected: FAIL
[BigInts as values in IndexedDB - BigInt object]
expected: FAIL
[BigInts as values in IndexedDB - primitive BigInt inside object]
expected: FAIL
[BigInts as values in IndexedDB - BigInt object inside object]
expected: FAIL
[Values - Date]
expected: FAIL
[value.any.serviceworker.html]

View file

@ -2,16 +2,8 @@
expected: ERROR
[value_recursive.any.html]
expected: TIMEOUT
[Recursive value - array member contains self]
expected: TIMEOUT
[value_recursive.any.worker.html]
expected: TIMEOUT
[Recursive value - array member contains self]
expected: TIMEOUT
[value_recursive.any.sharedworker.html]
expected: ERROR

View file

@ -1,4 +1,4 @@
[indexeddb.tentative.https.window.html]
expected: CRASH
expected: TIMEOUT
[indexeddb]
expected: TIMEOUT