Bug 201616

Summary: WebKitTestRunner: Many tests timeout on macOS Catalina
Product: WebKit Reporter: Jonathan Bedard <jbedard>
Component: Tools / TestsAssignee: Jonathan Bedard <jbedard>
Status: RESOLVED FIXED    
Severity: Normal CC: achristensen, ap, beidson, benjamin, cdumez, cmarcelo, commit-queue, dbates, ews-watchlist, jbedard, jlewis3, katherine_cheney, pvollan, webkit-bug-importer, wilander, youennf
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch
none
Patch none

Jonathan Bedard
Reported 2019-09-09 15:33:13 PDT
When I try to run tests on macOS Catalina, hundreds of tests are timing out, mostly http tests. Many of the tests I'm seeing timeout involve ResourceLoadStatistics, although it's possible other features are also effected. In http/tests/cache, the following tests are timing out: http/tests/cache/link-prefetch-main-resource-iframe.html [ Timeout ] http/tests/cache/link-prefetch-main-resource.html [ Timeout ] http/tests/cache/partitioned-cache-iframe.html [ Timeout ] http/tests/cache/partitioned-cache.html [ Timeout ] http/tests/cache/xhr-vary-header.html [ Timeout ]
Attachments
Patch (1.22 KB, patch)
2019-10-01 15:04 PDT, Jonathan Bedard
no flags
Patch (1.17 KB, patch)
2019-10-01 15:22 PDT, Jonathan Bedard
no flags
Patch (1.17 KB, patch)
2019-10-01 16:54 PDT, Jonathan Bedard
no flags
Radar WebKit Bug Importer
Comment 1 2019-09-09 15:33:37 PDT
Jonathan Bedard
Comment 2 2019-09-26 21:49:48 PDT
I originally thought this was because of where we were saving files, but testing today indicates that it has to do with hanging on https.
Jonathan Bedard
Comment 3 2019-10-01 09:27:35 PDT
I have a pretty basic reproduction case, which took me awhile to figure out because I am still not clear on how this would happen. In short, with http/tests/security/contentSecurityPolicy/1.1/base-uri-allow.html, the test runner is never even attempting to retrieve the other resources. This will completely break many http tests in various different ways. It doesn't seem to be apache, because I can retrieve these files fine via curl, and this test even works if I run it in the browser while the http server is running. So this would seem to be a problem in the test runner.
Jonathan Bedard
Comment 4 2019-10-01 11:21:27 PDT
This is an entitlement problem: "com.apple.WebKit(####) does not hold the necessary entitlement to delegate network traffic for other processes by pid"
Jonathan Bedard
Comment 5 2019-10-01 15:04:34 PDT
Jonathan Bedard
Comment 6 2019-10-01 15:05:26 PDT
(In reply to Jonathan Bedard from comment #5) > Created attachment 379953 [details] > Patch This fixes the problem...doing some additional testing, but I wanted to put the patch up for review.
Alex Christensen
Comment 7 2019-10-01 15:08:27 PDT
Comment on attachment 379953 [details] Patch Let's keep it on for all IOS_FAMILY builds but only turn it off for open source Catalina builds.
Jonathan Bedard
Comment 8 2019-10-01 15:22:19 PDT
Jonathan Bedard
Comment 9 2019-10-01 15:26:28 PDT
(In reply to Alex Christensen from comment #7) > Comment on attachment 379953 [details] > Patch > > Let's keep it on for all IOS_FAMILY builds but only turn it off for open > source Catalina builds. Fair point.
Alexey Proskuryakov
Comment 10 2019-10-01 16:43:07 PDT
Comment on attachment 379954 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=379954&action=review > Source/WTF/wtf/Platform.h:1387 > +#if (PLATFORM(MAC) && defined USE_APPLE_INTERNAL_SDK && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101500) || PLATFORM(IOS_FAMILY) This should be USE(APPLE_INTERNAL_SDK), not USE_APPLE_INTERNAL_SDK.
Jonathan Bedard
Comment 11 2019-10-01 16:54:59 PDT
WebKit Commit Bot
Comment 12 2019-10-01 18:50:31 PDT
Comment on attachment 379968 [details] Patch Clearing flags on attachment: 379968 Committed r250590: <https://trac.webkit.org/changeset/250590>
WebKit Commit Bot
Comment 13 2019-10-01 18:50:33 PDT
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.