Bug 207401 - iPad testers failing to launch processes
Summary: iPad testers failing to launch processes
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Jonathan Bedard
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2020-02-07 13:09 PST by Jonathan Bedard
Modified: 2020-02-10 09:25 PST (History)
6 users (show)

See Also:


Attachments
Patch (1.37 KB, patch)
2020-02-07 13:17 PST, Jonathan Bedard
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jonathan Bedard 2020-02-07 13:09:16 PST
Our iPad testers are consistently failing to launch processes. Reproducing the issue is difficult, even when attempting to do so on the bots themselves, but our automation is constantly struggling with this.
Comment 1 Jonathan Bedard 2020-02-07 13:09:39 PST
<rdar://problem/58184777>
Comment 2 Jonathan Bedard 2020-02-07 13:17:27 PST
Created attachment 390118 [details]
Patch
Comment 3 Jonathan Bedard 2020-02-07 13:35:18 PST
I've managed to reproduce this twice by running kill-old-processes right before running tests.
Comment 4 Jonathan Bedard 2020-02-07 14:45:42 PST
Committed r256065: <https://trac.webkit.org/changeset/256065>
Comment 5 Alexey Proskuryakov 2020-02-07 16:29:09 PST
Comment on attachment 390118 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=390118&action=review

> Tools/BuildSlaveSupport/kill-old-processes:102
> +        "Simulator.app",

This is surprising, apps don't usually have .app in the process name. Does this updated line have any effect now?
Comment 6 Jonathan Bedard 2020-02-10 08:07:32 PST
(In reply to Alexey Proskuryakov from comment #5)
> Comment on attachment 390118 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=390118&action=review
> 
> > Tools/BuildSlaveSupport/kill-old-processes:102
> > +        "Simulator.app",
> 
> This is surprising, apps don't usually have .app in the process name. Does
> this updated line have any effect now?

It's in the path:
Xcode.app/Contents/Developer/Applications/Simulator.app/Contents/MacOS/Simulator

Not sure we should really be doing this at actually. This did fix our iPad testers, but it also hosed one of our iPhone bots in the process:
https://build.webkit.org/builders/Apple%20iOS%2013%20Simulator%20Release%20WK2%20%28Tests%29/builds/2490

That bot was in a pretty bad state, grabbed a sysdiagnose, but couldn't really do anything else. I restarted it and will continue to monitor it.
Comment 7 Alexey Proskuryakov 2020-02-10 09:25:18 PST
> It's in the path: Xcode.app/Contents/Developer/Applications/Simulator.app/Contents/MacOS/Simulator

Elements in the tasksToKillMac array are passed to killall as regex matches: 'os.system("killall -9 -v -m " + task)'

This means that path isn't considered, just the process name. Also, it means that the dot in "Simulator.app" matches any character, which is not a big deal, but is unclean.

Try "killall -9 -v -m Terminal.app" in your Terminal session to confirm that it won't be killed.