Bug 266772
Summary: | REGRESSION (272402@main ): [ macOS ] Multiple API tests are flaky/timeout with ASSERTION FAILED: RunLoop | ||
---|---|---|---|
Product: | WebKit | Reporter: | Marta Darbinyan <darbinyan> |
Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | cdumez, webkit-bot-watchers-bugzilla, webkit-bug-importer |
Priority: | P2 | Keywords: | InRadar |
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
Marta Darbinyan
Description:
api-tests: TestWebKitAPI.AdvancedPrivacyProtections.RemoveTrackingQueryParametersWhenNavigating
api-tests: TestWebKitAPI.AdvancedPrivacyProtections.RemoveTrackingQueryParametersWhenNavigatingWithContentBlockersDisabled
api-tests: TestWebKitAPI.AdvancedPrivacyProtections.DoNotRemoveTrackingQueryParametersWhenPrivacyProtectionsAreDisabled
api-tests: TestWebKitAPI.DownloadProgress.CancelDownloadWhenProgressIsCanceled
api-tests: TestWebKitAPI._WKDownload.RedirectedLoadConvertedToDownload
api-tests: TestWebKitAPI.ContentFiltering.AllowDownloadAfterAddData
api-tests: TestWebKitAPI.WebKit.DecidePolicyForNavigationActionForPOSTFormSubmissionThatRedirectsToPOST
api-tests: TestWebKitAPI.ContentFiltering.AllowDownloadNever
api-tests: TestWebKitAPI.DownloadProgress.BasicSubscriptionAndProgressUpdates
api-tests: TestWebKitAPI.ContentFiltering.AllowDownloadAfterFinishedAddingData
api-tests: TestWebKitAPI.WebKit.WKContextRegisterURLSchemeAsCanDisplayOnlyIfCanRequest_SameOriginLoad
api-tests: TestWebKitAPI.DownloadProgress.PublishProgressOnPartialDownload
api-tests: TestWebKitAPI._WKDownload.DownloadCanceledWhileDecidingDestination
api-tests: TestWebKitAPI.ContentFiltering.AllowDownloadAfterRedirect
api-tests: TestWebKitAPI.ContentFiltering.BlockDownloadAfterAddData
api-tests: TestWebKitAPI.ContentFiltering.BlockDownloadAfterFinishedAddingData
api-tests: TestWebKitAPI.AdvancedPrivacyProtections.UpdateTrackingQueryParametersAfterInitialization
api-tests: TestWebKitAPI.WebKit2CustomProtocolsTest.SyncXHR
api-tests: TestWebKitAPI.WKAttachmentTests.CopyAndPasteRemoteImages
api-tests: TestWebKitAPI.ContentFiltering.AllowDownloadAfterResponse
api-tests: TestWebKitAPI.WebpagePreferences.ContentRuleListEnablement
api-tests: TestWebKitAPI.WebKit.DownloadNavigationResponseFromMemoryCache
api-tests: TestWebKitAPI.ContentFiltering.LoadAlternateAfterAddDataWK2
api-tests: TestWebKitAPI.WKWebViewMacEditingTests.ProcessSwapAfterSettingMarkedText
api-tests: TestWebKitAPI.ContentFiltering.LoadAlternateAfterResponseWK2
api-tests: TestWebKitAPI.NetworkProcess.CustomSchemeWasPrivateRelayed
api-tests: TestWebKitAPI.ContentFiltering.LoadAlternateAfterFinishedAddingDataWK2
api-tests: TestWebKitAPI.DownloadProgress.ProgressExtendedAttributeSetAfterPartialDownloadStops
api-tests: TestWebKitAPI.WebKit2CustomProtocolsTest.ProcessPoolDestroyedDuringLoading
api-tests: TestWebKitAPI.ContentFiltering.LazilyLoadPlatformFrameworks
api-tests: TestWebKitAPI.AdvancedPrivacyProtections.RemoveTrackingQueryParametersForMainResourcesOnly
api-tests: TestWebKitAPI.WebKit.DecidePolicyForNavigationActionForHyperlinkThatRedirectsWithoutPSON
api-tests: TestWebKitAPI.WebKit2CustomProtocolsTest.CloseDuringCustomProtocolLoad
api-tests: TestWebKitAPI.WebKit.LoadAlternateHTMLStringAllowsFirstPartyForCookies
api-tests: TestWebKitAPI._WKDownload.RedirectedDownload
api-tests: TestWebKitAPI.WebKit.AlwaysRevalidatedURLSchemes
api-tests: TestWebKitAPI._WKDownload.RedirectedSubframeLoadConvertedToDownload
api-tests: TestWebKitAPI.AdvancedPrivacyProtections.HideScreenMetricsFromBindings
api-tests: TestWebKitAPI.AdvancedPrivacyProtections.RemoveTrackingQueryParametersWhenCopyingURL
api-tests: TestWebKitAPI.WebKit2.WebRTCAndRemoteCommands
api-tests: TestWebKitAPI.WebKit.RegisterAsCanDisplayOnlyIfCanRequest_SameOriginLoad
api-tests: TestWebKitAPI.ContentFiltering.AllowDownloadAfterWillSendRequest
api-tests: TestWebKitAPI.DownloadProgress.IndeterminateDownloadSize
api-tests: TestWebKitAPI.WebKit2CustomProtocolsTest.MainResource
api-tests: TestWebKitAPI.ContentFiltering.LoadAlternateAfterRedirectWK2
api-tests: TestWebKitAPI.WebKit.DecidePolicyForNavigationActionForPOSTFormSubmissionThatRedirectsToGET
api-tests: TestWebKitAPI.DownloadProgress.LoseProgressWhenDownloadIsCanceled
api-tests: TestWebKitAPI.DownloadProgress.StartDownloadFromNavigationAction
api-tests: TestWebKitAPI.ContentFiltering.BlockDownloadNever
api-tests: TestWebKitAPI.DownloadProgress.ExtraData
api-tests: TestWebKitAPI.DownloadProgress.StartDownloadInProcessPool
api-tests: TestWebKitAPI.DownloadProgress.PublishProgressAfterDownloadFinished
api-tests: TestWebKitAPI.DownloadProgress.LoseProgressWhenDownloadFails
api-tests: TestWebKitAPI.WebKit.DecidePolicyForNavigationActionForHyperlinkThatRedirectsWithPSON
Are flaky failure/Timeout on macOS ToT since 272400@mai
This issue can be bisected to <commit> using the command:
run-webkit-tests --root --exit-after-n-failures 1 --debug <test>
History:
https://results.webkit.org/?suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&suite=api-tests&test=TestWebKitAPI.AdvancedPrivacyProtections.HideScreenMetricsFromBindings&test=TestWebKitAPI.AdvancedPrivacyProtections.RemoveTrackingQueryParametersForMainResourcesOnly&test=TestWebKitAPI.AdvancedPrivacyProtections.RemoveTrackingQueryParametersWhenCopyingURL&test=TestWebKitAPI.AdvancedPrivacyProtections.RemoveTrackingQueryParametersWhenNavigating&test=TestWebKitAPI.AdvancedPrivacyProtections.RemoveTrackingQueryParametersWhenNavigatingWithContentBlockersDisabled&test=TestWebKitAPI.AdvancedPrivacyProtections.UpdateTrackingQueryParametersAfterInitialization&test=TestWebKitAPI.ContentFiltering.AllowDownloadAfterAddData&test=TestWebKitAPI.ContentFiltering.AllowDownloadAfterFinishedAddingData&test=TestWebKitAPI.ContentFiltering.AllowDownloadAfterRedirect&test=TestWebKitAPI.ContentFiltering.AllowDownloadAfterResponse&test=TestWebKitAPI.ContentFiltering.AllowDownloadAfterWillSendRequest&test=TestWebKitAPI.ContentFiltering.AllowDownloadNever&test=TestWebKitAPI.ContentFiltering.BlockDownloadAfterAddData&test=TestWebKitAPI.ContentFiltering.BlockDownloadAfterFinishedAddingData&test=TestWebKitAPI.ContentFiltering.BlockDownloadNever&test=TestWebKitAPI.ContentFiltering.LazilyLoadPlatformFrameworks&test=TestWebKitAPI.ContentFiltering.LoadAlternateAfterAddDataWK2&test=TestWebKitAPI.ContentFiltering.LoadAlternateAfterFinishedAddingDataWK2&test=TestWebKitAPI.ContentFiltering.LoadAlternateAfterRedirectWK2&test=TestWebKitAPI.ContentFiltering.LoadAlternateAfterResponseWK2&test=TestWebKitAPI.ContentFiltering.URLAfterServerRedirect&test=TestWebKitAPI.ContentFiltering.URLAfterServerRedirectBlocked&test=TestWebKitAPI.DownloadProgress.BasicSubscriptionAndProgressUpdates&test=TestWebKitAPI.DownloadProgress.CancelDownloadWhenProgressIsCanceled&test=TestWebKitAPI.DownloadProgress.ExtraData&test=TestWebKitAPI.DownloadProgress.IndeterminateDownloadSize&test=TestWebKitAPI.DownloadProgress.LoseProgressWhenDownloadFails&test=TestWebKitAPI.DownloadProgress.LoseProgressWhenDownloadIsCanceled&test=TestWebKitAPI.DownloadProgress.ProgressExtendedAttributeSetAfterPartialDownloadStops&test=TestWebKitAPI.DownloadProgress.PublishProgressAfterDownloadFinished&test=TestWebKitAPI.DownloadProgress.PublishProgressOnPartialDownload&test=TestWebKitAPI.DownloadProgress.StartDownloadFromNavigationAction&test=TestWebKitAPI.DownloadProgress.StartDownloadInProcessPool&test=TestWebKitAPI.NetworkProcess.CustomSchemeWasPrivateRelayed&test=TestWebKitAPI.WKAttachmentTests.CopyAndPasteRemoteImages&test=TestWebKitAPI.WKWebViewMacEditingTests.ProcessSwapAfterSettingMarkedText&test=TestWebKitAPI.WebKit.AlwaysRevalidatedURLSchemes&test=TestWebKitAPI.WebKit.DecidePolicyForNavigationActionForHyperlinkThatRedirectsWithPSON&test=TestWebKitAPI.WebKit.DecidePolicyForNavigationActionForHyperlinkThatRedirectsWithoutPSON&test=TestWebKitAPI.WebKit.DecidePolicyForNavigationActionForPOSTFormSubmissionThatRedirectsToGET&test=TestWebKitAPI.WebKit.DecidePolicyForNavigationActionForPOSTFormSubmissionThatRedirectsToPOST&test=TestWebKitAPI.WebKit.DownloadNavigationResponseFromMemoryCache&test=TestWebKitAPI.WebKit.LoadAlternateHTMLStringAllowsFirstPartyForCookies&test=TestWebKitAPI.WebKit.RegisterAsCanDisplayOn
Error Log:
"name": "TestWebKitAPI._WKDownload.RedirectedSubframeLoadConvertedToDownload",
"output": "ASSERTION FAILED: RunLoop::isMain()\n/Volumes/Data/worker/Apple-Ventura-Debug-Build/build/Source/WebKit/NetworkProcess/CustomProtocols/LegacyCustomProtocolManager.cpp(52) : Ref<WebKit::NetworkProcess> WebKit::LegacyCustomProtocolManager::protectedNetworkProcess() const\n1 0x1076b1c68 WTFCrash\n2 0x1383c0ea0 std::__1::span<unsigned char const, 18446744073709551615ul>::span[abi:v15006]<unsigned char const*>(unsigned char const*, unsigned long)\n3 0x13978f438 WebKit::LegacyCustomProtocolManager::protectedNetworkProcess() const\n4 0x13978f73c WebKit::LegacyCustomProtocolManager::startLoading(WTF::ObjectIdentifierGeneric<WebKit::LegacyCustomProtocolIDType, WTF::ObjectIdentifierThreadSafeAccessTraits>, WebCore::ResourceRequest const&)\n5 0x138ec8a54 -[WKCustomProtocol startLoading]\n6 0x1968f6edc CFURLRequestGetTimeoutInterval\n7 0x191e60400 _dispatch_client_callout\n8 0x191e63e70 _dispatch_block_invoke_direct\n9 0x1968bc138 CFHTTPMessageGetTypeID\n10 0x1920b1b3c CFArrayApplyFunction\n11 0x1968bc028 CFHTTPMessageGetTypeID\n12 0x1968bbed0 CFHTTPMessageGetTypeID\n13 0x1920ee63c __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__\n14 0x1920ee5d0 __CFRunLoopDoSource0\n15 0x1920ee340 __CFRunLoopDoSources0\n16 0x1920ecf48 __CFRunLoopRun\n17 0x1920ec4b8 CFRunLoopRunSpecific\n18 0x196ad2d28 _CFURLStorageSessionDisableCache\n19 0x19305f53c __NSThread__start__\n20 0x19200ffa8 _pthread_start\n21 0x19200ada0 thread_start\n"
}
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/120001595>
Ryan Haddad
Pasting a more readable backtrace
ASSERTION FAILED: RunLoop::isMain()
/Volumes/Data/worker/Apple-Sonoma-Debug-Build/build/Source/WebKit/NetworkProcess/CustomProtocols/LegacyCustomProtocolManager.cpp(52) : Ref<NetworkProcess> WebKit::LegacyCustomProtocolManager::protectedNetworkProcess() const
1 0x105e98760 WTFCrash
2 0x136f49ad0 std::__1::span<unsigned char const, 18446744073709551615ul>::span[abi:v160006]<unsigned char const*>(unsigned char const*, unsigned long)
3 0x138380210 WebKit::LegacyCustomProtocolManager::protectedNetworkProcess() const
4 0x138380514 WebKit::LegacyCustomProtocolManager::startLoading(WTF::ObjectIdentifierGeneric<WebKit::LegacyCustomProtocolIDType, WTF::ObjectIdentifierThreadSafeAccessTraits>, WebCore::ResourceRequest const&)
5 0x137a91a6c -[WKCustomProtocol startLoading]
6 0x193baa4bc CFURLRequestGetTimeoutInterval
7 0x18e71f910 _dispatch_client_callout
8 0x18e723358 _dispatch_block_invoke_direct
9 0x193b70a34 CFHTTPMessageGetTypeID
10 0x18e96b048 CFArrayApplyFunction
11 0x193b70924 CFHTTPMessageGetTypeID
12 0x193b707cc CFHTTPMessageGetTypeID
13 0x18e9a9cfc __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
14 0x18e9a9c90 __CFRunLoopDoSource0
15 0x18e9a9a00 __CFRunLoopDoSources0
16 0x18e9a85f0 __CFRunLoopRun
17 0x18e9a7c5c CFRunLoopRunSpecific
18 0x193d90398 _CFURLStorageSessionDisableCache
19 0x18faa9ff4 __NSThread__start__
20 0x18e8cd034 _pthread_start
21 0x18e8c7e3c thread_start
Marta Darbinyan
The culprit is reverted and the tests are again to pass. Waiting for the change to be integrate.
Chris Dumez
https://commits.webkit.org/272423@main
Chris Dumez
And I re-landed the assertion in https://commits.webkit.org/272437@main with a fix.