Bug 128341 - IndexedDB assertion at IDBTransactionBackend::~IDBTransactionBackend()
Summary: IndexedDB assertion at IDBTransactionBackend::~IDBTransactionBackend()
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Brady Eidson
URL:
Keywords:
: 128375 (view as bug list)
Depends on:
Blocks:
 
Reported: 2014-02-06 15:43 PST by zalan
Modified: 2014-02-10 22:32 PST (History)
6 users (show)

See Also:


Attachments
Patch v1 - Update the ASSERT and re-enable the indexeddb tests (4.67 KB, patch)
2014-02-10 21:50 PST, Brady Eidson
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description zalan 2014-02-06 15:43:04 PST
Mavericks Debug WK2

failing test case:
svg/W3C-I18N/g-dirRTL-ubOverride.svg	

output:
ASSERTION FAILED: m_state == Finished
/Volumes/Data/slave/mavericks-debug/build/Source/WebCore/Modules/indexeddb/IDBTransactionBackend.cpp(87) : WebCore::IDBTransactionBackend::~IDBTransactionBackend()
1   0x1067e80d0 WTFCrash
2   0x108800165 WebCore::IDBTransactionBackend::~IDBTransactionBackend()
3   0x108800115 WebCore::IDBTransactionBackend::~IDBTransactionBackend()
4   0x108814e29 WTF::RefCounted<WebCore::IDBTransactionBackend>::deref()
5   0x108814dd9 void WTF::derefIfNotNull<WebCore::IDBTransactionBackend>(WebCore::IDBTransactionBackend*)
6   0x10881c188 WTF::RefPtr<WebCore::IDBTransactionBackend>::~RefPtr()
7   0x108812795 WTF::RefPtr<WebCore::IDBTransactionBackend>::~RefPtr()
8   0x1088c538c WTF::KeyValuePair<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend> >::~KeyValuePair()
9   0x1088c5365 WTF::KeyValuePair<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend> >::~KeyValuePair()
10  0x1088c52f8 WTF::HashTable<WebCore::IDBTransactionBackend*, WTF::KeyValuePair<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend> > >, WTF::PtrHash<WebCore::IDBTransactionBackend*>, WTF::HashMap<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend>, WTF::PtrHash<WebCore::IDBTransactionBackend*>, WTF::HashTraits<WebCore::IDBTransactionBackend*>, WTF::HashTraits<WTF::RefPtr<WebCore::IDBTransactionBackend> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::IDBTransactionBackend*> >::deallocateTable(WTF::KeyValuePair<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend> >*, int)
11  0x1088c992c WTF::HashTable<WebCore::IDBTransactionBackend*, WTF::KeyValuePair<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend> > >, WTF::PtrHash<WebCore::IDBTransactionBackend*>, WTF::HashMap<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend>, WTF::PtrHash<WebCore::IDBTransactionBackend*>, WTF::HashTraits<WebCore::IDBTransactionBackend*>, WTF::HashTraits<WTF::RefPtr<WebCore::IDBTransactionBackend> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::IDBTransactionBackend*> >::~HashTable()
12  0x1088c98e5 WTF::HashTable<WebCore::IDBTransactionBackend*, WTF::KeyValuePair<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend> > >, WTF::PtrHash<WebCore::IDBTransactionBackend*>, WTF::HashMap<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend>, WTF::PtrHash<WebCore::IDBTransactionBackend*>, WTF::HashTraits<WebCore::IDBTransactionBackend*>, WTF::HashTraits<WTF::RefPtr<WebCore::IDBTransactionBackend> > >::KeyValuePairTraits, WTF::HashTraits<WebCore::IDBTransactionBackend*> >::~HashTable()
13  0x1088c98c5 WTF::HashMap<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend>, WTF::PtrHash<WebCore::IDBTransactionBackend*>, WTF::HashTraits<WebCore::IDBTransactionBackend*>, WTF::HashTraits<WTF::RefPtr<WebCore::IDBTransactionBackend> > >::~HashMap()
14  0x1088c1d55 WTF::HashMap<WebCore::IDBTransactionBackend*, WTF::RefPtr<WebCore::IDBTransactionBackend>, WTF::PtrHash<WebCore::IDBTransactionBackend*>, WTF::HashTraits<WebCore::IDBTransactionBackend*>, WTF::HashTraits<WTF::RefPtr<WebCore::IDBTransactionBackend> > >::~HashMap()
15  0x1088c1179 WebCore::IDBTransactionCoordinator::~IDBTransactionCoordinator()
16  0x1088c1115 WebCore::IDBTransactionCoordinator::~IDBTransactionCoordinator()
17  0x1088c10e9 WebCore::IDBTransactionCoordinator::~IDBTransactionCoordinator()
18  0x109255d8e void WTF::deleteOwnedPtr<WebCore::IDBTransactionCoordinator>(WebCore::IDBTransactionCoordinator*)
19  0x109255d58 WTF::OwnPtr<WebCore::IDBTransactionCoordinator>::~OwnPtr()
20  0x10924a015 WTF::OwnPtr<WebCore::IDBTransactionCoordinator>::~OwnPtr()
21  0x10923fad7 WebCore::IDBDatabaseBackend::~IDBDatabaseBackend()
22  0x10923f9f5 WebCore::IDBDatabaseBackend::~IDBDatabaseBackend()
23  0x1083954f9 WTF::RefCounted<WebCore::IDBDatabaseBackend>::deref()
24  0x1083954a9 void WTF::derefIfNotNull<WebCore::IDBDatabaseBackend>(WebCore::IDBDatabaseBackend*)
25  0x108395638 WTF::RefPtr<WebCore::IDBDatabaseBackend>::~RefPtr()
26  0x1083944c5 WTF::RefPtr<WebCore::IDBDatabaseBackend>::~RefPtr()
27  0x108b98991 WebCore::IDBDatabase::~IDBDatabase()
28  0x108b988c5 WebCore::IDBDatabase::~IDBDatabase()
29  0x108b98899 WebCore::IDBDatabase::~IDBDatabase()
30  0x1083953f3 WTF::RefCounted<WebCore::IDBDatabase>::deref()
31  0x10839538f void WTF::derefIfNotNull<WebCore::IDBDatabase>(WebCore::IDBDatabase*)
Comment 1 Alexey Proskuryakov 2014-02-06 15:45:53 PST
Obviously caused by a preceding IndexedDB test, not by g-dirRTL-ubOverride.svg.
Comment 2 Brady Eidson 2014-02-06 16:09:05 PST
Right.

