imported/w3c/web-platform-tests/workers/modules/dedicated-worker-import-blob-url.any.html Is a flaky crash on macOS-AppleSilicon-Big-Sur-Debug-WK2-Tests-EWS In the open source directory, I don't see any crash but it failed a couple of times in the history: https://results.webkit.org/?suite=layout-tests&test=imported%2Fw3c%2Fweb-platform-tests%2Fworkers%2Fmodules%2Fdedicated-worker-import-blob-url.any.html Builds that the test failed: https://build.webkit.org/#/builders/70/builds/4727 https://build.webkit.org/#/builders/13/builds/4168 https://build.webkit.org/#/builders/45/builds/1320 The test started being flaky on EWS at https://ews-build.webkit.org/#/builders/60/builds/11578 Stderr: ASSERTION FAILED: m_globalScope->hasOneRef() ./workers/WorkerOrWorkletThread.cpp(155) : void WebCore::WorkerOrWorkletThread::workerOrWorkletThread() 1 0x139dc759c WTFCrash 2 0x11986d8d0 WTFCrashWithInfo(int, char const*, char const*, int) 3 0x11d9b6818 WebCore::WorkerOrWorkletThread::workerOrWorkletThread() 4 0x11da08c0c WebCore::WorkerThread::createThread()::$_1::operator()() const 5 0x11da08b88 WTF::Detail::CallableWrapper<WebCore::WorkerThread::createThread()::$_1, void>::call() 6 0x139df0ee0 WTF::Function<void ()>::operator()() const 7 0x139ec05d4 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) 8 0x139ecebf4 WTF::wtfThreadEntryPoint(void*) 9 0x180d8b878 _pthread_start 10 0x180d865e0 thread_start com.apple.WebKit.WebContent.Development terminated (pid 77307) because the process crashed LEAK: 1 WebPageProxy
Created attachment 437758 [details] Crash log
<rdar://problem/82932581>
Marked test expectations for the flaky crash to speed up EWS: https://trac.webkit.org/changeset/282224/webkit Because failure only happened 3 times and they are all on different platforms, I will not set expectations for them for now.
rwt --root debugToTest --iterations 1000 --clobber-old-results --exit-after-n-crashes-or-timeouts 1 --force --debug imported/w3c/web-platform-tests/workers/modules/dedicated-worker-import-blob-url.any.html --no-timeout (In reply to ayumi_kojima from comment #3) > Marked test expectations for the flaky crash to speed up EWS: > https://trac.webkit.org/changeset/282224/webkit > > Because failure only happened 3 times and they are all on different > platforms, I will not set expectations for them for now. I did mark test expectations for this test.
I was not able to reproduce the crash using --iterations 1000 --clobber-old-results --exit-after-n-crashes-or-timeouts 1 --force --debug imported/w3c/web-platform-tests/workers/modules/dedicated-worker-import-blob-url.any.html The test timed out instead. It hanged with --no-timeout flag.
I found a recent crash (Feb/24) but the crash looked like: Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 com.apple.JavaScriptCore 0x000000013c2f8324 WTFCrash + 20 (Assertions.cpp:322) 1 com.apple.WebCore 0x0000000116f26930 WTFCrashWithInfo(int, char const*, char const*, int) + 32 (Assertions.h:741) 2 com.apple.WebCore 0x000000011a88076c WebCore::JSEventListener::ensureJSFunction(WebCore::ScriptExecutionContext&) const + 596 (JSEventListener.h:157) 3 com.apple.WebCore 0x000000011963e2e8 WebCore::JSEventListener::handleEvent(WebCore::ScriptExecutionContext&, WebCore::Event&) + 192 (JSEventListener.cpp:140) 4 com.apple.WebCore 0x0000000119fbbb3c WebCore::EventTarget::innerInvokeEventListeners(WebCore::Event&, WTF::Vector<WTF::RefPtr<WebCore::RegisteredEventListener, WTF::RawPtrTraits<WebCore::RegisteredEventListener>, WTF::DefaultRefDerefTraits<WebCore::RegisteredEventListener> >, 1ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>, WebCore::EventTarget::EventInvokePhase) + 968 (EventTarget.cpp:363) 5 com.apple.WebCore 0x0000000119fbb604 WebCore::EventTarget::fireEventListeners(WebCore::Event&, WebCore::EventTarget::EventInvokePhase) + 328 (EventTarget.cpp:295) 6 com.apple.WebCore 0x0000000119fbb4a8 WebCore::EventTarget::dispatchEvent(WebCore::Event&) + 348 (EventTarget.cpp:253) 7 com.apple.WebCore 0x000000011c2c0660 WebCore::Worker::dispatchEvent(WebCore::Event&) + 56 (Worker.cpp:226) 8 com.apple.WebCore 0x0000000119de8350 WebCore::ActiveDOMObject::queueTaskToDispatchEventInternal(WebCore::EventTarget&, WebCore::TaskSource, WTF::Ref<WebCore::Event, WTF::RawPtrTraits<WebCore::Event> >&&)::$_3::operator()() const + 80 (ActiveDOMObject.cpp:176) 9 com.apple.WebCore 0x0000000119de81cc WTF::Detail::CallableWrapper<WebCore::ActiveDOMObject::queueTaskToDispatchEventInternal(WebCore::EventTarget&, WebCore::TaskSource, WTF::Ref<WebCore::Event, WTF::RawPtrTraits<WebCore::Event> >&&)::$_3, void>::call() + 28 (Function.h:53) 10 com.apple.WebCore 0x00000001168e0de4 WTF::Function<void ()>::operator()() const + 124 (Function.h:82) 11 com.apple.WebCore 0x0000000119de8a98 WebCore::ActiveDOMObjectEventDispatchTask::execute() + 52 (ActiveDOMObject.cpp:160) Looks like we're firing an event at the Worker object but its JS wrapper is already gone.