Bug 197741

Summary: ASSERTION FAILED: !m_backingStore in WebCore::IDBServer::UniqueIDBDatabase::didDeleteBackingStore(uint64_t)
Product: WebKit Reporter: Ryan Haddad <ryanhaddad>
Component: New BugsAssignee: Sihui Liu <sihui_liu>
Status: RESOLVED FIXED    
Severity: Normal CC: alecflett, beidson, commit-queue, ews-watchlist, jsbell, sihui_liu, webkit-bot-watchers-bugzilla, webkit-bug-importer, youennf
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Ryan Haddad 2019-05-09 09:40:23 PDT
The following assertion failure is seen with intermittently seen with storage/indexeddb/dont-wedge.html on macOS:

ASSERTION FAILED: !m_backingStore
./Modules/indexeddb/server/UniqueIDBDatabase.cpp(423) : void WebCore::IDBServer::UniqueIDBDatabase::didDeleteBackingStore(uint64_t)
1   0x11d3a6709 WTFCrash
2   0x10bef060b WTFCrashWithInfo(int, char const*, char const*, int)
3   0x10d87c387 WebCore::IDBServer::UniqueIDBDatabase::didDeleteBackingStore(unsigned long long)
4   0x10d8bc39d void WTF::callMemberFunctionForCrossThreadTaskImpl<WebCore::IDBServer::UniqueIDBDatabase, void (WebCore::IDBServer::UniqueIDBDatabase::*)(unsigned long long), std::__1::tuple<unsigned long long>, 0ul>(WebCore::IDBServer::UniqueIDBDatabase*, void (WebCore::IDBServer::UniqueIDBDatabase::*)(unsigned long long), std::__1::tuple<unsigned long long>&&, std::__1::integer_sequence<unsigned long, 0ul>)
5   0x10d8bc2f0 void WTF::callMemberFunctionForCrossThreadTask<WebCore::IDBServer::UniqueIDBDatabase, void (WebCore::IDBServer::UniqueIDBDatabase::*)(unsigned long long), std::__1::tuple<unsigned long long>, std::__1::integer_sequence<unsigned long, 0ul> >(WebCore::IDBServer::UniqueIDBDatabase*, void (WebCore::IDBServer::UniqueIDBDatabase::*)(unsigned long long), std::__1::tuple<unsigned long long>&&)
6   0x10d8bc284 WTF::CrossThreadTask WTF::createCrossThreadTask<WebCore::IDBServer::UniqueIDBDatabase, 0, unsigned long long, unsigned long long>(WebCore::IDBServer::UniqueIDBDatabase&, void (WebCore::IDBServer::UniqueIDBDatabase::*)(unsigned long long), unsigned long long const&)::'lambda'()::operator()()
7   0x10d8bc209 WTF::Detail::CallableWrapper<WTF::CrossThreadTask WTF::createCrossThreadTask<WebCore::IDBServer::UniqueIDBDatabase, 0, unsigned long long, unsigned long long>(WebCore::IDBServer::UniqueIDBDatabase&, void (WebCore::IDBServer::UniqueIDBDatabase::*)(unsigned long long), unsigned long long const&)::'lambda'(), void>::call()
8   0x10befcdad WTF::Function<void ()>::operator()() const
9   0x10d79e9c5 WTF::CrossThreadTask::performTask()
10  0x10d895e53 WebCore::IDBServer::UniqueIDBDatabase::executeNextDatabaseTaskReply()
11  0x10d8bca1e void WTF::callMemberFunctionForCrossThreadTaskImpl<WebCore::IDBServer::UniqueIDBDatabase, void (WebCore::IDBServer::UniqueIDBDatabase::*)(), std::__1::tuple<> >(WebCore::IDBServer::UniqueIDBDatabase*, void (WebCore::IDBServer::UniqueIDBDatabase::*)(), std::__1::tuple<>&&, std::__1::integer_sequence<unsigned long>)
12  0x10d8bc990 void WTF::callMemberFunctionForCrossThreadTask<WebCore::IDBServer::UniqueIDBDatabase, void (WebCore::IDBServer::UniqueIDBDatabase::*)(), std::__1::tuple<>, std::__1::integer_sequence<unsigned long> >(WebCore::IDBServer::UniqueIDBDatabase*, void (WebCore::IDBServer::UniqueIDBDatabase::*)(), std::__1::tuple<>&&)
13  0x10d8bc924 WTF::CrossThreadTask WTF::createCrossThreadTask<WebCore::IDBServer::UniqueIDBDatabase, 0>(WebCore::IDBServer::UniqueIDBDatabase&, void (WebCore::IDBServer::UniqueIDBDatabase::*)())::'lambda'()::operator()()
14  0x10d8bc8a9 WTF::Detail::CallableWrapper<WTF::CrossThreadTask WTF::createCrossThreadTask<WebCore::IDBServer::UniqueIDBDatabase, 0>(WebCore::IDBServer::UniqueIDBDatabase&, void (WebCore::IDBServer::UniqueIDBDatabase::*)())::'lambda'(), void>::call()
15  0x11d3d0fed WTF::Function<void ()>::operator()() const
16  0x11d3d0375 WTF::CrossThreadTask::performTask()
17  0x11d3d041d WTF::CrossThreadTaskHandler::handleTaskRepliesOnMainThread()
18  0x11d3d2368 WTF::CrossThreadTaskHandler::postTaskReply(WTF::CrossThreadTask&&)::$_1::operator()() const
19  0x11d3d2329 WTF::Detail::CallableWrapper<WTF::CrossThreadTaskHandler::postTaskReply(WTF::CrossThreadTask&&)::$_1, void>::call()
20  0x11d3d0fed WTF::Function<void ()>::operator()() const
21  0x11d404dfd WTF::dispatchFunctionsFromMainThread()
22  0x11d407bb5 -[JSWTFMainThreadCaller call]
23  0x7fff56f7b0b5 __NSThreadPerformPerform
24  0x7fff54e3a011 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
25  0x7fff54ef18ec __CFRunLoopDoSource0
26  0x7fff54e1cfc0 __CFRunLoopDoSources0
27  0x7fff54e1c43d __CFRunLoopRun
28  0x7fff54e1bc97 CFRunLoopRunSpecific
29  0x7fff56f33e76 -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
30  0x7fff56f33d4e -[NSRunLoop(NSRunLoop) run]
31  0x7fff7d12ad4b _xpc_objc_main
LEAK: 2 WebPageProxy

https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=storage%2Findexeddb%2Fdont-wedge.html
Comment 1 Radar WebKit Bug Importer 2019-05-09 09:42:17 PDT
<rdar://problem/50625006>
Comment 2 Sihui Liu 2019-05-16 15:57:38 PDT
Created attachment 370081 [details]
Patch
Comment 3 WebKit Commit Bot 2019-05-17 16:44:29 PDT
Comment on attachment 370081 [details]
Patch

Clearing flags on attachment: 370081

Committed r245488: <https://trac.webkit.org/changeset/245488>
Comment 4 WebKit Commit Bot 2019-05-17 16:44:31 PDT
All reviewed patches have been landed.  Closing bug.