Are our tools good enough yet to pinpoint a check-in?  :)
Comment 3 Jon Lee 2014-02-07 09:06:32 PST
Also see 128375
Comment 4 Brady Eidson 2014-02-07 09:07:51 PST
*** Bug 128375 has been marked as a duplicate of this bug. ***
Comment 5 Brady Eidson 2014-02-07 09:08:11 PST
Better backtrace in https://bugs.webkit.org/show_bug.cgi?id=128375
Comment 6 Brady Eidson 2014-02-10 11:38:59 PST
Skipped tests in http://trac.webkit.org/changeset/163805 for now.
Comment 7 Brady Eidson 2014-02-10 21:46:58 PST
Couldn't reproduce this worth squat on one machine, fairly easy to reproduce on another.

The value of m_state when we ASSERT that it's Finished is actually Unused.  Unused is okay in this brave new multi-process world.

Updating the ASSERT shall suffice.
Comment 8 Brady Eidson 2014-02-10 21:50:10 PST
Created attachment 223806 [details]
Patch v1 - Update the ASSERT and re-enable the indexeddb tests
Comment 9 Maciej Stachowiak 2014-02-10 21:52:11 PST
Comment on attachment 223806 [details]
Patch v1 - Update the ASSERT and re-enable the indexeddb tests

r=me
Comment 10 WebKit Commit Bot 2014-02-10 22:32:34 PST
Comment on attachment 223806 [details]
Patch v1 - Update the ASSERT and re-enable the indexeddb tests

Clearing flags on attachment: 223806

Committed r163864: <http://trac.webkit.org/changeset/163864>
Comment 11 WebKit Commit Bot 2014-02-10 22:32:37 PST
All reviewed patches have been landed.  Closing bug.