-
Notifications
You must be signed in to change notification settings - Fork 46
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
ENH enable faulthandler traceback reporting on worker crash by SIGSEV #419
base: master
Are you sure you want to change the base?
ENH enable faulthandler traceback reporting on worker crash by SIGSEV #419
Conversation
if faulthandler.is_enabled(): | ||
# Fault handler is already enabled, possibly via a custom | ||
# initializer to customize the behavior. | ||
mp.util.debug("faulthandler already enabled.") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be covered by "Case 4" in the test but this it detected by the coverage module because we use subprocess.Popen
in this test to get a full control on the env and ability to inspect stderr
in isolation of pytest.
… variability (PyPy)
The pypy build deadlocked on commit 9d868e7 before reaching the new |
The pypy deadlock is probably unrelated to this PR, but let's push on more time to make sure. |
Automatically call
faulthandler.enable()
by default to dump extra debug info to crashed workers' stderr, typically on SIGSEV, SIGBUS and co.I also expanded the error message of
TerminatedWorkerError
to point the users to look at stderr for more details. This should help us debug stability problems on our CI but also assist our users and interact more productively with them when they report problems.