Bug 1610880 Comment 11 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

Finally, I could reproduce the issue via opt-debug-asan build and it crashed at what I suspected in comment 8 (I suggested to change that debug assertion to release assertion for Nighly and early Beta).

Below is my stack:
Assertion failure: !mQuotaObjects.Count(), at /Users/tomtung/Work/mozilla-central/dom/quota/ActorsParent.cpp:918
#01: mozilla::dom::quota::OriginInfo::Release()[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xbb588b3]
#02: nsTArray_Impl<RefPtr<mozilla::dom::quota::OriginInfo>, nsTArrayInfallibleAllocator>::RemoveElementsAt(unsigned long, unsigned long)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xbb630fa]
#03: mozilla::dom::quota::QuotaManager::LockedRemoveQuotaForOrigin(mozilla::dom::quota::PersistenceType, nsTSubstring<char> const&, nsTSubstring<char> const&)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xba84e52]
#04: mozilla::dom::quota::(anonymous namespace)::ClearRequestBase::DeleteFiles(mozilla::dom::quota::QuotaManager*, mozilla::dom::quota::PersistenceType)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xbb3578c]
#05: mozilla::dom::quota::(anonymous namespace)::ClearRequestBase::DoDirectoryWork(mozilla::dom::quota::QuotaManager*)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xbb32023]
#06: mozilla::dom::quota::(anonymous namespace)::OriginOperationBase::Run()[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xbb09a23]
#07: nsThread::ProcessNextEvent(bool, bool*)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x47157a]
#08: NS_ProcessNextEvent(nsIThread*, bool)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4863c4]
#09: mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x1d4c344]
#10: MessageLoop::RunInternal()[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x1bda2b1]
#11: MessageLoop::Run()[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x1bd9eee]
#12: nsThread::ThreadFunc(void*)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x465f0d]
#13: _pt_root[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/libnss3.dylib +0x43d995]
#14: _pthread_body[/usr/lib/system/libsystem_pthread.dylib +0x32eb]
#15: _pthread_start[/usr/lib/system/libsystem_pthread.dylib +0x6249]
AddressSanitizer:DEADLYSIGNAL
=================================================================

I'm going to reproduce that with printing some log to ensure I understand the order.
Finally, I could reproduce the issue via opt-debug-asan build and it crashed at what I suspected in comment 8 (I suggested to change that debug assertion to release assertion for Nighly and early Beta).

Below is my stack:
Assertion failure: !mQuotaObjects.Count(), at /Users/tomtung/Work/mozilla-central/dom/quota/ActorsParent.cpp:918
#01: mozilla::dom::quota::OriginInfo::Release()[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xbb588b3]
#02: nsTArray_Impl<RefPtr<mozilla::dom::quota::OriginInfo>, nsTArrayInfallibleAllocator>::RemoveElementsAt(unsigned long, unsigned long)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xbb630fa]
#03: mozilla::dom::quota::QuotaManager::LockedRemoveQuotaForOrigin(mozilla::dom::quota::PersistenceType, nsTSubstring<char> const&, nsTSubstring<char> const&)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xba84e52]
#04: mozilla::dom::quota::(anonymous namespace)::ClearRequestBase::DeleteFiles(mozilla::dom::quota::QuotaManager*, mozilla::dom::quota::PersistenceType)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xbb3578c]
#05: mozilla::dom::quota::(anonymous namespace)::ClearRequestBase::DoDirectoryWork(mozilla::dom::quota::QuotaManager*)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xbb32023]
#06: mozilla::dom::quota::(anonymous namespace)::OriginOperationBase::Run()[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0xbb09a23]
#07: nsThread::ProcessNextEvent(bool, bool*)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x47157a]
#08: NS_ProcessNextEvent(nsIThread*, bool)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4863c4]
#09: mozilla::ipc::MessagePumpForNonMainThreads::Run(base::MessagePump::Delegate*)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x1d4c344]
#10: MessageLoop::RunInternal()[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x1bda2b1]
#11: MessageLoop::Run()[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x1bd9eee]
#12: nsThread::ThreadFunc(void*)[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/XUL +0x465f0d]
#13: _pt_root[/Users/tomtung/Work/mozilla-central/objdir/dist/NightlyDebug.app/Contents/MacOS/libnss3.dylib +0x43d995]
#14: _pthread_body[/usr/lib/system/libsystem_pthread.dylib +0x32eb]
#15: _pthread_start[/usr/lib/system/libsystem_pthread.dylib +0x6249]
AddressSanitizer:DEADLYSIGNAL

I'm going to reproduce that with printing some log to ensure I understand the order.

Back to Bug 1610880 Comment 11