net: fix indexeddb backend bugs (#38744)

Fix a large number of backend issues that were masking everything else.
There probably is still more, but it'll take more integration/unit
testing to find it.

Testing: WPT
Fixes: #38743

---------

Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
This commit is contained in:
Ashwin Naren 2025-08-19 13:44:49 -07:00 committed by GitHub
parent f2294db95b
commit d0a8f27241
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 113 additions and 146 deletions

View file

@ -4,16 +4,13 @@
expected: TIMEOUT
[Cross-realm IDBObjectStore::add() method from detached <iframe> works as expected]
expected: TIMEOUT
expected: FAIL
[Cross-realm IDBObjectStore::delete() method from detached <iframe> works as expected]
expected: TIMEOUT
expected: FAIL
[Cross-realm IDBObjectStore::clear() method from detached <iframe> works as expected]
expected: TIMEOUT
[Cross-realm IDBObjectStore::getKey() method from detached <iframe> works as expected]
expected: TIMEOUT
expected: FAIL
[Cross-realm IDBObjectStore::getAll() method from detached <iframe> works as expected]
expected: FAIL
@ -29,6 +26,3 @@
[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: TIMEOUT

View file

@ -1,11 +1,7 @@
[idbobjectstore_count.any.worker.html]
expected: TIMEOUT
[Returns the number of records in the object store ]
expected: FAIL
[Returns the number of records that have keys within the range ]
expected: TIMEOUT
[Returns the number of records that have keys with the key]
expected: FAIL
@ -17,13 +13,9 @@
expected: ERROR
[idbobjectstore_count.any.html]
expected: TIMEOUT
[Returns the number of records in the object store ]
expected: FAIL
[Returns the number of records that have keys within the range ]
expected: TIMEOUT
[Returns the number of records that have keys with the key]
expected: FAIL

View file

@ -15,9 +15,6 @@
[If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError]
expected: FAIL
[delete() key doesn't match any records]
expected: FAIL
[idbobjectstore_delete.any.serviceworker.html]
expected: ERROR
@ -39,9 +36,6 @@
[If the object store has been deleted, the implementation must throw a DOMException of type InvalidStateError]
expected: FAIL
[delete() key doesn't match any records]
expected: FAIL
[idbobjectstore_delete.any.sharedworker.html]
expected: ERROR

View file

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

View file

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

View file

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

View file

@ -5,12 +5,10 @@
expected: ERROR
[writer-starvation.any.worker.html]
expected: TIMEOUT
[IDB read requests should not starve write requests]
expected: TIMEOUT
expected: FAIL
[writer-starvation.any.html]
expected: TIMEOUT
[IDB read requests should not starve write requests]
expected: TIMEOUT
expected: FAIL