[issue25908] ProcessPoolExecutor deadlock on KeyboardInterrupt

2015-12-27 Thread Davin Potts
Davin Potts added the comment: Noting the connection to issue22393. -- dependencies: +multiprocessing.Pool shouldn't hang forever if a worker process dies unexpectedly ___ Python tracker __

[issue25908] ProcessPoolExecutor deadlock on KeyboardInterrupt

2015-12-27 Thread Davin Potts
Changes by Davin Potts : -- nosy: +davin ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.or

[issue25908] ProcessPoolExecutor deadlock on KeyboardInterrupt

2015-12-25 Thread Terry J. Reedy
Changes by Terry J. Reedy : -- versions: -Python 3.2, Python 3.3, Python 3.4 ___ Python tracker ___ ___ Python-bugs-list mailing list

[issue25908] ProcessPoolExecutor deadlock on KeyboardInterrupt

2015-12-18 Thread Thomas Jackson
Thomas Jackson added the comment: Some more investigation, it seems that the alternate `Queue` fix is a non-starter. From my investigation it seems that the ProcessPoolExecutor is assuming that multiprocess.Queue is gauranteed delivery, and it isn't (because of the pickling). So the issue is t

[issue25908] ProcessPoolExecutor deadlock on KeyboardInterrupt

2015-12-18 Thread Thomas Jackson
Thomas Jackson added the comment: Seems that I accidentally hit submit, so let me finish the last bit of my message here: An alternate approach is to actually change multiprocessing.Queue.get() to leave the item on the queue if it is interrupted with a keyboard interrupt. Then the worker pro

[issue25908] ProcessPoolExecutor deadlock on KeyboardInterrupt

2015-12-18 Thread Thomas Jackson
New submission from Thomas Jackson: If a KeyboardInterrupt is received while a worker process is grabbing an item off of the queue that worker process dies with an uncaught exception. This means that the ProcessPool now has lost a process, and currently has no mechanism to recover from dead pr