[issue9205] Parent process hanging in multiprocessing if children terminate unexpectedly
report at bugs.python.org
Wed Jul 21 00:31:34 CEST 2010
Greg Brockman <gdb at ksplice.com> added the comment:
At first glance, looks like there are a number of sites where you don't change the blocking calls to non-blocking calls (e.g. get()). Almost all of the get()s have the potential to be called when there is no possibility for them to terminate.
I might recommend referring to my original termination.patch... I believe I tracked down the majority of such blocking calls.
In the interest of simplicity though, I'm beginning to think that the right answer might be to just do something like termination.patch but to conditionalize crashing the pool on a pool configuration option. That way the behavior would no worse for your use case. Does that sound reasonable?
Python tracker <report at bugs.python.org>
More information about the Python-bugs-list