New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
wpt crash when running ./wpt run chrome
on macOS High Sierra
#9007
Comments
@gsnedders @sideshowbarker, any sense of what the priority of this should be? |
Calling this a dupe of #6998. |
See #8979 (comment) for some findings. The best I can come up with here is to detect the version of python used, and exit with an error if |
So the low-effort solution here is presumably to set that environment variable in a wrapper (e.g. The high effort (i.e. good) solution is to avoid using multiprocessing since it fundamentally violates the expected semantics here by calling The other high effort (and also good) solution is to add Python 3 support and use the new option to multiprocessing that avoids the problematic behaviour. |
@foolip I'm pretty sure this is all ultimately the same issue, just the unsafe fork stuff breaking everything and randomly crashing. |
It sounds like |
@gsnedders, what's |
@foolip If I'm not mistaken, the places where we create processes with
|
@gsnedders, what do you think we should do here? You mentioned I think the next step is just trying to see if it works? |
I got this error when I try to run with chrome using this command the second time , and the shell was hung. I try to rerun it by remove chromedriver. Mac OS version is 10.13.4 and Python version is 2.7.10 |
@gsnedders can you provide a status update on this? This is tracked in Resolve known important infra issues and Q3 is almost at an end. |
Did we ever reach any agreement as to how to solve this? Just exit quickly if some environment variable isn't set? |
If having an environment variable set before invoking But I am curious if @jugglinmike has found it necessary to work around this issue in the Buildbot setup for Safari? |
Argh, that is unfortunate, but unsurprising. I guess that just erroring out and telling the user to try again with |
OK, I'm very confused right now. I can't reproduce it failing now?!
Both Safari and Chrome WFM now?! |
macOS 10.13.6 was released on 2018-08-12, so this may have been fixed at the operating system level. Any chance you've recently upgraded? |
@jugglinmike that seems… unlikely? this was a deliberate behaviour change at the OS level to avoid race-condition. |
In that case, "fixed" is the wrong word. I'm still curious if you're using a different OS version, though. |
I'm on 10.13.6 (17G65), to be clear. |
./wpt run chrome
on macOS High Sierra
Ping from your friendly neighbourhood ecosystem infra rotation Any updates on this issue, @gsnedders? |
Ping @gsnedders. I think all we need here is a check that |
I can still reproduce this crash with MacOS Mojave (latest patch level). When I add |
That's interesting, I've had the crash a bunch of times but never the hanging IIRC. But maybe I don't recall correctly. @whimboo can you print |
@whimboo What happens with |
Sorry, I have seen the problem with Fennec but not Chrome, so maybe my hang is not that closely related. But we got more insight on the hang via bug 1560960 and James landed a patch for it which will soon reach mozilla-central. Reason here was that the HTTP servers at port 8000/8001 could not be started and as such |
There is also https://bugzilla.mozilla.org/show_bug.cgi?id=1561224 now, which I will use to do some investigation around the crash or hang. |
Is anyone still able replicate this issue with #17488 being merged? I have a hard time to do so. |
Quickly trying this, I get:
|
@marcoscaceres oh, yeah, that's unusually common on macOS using Homebrew Python given when it cleans up the old versions the paths no longer exist; we probably ought to deal with that somehow more obviously. |
@marcoscaceres #17522 should force regeneration in that case, finally. |
Appreciate that @gsnedders. Saves me a bunch of time and pain as I don’t know anything about how python works. |
Does anyone still have |
It's doing guaranteed-to-be-unsafe things at the OS level; regardless, this will be fixed by moving to Python 3, and the rare occurrences nowadays I think further suggests this is a backlog that will remain as such till we drop Python 2 support. |
OK, let's just leave this open to make it easier to find for anyone who runs into it until we drop Python 2. |
We have now dropped Python 2, closing. Issues like this can still occur, but they'll be new problems, like #28663. |
When I try to run
./wpt run chrome …
in my MacOS High Sierra environment, it fails:Apparently the cause is some change that was made in High Sierra in Objective-C
fork()
handling:There’s a possibly-related Python bug at https://bugs.python.org/issue30837.
It’s not clear what could be changed in the
wpt
sources to prevent this — nor why it’s not a problem when usingwpt run
with Firefox though it is with Chrome — but a workaround is to callwpt
like this:…that is, with that environment variable set.
Or if you don’t want to have do it that way every time you call
./wpt run
, then you can do this:…to persistently set that environment variable in that shell session.
The text was updated successfully, but these errors were encountered: