RESOLVED FIXED 207940
[mac debug] Regression: http/tests/websocket/tests/hybi/workers/worker-reload.html is a flaky crash
https://bugs.webkit.org/show_bug.cgi?id=207940
Summary [mac debug] Regression: http/tests/websocket/tests/hybi/workers/worker-reload...
Aakash Jain
Reported 2020-02-19 08:43:12 PST
http/tests/websocket/tests/hybi/workers/worker-reload.html is a flaky crash on mac debug wk1. It seems to have regressed recently. Results database: https://results.webkit.org/?suite=layout-tests&test=http%2Ftests%2Fwebsocket%2Ftests%2Fhybi%2Fworkers%2Fworker-reload.html&flavor=wk1&style=debug Sample builds: https://ews-build.webkit.org/#/builders/32/builds/3262 https://ews-build.webkit.org/#/builders/32/builds/3257 Sample results: https://ews-build.webkit.org/results/macOS-Mojave-Debug-WK1-Tests-EWS/r391157-3262/results.html https://ews-build.webkit.org/results/macOS-Mojave-Debug-WK1-Tests-EWS/r391152-3257/results.html Crash log: https://ews-build.webkit.org/results/macOS-Mojave-Debug-WK1-Tests-EWS/r391157-3262/http/tests/websocket/tests/hybi/workers/worker-reload-crash-log.txt https://ews-build.webkit.org/results/macOS-Mojave-Debug-WK1-Tests-EWS/r391152-3257/http/tests/websocket/tests/hybi/workers/worker-reload-crash-log.txt ASSERTION FAILED: The string being removed is an atom in the string table of an other thread! iterator != atomStringTable.end() CRASHING TEST: http://127.0.0.1:8000/websocket/tests/hybi/workers/worker-reload.html Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 com.apple.JavaScriptCore 0x0000000102f4d920 WTFCrash + 16 (Assertions.cpp:305) 1 com.apple.JavaScriptCore 0x0000000102f55fc4 WTF::AtomStringImpl::remove(WTF::AtomStringImpl*) + 308 (AtomStringImpl.cpp:496) 2 com.apple.JavaScriptCore 0x0000000103003528 WTF::StringImpl::~StringImpl() + 280 (StringImpl.cpp:121) 3 com.apple.JavaScriptCore 0x00000001030038d5 WTF::StringImpl::~StringImpl() + 21 (StringImpl.cpp:148)
Attachments
Patch (1.85 KB, patch)
2020-02-19 11:10 PST, youenn fablet
no flags
Patch (1.85 KB, patch)
2020-02-19 11:14 PST, youenn fablet
no flags
Archive of layout-test-results from webkit-cq-01 for mac-mojave (4.25 MB, application/zip)
2020-02-19 13:24 PST, WebKit Commit Bot
no flags
Radar WebKit Bug Importer
Comment 1 2020-02-19 08:58:04 PST
Ryan Haddad
Comment 3 2020-02-19 09:17:41 PST
ASSERTION FAILED: The string being removed is an atom in the string table of an other thread! iterator != atomStringTable.end() /Volumes/Data/worker/macOS-Mojave-Debug-Build-EWS/build/Source/WTF/wtf/text/AtomStringImpl.cpp(496) : static void WTF::AtomStringImpl::remove(WTF::AtomStringImpl *) 1 0x102f4d919 WTFCrash 2 0x102f55fc4 WTF::AtomStringImpl::remove(WTF::AtomStringImpl*) 3 0x103003528 WTF::StringImpl::~StringImpl() 4 0x1030038d5 WTF::StringImpl::~StringImpl() 5 0x1030038f5 WTF::StringImpl::destroy(WTF::StringImpl*) 6 0x11bdce1ef WTF::StringImpl::deref() 7 0x11bdce17e void WTF::derefIfNotNull<WTF::StringImpl>(WTF::StringImpl*) 8 0x11bdce149 WTF::RefPtr<WTF::StringImpl, WTF::DumbPtrTraits<WTF::StringImpl> >::~RefPtr() 9 0x11bdce115 WTF::RefPtr<WTF::StringImpl, WTF::DumbPtrTraits<WTF::StringImpl> >::~RefPtr() 10 0x11bdce0f5 WTF::String::~String() 11 0x11bdce0d5 WTF::String::~String() 12 0x11be0ba05 WTF::URL::~URL() 13 0x11be0b9e5 WTF::URL::~URL() 14 0x11dec09a5 WebCore::WebSocket::connect(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&)::$_11::~$_11() 15 0x11deac5f5 WebCore::WebSocket::connect(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&)::$_11::~$_11() 16 0x11dee6df1 WTF::Detail::CallableWrapper<WebCore::WebSocket::connect(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&)::$_11, void, WebCore::ScriptExecutionContext&>::~CallableWrapper() 17 0x11dee6d45 WTF::Detail::CallableWrapper<WebCore::WebSocket::connect(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&)::$_11, void, WebCore::ScriptExecutionContext&>::~CallableWrapper() 18 0x11dee6d69 WTF::Detail::CallableWrapper<WebCore::WebSocket::connect(WTF::String const&, WTF::Vector<WTF::String, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&)::$_11, void, WebCore::ScriptExecutionContext&>::~CallableWrapper() 19 0x11be0cdaf std::__1::default_delete<WTF::Detail::CallableWrapperBase<void, WebCore::ScriptExecutionContext&> >::operator()(WTF::Detail::CallableWrapperBase<void, WebCore::ScriptExecutionContext&>*) const 20 0x11be0cd2f std::__1::unique_ptr<WTF::Detail::CallableWrapperBase<void, WebCore::ScriptExecutionContext&>, std::__1::default_delete<WTF::Detail::CallableWrapperBase<void, WebCore::ScriptExecutionContext&> > >::reset(WTF::Detail::CallableWrapperBase<void, WebCore::ScriptExecutionContext&>*) 21 0x11be0ccc9 std::__1::unique_ptr<WTF::Detail::CallableWrapperBase<void, WebCore::ScriptExecutionContext&>, std::__1::default_delete<WTF::Detail::CallableWrapperBase<void, WebCore::ScriptExecutionContext&> > >::~unique_ptr() 22 0x11be0cca5 std::__1::unique_ptr<WTF::Detail::CallableWrapperBase<void, WebCore::ScriptExecutionContext&>, std::__1::default_delete<WTF::Detail::CallableWrapperBase<void, WebCore::ScriptExecutionContext&> > >::~unique_ptr() 23 0x11be0cc85 WTF::Function<void (WebCore::ScriptExecutionContext&)>::~Function() 24 0x11be0cc65 WTF::Function<void (WebCore::ScriptExecutionContext&)>::~Function() 25 0x11be0cc45 WebCore::ScriptExecutionContext::Task::~Task() 26 0x11be089f5 WebCore::ScriptExecutionContext::Task::~Task() 27 0x11e639a69 WebCore::Document::postTask(WebCore::ScriptExecutionContext::Task&&)::$_13::~$_13() 28 0x11e615965 WebCore::Document::postTask(WebCore::ScriptExecutionContext::Task&&)::$_13::~$_13() 29 0x11e68c381 WTF::Detail::CallableWrapper<WebCore::Document::postTask(WebCore::ScriptExecutionContext::Task&&)::$_13, void>::~CallableWrapper() 30 0x11e68c2b5 WTF::Detail::CallableWrapper<WebCore::Document::postTask(WebCore::ScriptExecutionContext::Task&&)::$_13, void>::~CallableWrapper() 31 0x11e68c2d9 WTF::Detail::CallableWrapper<WebCore::Document::postTask(WebCore::ScriptExecutionContext::Task&&)::$_13, void>::~CallableWrapper()
youenn fablet
Comment 4 2020-02-19 09:18:24 PST
There is an isolatedCopy that is missing in auto reportRegistrableDomain = [url = m_url](ScriptExecutionContext& context)
Jacob Uphoff
Comment 5 2020-02-19 09:18:42 PST
Looks like this can be reproduce with running the test in iterations.. Looking for regression point now.
Jacob Uphoff
Comment 6 2020-02-19 11:00:56 PST
Looks like it started on r256837. I can reproduce with running 'run-webkit-tests --root BUILD http/tests/websocket/tests/hybi/workers/worker-reload.html -1 -f --debug --iterations 100' on r256837 but it does not reproduce on r256836.
youenn fablet
Comment 7 2020-02-19 11:10:15 PST
youenn fablet
Comment 8 2020-02-19 11:14:54 PST
Chris Dumez
Comment 9 2020-02-19 12:20:36 PST
Comment on attachment 391182 [details] Patch Doh!
WebKit Commit Bot
Comment 10 2020-02-19 13:24:25 PST
Comment on attachment 391182 [details] Patch Rejecting attachment 391182 [details] from commit-queue. New failing tests: editing/spelling/spellcheck-async-remove-frame.html Full output: https://webkit-queues.webkit.org/results/13325145
WebKit Commit Bot
Comment 11 2020-02-19 13:24:27 PST
Created attachment 391193 [details] Archive of layout-test-results from webkit-cq-01 for mac-mojave The attached test failures were seen while running run-webkit-tests on the commit-queue. Bot: webkit-cq-01 Port: mac-mojave Platform: Mac OS X 10.14.6
WebKit Commit Bot
Comment 12 2020-02-19 14:10:27 PST
Comment on attachment 391182 [details] Patch Clearing flags on attachment: 391182 Committed r256949: <https://trac.webkit.org/changeset/256949>
WebKit Commit Bot
Comment 13 2020-02-19 14:10:29 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.