Bug 221119
Summary: | [GLIB] Many API tests are asserting in debug mode when destroying WebProcessPool | ||
---|---|---|---|
Product: | WebKit | Reporter: | Lauro Moura <lmoura> |
Component: | WebKitGTK | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | bugs-noreply, vitaly, webkit-bug-importer |
Priority: | P2 | ||
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
Lauro Moura
About 40 tests are crashing in debug builds with the same trace. For example:
WebKitBuild/WPE/Debug/bin/TestWebKitAPI/WPE/TestConsoleMessage
/webkit/WebKitConsoleMessage/js-exception
This issue happens when running together with other test cases, as running the test (function, not the program) isolated it works.
Trace:
ASSERTION FAILED: !m_deletionHasBegun
DerivedSources/ForwardingHeaders/wtf/ThreadSafeRefCounted.h(58) : void WTF::ThreadSafeRefCountedBase::ref() const
1 0x557660b7f47f WTFCrash
2 0x557660b7f495 WTFIsDebuggerAttached
3 0x55765f2274ce WTF::ThreadSafeRefCountedBase::ref() const
4 0x7fae2fc545f2 WTF::DefaultRefDerefTraits<WebKit::WebProcessPool>::refIfNotNull(WebKit::WebProcessPool*)
5 0x7fae2fc491bb WTF::RefPtr<WebKit::WebProcessPool, WTF::RawPtrTraits<WebKit::WebProcessPool>, WTF::DefaultRefDerefTraits<WebKit::WebProcessPool> >::RefPtr(WebKit::WebProcessPool*)
6 0x7fae2fc3c979 WTF::RefPtr<WebKit::WebProcessPool, WTF::RawPtrTraits<WebKit::WebProcessPool>, WTF::DefaultRefDerefTraits<WebKit::WebProcessPool> >::operator=(WebKit::WebProcessPool*)
7 0x7fae2fc2db2e WebKit::WebProcessProxy::WeakOrStrongPtr<WebKit::WebProcessPool>::updateStrongReference()
8 0x7fae2fc1dfdc WebKit::WebProcessProxy::WeakOrStrongPtr<WebKit::WebProcessPool>::setIsWeak(WebKit::WebProcessProxy::IsWeak)
9 0x7fae2fbec6b8 WebKit::WebProcessProxy::setIsInProcessCache(bool)
10 0x7fae2fbe07c8 WebKit::WebProcessCache::CachedProcess::~CachedProcess()
11 0x7fae2fc23f14 std::default_delete<WebKit::WebProcessCache::CachedProcess>::operator()(WebKit::WebProcessCache::CachedProcess*) const
12 0x7fae2fc141dc std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> >::~unique_ptr()
13 0x7fae2fc23cbe WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >::~KeyValuePair()
14 0x7fae2fc23d2c WTF::HashTable<WebCore::RegistrableDomain, WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > > >, WTF::DefaultHash<WebCore::RegistrableDomain>, WTF::HashMap<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> >, WTF::DefaultHash<WebCore::RegistrableDomain>, WTF::HashTraits<WebCore::RegistrableDomain>, WTF::HashTraits<std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > > >::KeyValuePairTraits, WTF::HashTraits<WebCore::RegistrableDomain> >::deallocateTable(WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >*)
15 0x7fae2fc24d50 WTF::HashTable<WebCore::RegistrableDomain, WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > > >, WTF::DefaultHash<WebCore::RegistrableDomain>, WTF::HashMap<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> >, WTF::DefaultHash<WebCore::RegistrableDomain>, WTF::HashTraits<WebCore::RegistrableDomain>, WTF::HashTraits<std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > > >::KeyValuePairTraits, WTF::HashTraits<WebCore::RegistrableDomain> >::clear()
16 0x7fae2fc14b18 WTF::HashMap<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> >, WTF::DefaultHash<WebCore::RegistrableDomain>, WTF::HashTraits<WebCore::RegistrableDomain>, WTF::HashTraits<std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > > >::clear()
17 0x7fae2fbdfb33 WebKit::WebProcessCache::clear()
18 0x7fae2fbe1ca7 WebKit::WebProcessPool::~WebProcessPool()
19 0x7fae2fbe2352 WebKit::WebProcessPool::~WebProcessPool()
20 0x7fae2ee20c06 WTF::ThreadSafeRefCounted<API::Object, (WTF::DestructionThread)0>::deref() const::{lambda()#1}::operator()() const
21 0x7fae2ee20c4d WTF::ThreadSafeRefCounted<API::Object, (WTF::DestructionThread)0>::deref() const
22 0x7fae2f252e24 WTF::Ref<WebKit::WebProcessPool, WTF::RawPtrTraits<WebKit::WebProcessPool> >::~Ref()
23 0x7fae2fbde9aa /app/webkit/WebKitBuild/Debug/lib/libWPEWebKit-1.0.so.3(+0x104d19aa) [0x7fae2fbde9aa]
24 0x7fae2fc0266a /app/webkit/WebKitBuild/Debug/lib/libWPEWebKit-1.0.so.3(+0x104f566a) [0x7fae2fc0266a]
25 0x7fae2fc02692 /app/webkit/WebKitBuild/Debug/lib/libWPEWebKit-1.0.so.3(+0x104f5692) [0x7fae2fc02692]
26 0x7fae2ee84144 std::default_delete<WTF::Detail::CallableWrapperBase<void, bool> >::operator()(WTF::Detail::CallableWrapperBase<void, bool>*) const
27 0x7fae2ee834a2 std::unique_ptr<WTF::Detail::CallableWrapperBase<void, bool>, std::default_delete<WTF::Detail::CallableWrapperBase<void, bool> > >::~unique_ptr()
28 0x7fae2ee82a00 WTF::Function<void (bool)>::~Function()
29 0x7fae2f4549d8 WTF::CompletionHandler<void (bool)>::operator()(bool)
30 0x7fae2fbf2f71 WebKit::WebProcessProxy::didReceiveMainThreadPing()
31 0x7fae2f258109 void IPC::callMemberFunctionImpl<WebKit::WebProcessProxy, void (WebKit::WebProcessProxy::*)(), std::tuple<>>(WebKit::WebProcessProxy*, void (WebKit::WebProcessProxy::*)(),
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Vitaly Dyackhov
Fixed in 245040@main.
Vitaly Dyackhov
Pull request: https://github.com/WebKit/WebKit/pull/29294
EWS
Committed 279514@main (a4e1fcab19f9): <https://commits.webkit.org/279514@main>
Reviewed commits have been landed. Closing PR #29294 and removing active labels.