[Webkit-unassigned] [Bug 95786] New: ASSERTion failure in DatabaseSync destructor (called on wrong thread)

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Sep 4 15:06:51 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=95786

           Summary: ASSERTion failure in DatabaseSync destructor (called
                    on wrong thread)
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Unspecified
        OS/Version: Unspecified
            Status: NEW
          Keywords: InRadar, LayoutTestFailure
          Severity: Normal
          Priority: P2
         Component: WebCore Misc.
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: timothy_horton at apple.com
                CC: mitz at webkit.org, dimich at chromium.org,
                    levin at chromium.org, jberlin at webkit.org


Sample log: http://build.webkit.org/results/Apple%20MountainLion%20Debug%20WK1%20(Tests)/r127174%20(376)/http/tests/workers/terminate-during-sync-operation-crash-log.txt

On the main thread:

0   com.apple.WebCore                 0x00000001037b8812 WebCore::DatabaseSync::~DatabaseSync() + 130 (DatabaseSync.cpp:87)
1   com.apple.WebCore                 0x00000001037b8785 WebCore::DatabaseSync::~DatabaseSync() + 21 (DatabaseSync.cpp:93)
2   com.apple.WebCore                 0x00000001037b8759 WebCore::DatabaseSync::~DatabaseSync() + 25 (DatabaseSync.cpp:86)
3   com.apple.WebCore                 0x00000001037b25a3 WTF::ThreadSafeRefCounted<WebCore::AbstractDatabase>::deref() + 83 (ThreadSafeRefCounted.h:138)
4   com.apple.WebCore                 0x00000001037d2e5b void WTF::derefIfNotNull<WebCore::AbstractDatabase>(WebCore::AbstractDatabase*) + 59 (PassRefPtr.h:54)
5   com.apple.WebCore                 0x00000001037d2e18 WTF::RefPtr<WebCore::AbstractDatabase>::~RefPtr() + 24 (RefPtr.h:56)
6   com.apple.WebCore                 0x00000001037c9065 WTF::RefPtr<WebCore::AbstractDatabase>::~RefPtr() + 21 (RefPtr.h:56)
7   com.apple.WebCore                 0x00000001037dc01f WTF::VectorDestructor<true, WTF::RefPtr<WebCore::AbstractDatabase> >::destruct(WTF::RefPtr<WebCore::AbstractDatabase>*, WTF::RefPtr<WebCore::AbstractDatabase>*) + 47 (Vector.h:57)
8   com.apple.WebCore                 0x00000001037dbfdd WTF::VectorTypeOperations<WTF::RefPtr<WebCore::AbstractDatabase> >::destruct(WTF::RefPtr<WebCore::AbstractDatabase>*, WTF::RefPtr<WebCore::AbstractDatabase>*) + 29 (Vector.h:221)
9   com.apple.WebCore                 0x00000001037dbf21 WTF::Vector<WTF::RefPtr<WebCore::AbstractDatabase>, 0ul>::shrink(unsigned long) + 145 (Vector.h:905)
10  com.apple.WebCore                 0x00000001037dbe74 WTF::Vector<WTF::RefPtr<WebCore::AbstractDatabase>, 0ul>::~Vector() + 52 (Vector.h:511)
11  com.apple.WebCore                 0x00000001037c8565 WTF::Vector<WTF::RefPtr<WebCore::AbstractDatabase>, 0ul>::~Vector() + 21 (Vector.h:511)
12  com.apple.WebCore                 0x00000001037c34a3 WebCore::DatabaseTracker::interruptAllDatabasesForContext(WebCore::ScriptExecutionContext const*) + 723 (DatabaseTracker.cpp:265)
13  com.apple.WebCore                 0x0000000104d0e062 WebCore::WorkerThread::stop() + 146 (WorkerThread.cpp:269)
14  com.apple.WebCore                 0x0000000104d0210f WebCore::WorkerMessagingProxy::terminateWorkerContext() + 95 (WorkerMessagingProxy.cpp:469)
15  com.apple.WebCore                 0x0000000104cf145d WebCore::Worker::terminate() + 29 (Worker.cpp:119)
16  com.apple.WebCore                 0x00000001043f1667 WebCore::jsWorkerPrototypeFunctionTerminate(JSC::ExecState*) + 311 (JSWorker.cpp:223)
...

It looks to me like DatabaseSync::~DatabaseSync is expecting to be called on the worker's thread, but is getting called on the main thread instead. Seems like this is probably a legitimate concern.

I'm going to skip the test on Mac for now.

<rdar://problem/11911986>

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list