Bug 301776
| Summary: | New-Test(302373@main): ASSERTION FAILED: !(blobSize % sizeof(T)) on TestWebKitAPI.IndexedDB.OpenDatabaseWithMismatchedMetadataVersionAndName | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Robert Jenner <jenner> |
| Component: | Website Storage | Assignee: | Chris Dumez <cdumez> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | pvollan, sihui_liu, webkit-bot-watchers-bugzilla, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| See Also: | https://bugs.webkit.org/show_bug.cgi?id=301677 | ||
Robert Jenner
TestWebKitAPI.IndexedDB.OpenDatabaseWithMismatchedMetadataVersionAndName
is a constant failure on all debug platforms. It is a newly introduced test that has been failing on Debug since introduction at https://commits.webkit.org/302373@main
HISTORY:
https://results.webkit.org/?suite=api-tests&test=TestWebKitAPI.IndexedDB.OpenDatabaseWithMismatchedMetadataVersionAndName
FAILURE TEXT:
"name": "TestWebKitAPI.IndexedDB.OpenDatabaseWithMismatchedMetadataVersionAndName"
"output":
"2025-10-31 13:03:24.374 TestWebKitAPI[48337:2657121] NSEventConcurrentProcessingEnabled=NO\nASSERTION FAILED: !(blobSize % sizeof(T))\n/Volumes/Data/worker/Apple-Tahoe-Debug-Build/build/Source/WebCore/platform/sql/SQLiteExtras.h(81) : std::span<const T> WebCore::sqliteColumnBlob(sqlite3_stmt *, int) [T = char16_t]\n1 0x1478d4928 std::__1::span<char16_t const, 18446744073709551615ul> WebCore::sqliteColumnBlob<char16_t>(sqlite3_stmt*, int)\n2 0x1478d480c WebCore::SQLiteStatement::columnBlobAsString(int)\n3 0x14412905c WebCore::IDBServer::databaseNameFromDatabase(WebCore::SQLiteDatabase&, unsigned long long)\n4 0x1441075ac WebCore::IDBServer::databaseMetadataVersionAndNameFromDatabase(WebCore::SQLiteDatabase&)\n5 0x144105f54 WebCore::IDBServer::migrateIDBDatabaseInfoTableIfNecessary(WebCore::SQLiteDatabase&, WTF::String const&)\n6 0x144104ee8 WebCore::IDBServer::SQLiteIDBBackingStore::extractExistingDatabaseInfo()\n7 0x144107ca4 WebCore::IDBServer::SQLiteIDBBackingStore::getOrEstablishDatabaseInfo(WebCore::IDBDatabaseInfo&)\n8 0x144160158 WebCore::IDBServer::UniqueIDBDatabase::performCurrentOpenOperationAfterSpaceCheck(bool)\n9 0x144185020 WebCore::IDBServer::UniqueIDBDatabase::performCurrentOpenOperation()::$_0::operator()(bool)\n10 0x144184e50 WTF::Detail::CallableWrapper<WebCore::IDBServer::UniqueIDBDatabase::performCurrentOpenOperation()::$_0, void, bool>::call(bool)\n11 0x12bc914c0 WTF::Function<void (bool)>::operator()(bool) const\n12 0x12bc7e498 WTF::CompletionHandler<void (bool)>::operator()(bool)\n13 0x12e8b621c auto WebKit::OriginStorageManager::idbStorageManager(WebKit::IDBStorageRegistry&)::$_0::operator()(unsigned long long, WTF::CompletionHandler<void (bool)>&&)::'lambda'(auto)::operator()<WebKit::OriginQuotaManager::Decision>(auto)\n14 0x12e8b6160 WTF::Detail::CallableWrapper<WebKit::OriginStorageManager::idbStorageManager(WebKit::IDBStorageRegistry&)::$_0::operator()(unsigned long long, WTF::CompletionHandler<void (bool)>&&)::'lambda'(auto), void, WebKit::OriginQuotaManager::Decision>::call(WebKit::OriginQuotaManager::Decision)\n15 0x12e884218 WTF::Function<void (WebKit::OriginQuotaManager::Decision)>::operator()(WebKit::OriginQuotaManager::Decision) const\n16 0x12e8098dc WTF::CompletionHandler<void (WebKit::OriginQuotaManager::Decision)>::operator()(WebKit::OriginQuotaManager::Decision)\n17 0x12e809444 WebKit::OriginQuotaManager::handleRequests()\n18 0x12e809288 WebKit::OriginQuotaManager::requestSpace(unsigned long long, WTF::CompletionHandler<void (WebKit::OriginQuotaManager::Decision)>&&)\n19 0x12e8b5db4 WebKit::OriginStorageManager::idbStorageManager(WebKit::IDBStorageRegistry&)::$_0::operator()(unsigned long long, WTF::CompletionHandler<void (bool)>&&)\n20 0x12e8b5c7c WTF::Detail::CallableWrapper<WebKit::OriginStorageManager::idbStorageManager(WebKit::IDBStorageRegistry&)::$_0, void, unsigned long long, WTF::CompletionHandler<void (bool)>&&>::call(unsigned long long, WTF::CompletionHandler<void (bool)>&&)\n21 0x12e6ad408 WTF::Function<void (unsigned long long, WTF::CompletionHandler<void (bool)>&&)>::operator()(unsigned long long, WTF::CompletionHandler<void (bool)>&&) const\n22 0x12e7f1aa0 WebKit::IDBStorageManager::requestSpace(WebCore::ClientOrigin const&, unsigned long long, WTF::CompletionHandler<void (bool)>&&)\n23 0x14415febc WebCore::IDBServer::UniqueIDBDatabase::performCurrentOpenOperation()\n24 0x14416266c WebCore::IDBServer::UniqueIDBDatabase::handleCurrentOperation()\n25 0x14415fb78 WebCore::IDBServer::UniqueIDBDatabase::handleDatabaseOperations()\n26 0x14415f8a4 WebCore::IDBServer::UniqueIDBDatabase::openDatabaseConnection(WebCore::IDBServer::IDBConnectionToClient&, WebCore::IDBOpenRequestData const&)\n27 0x12e7f0a50 WebKit::IDBStorageManager::openDatabase(WebCore::IDBServer::IDBConnectionToClient&, WebCore::IDBOpenRequestData const&)\n28 0x12e803d94 WebKit::NetworkStorageManager::openDatabase(IPC::Connection&, WebCore::IDBOpenRequestData const&)\n29 0x12d366c3c auto void IPC::callMemberFunction<WebKit::NetworkStorageManager, WebKit::NetworkStorageManager, void (IPC::Connection&, WebCore::IDBOpenRequestData const&), std::__1::tuple<WebCore::IDBOpenRequestData>>(WebKit::NetworkStorageManager*, void (WebKit::NetworkStorageManager::*)(IPC::Connection&, WebCore::IDBOpenRequestData const&), IPC::Connection&, std::__1::tuple<WebCore::IDBOpenRequestData>&&)::'lambda'(auto&&...)::operator()<WebCore::IDBOpenRequestData>(auto&&...) const\n30 0x12d366b7c decltype(std::declval<WebKit::NetworkStorageManager>()(std::declval<WebCore::IDBOpenRequestData>())) std::__1::__invoke[abi:sn200100]<void IPC::callMemberFunction<WebKit::NetworkStorageManager, WebKit::NetworkStorageManager, void (IPC::Connection&, WebCore::IDBOpenRequestData const&), std::__1::tuple<WebCore::IDBOpenRequestData>>(WebKit::NetworkStorageManager*, void (WebKit::NetworkStorageManager::*)(IPC::Connection&, WebCore::IDBOpenRequestData const&), IPC::Connection&, std::__1::tuple<WebCore::IDBOpenRequestData>&&)::'lambda'(auto&&...), WebCore::IDBOpenRequestData>(WebKit::NetworkStorageManager&&, WebCore::IDBOpenRequestData&&)\n31 0x12d366b50 decltype(auto) std::__1::__apply_tuple_impl[abi:sn200100]<void IPC::callMemberFunction<WebKit::NetworkStorageManager, WebKit::NetworkStorageManager, void (IPC::Connection&, WebCore::IDBOpenRequestData const&), std::__1::tuple<WebCore::IDBOpenRequestData>>(WebKit::NetworkStorageManager*, void (WebKit::NetworkStorageManager::*)(IPC::Connection&, WebCore::IDBOpenRequestData const&), IPC::Connection&, std::__1::tuple<WebCore::IDBOpenRequestData>&&)::'lambda'(auto&&...), std::__1::tuple<WebCore::IDBOpenRequestData>, 0ul>(WebKit::NetworkStorageManager&&, WebKit::NetworkStorageManager&&, std::__1::__tuple_indices<0ul>)\n\n/Volumes/Data/worker/Apple-Tahoe-Debug-Build/build/Tools/TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName.mm:354\nExpected equality of these values:\n @\"Success\"\n Which is: \"Success\"\n string.get()\n Which is: \"Error\""
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/163819252>
EWS
Test gardening commit 302405@main (6b378970e9dd): <https://commits.webkit.org/302405@main>
Reviewed commits have been landed. Closing PR #53275 and removing active labels.
Robert Jenner
I was able to reproduce the failure at Tahoe Debug ToT running the test as follows:
run-api-tests --debug TestWebKitAPI.IndexedDB.OpenDatabaseWithMismatchedMetadataVersionAndName
The history is clear that this test has been failing since introduction.
Chris Dumez
Pull request: https://github.com/WebKit/WebKit/pull/56545
EWS
Committed 305603@main (9035d2c04f37): <https://commits.webkit.org/305603@main>
Reviewed commits have been landed. Closing PR #56545 and removing active labels.