This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author neologix
Recipients neologix, vstinner
Date 2011-06-25.23:53:30
SpamBayes Score 0.00021353869
Marked as misclassified No
Message-id <1309046011.52.0.650507172396.issue12413@psf.upfronthosting.co.za>
In-reply-to
Content
As noted in issue #11870, making faulthandler capable of dumping child processes' tracebacks could be a great aid in debugging tricky deadlocks involving for example multiprocessing and subprocess.
Since there's no portable way to find out child processes, a possible idea would be to make the handler send a signal to its process group if the current process is the process group leader.
Advantages:
- simple
- async-safe
Drawbacks:
- since all the processes receive the signal at the same time, their outputs will be interleaved (we could maybe add a random sleep before dumping the traceback?)
- children not part of the same process group (for example those who called setsid() or setpgrp()) won't be handled

I'm not sure how this would work out on Windows, but I don't event know if Windows has a notion of child processes or process groups...
History
Date User Action Args
2011-06-25 23:53:31neologixsetrecipients: + neologix, vstinner
2011-06-25 23:53:31neologixsetmessageid: <1309046011.52.0.650507172396.issue12413@psf.upfronthosting.co.za>
2011-06-25 23:53:30neologixlinkissue12413 messages
2011-06-25 23:53:30neologixcreate