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 vstinner
Recipients davin, pablogsal, pitrou, steve.dower, vstinner
Date 2019-09-10.15:30:58
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1568129458.49.0.397040144767.issue38084@roundup.psfhosted.org>
In-reply-to
Content
I converted the example into attached file mp_exit.py and I added a call to faulthandler to see what is going on.

Output with the master branch of Python:

vstinner@apu$ ~/python/master/python ~/mp_exit.py 
Timeout (0:00:05)!
Thread 0x00007ff40139a700 (most recent call first):
  File "/home/vstinner/python/master/Lib/multiprocessing/connection.py", line 379 in _recv
  File "/home/vstinner/python/master/Lib/multiprocessing/connection.py", line 414 in _recv_bytes
  File "/home/vstinner/python/master/Lib/multiprocessing/connection.py", line 250 in recv
  File "/home/vstinner/python/master/Lib/multiprocessing/pool.py", line 576 in _handle_results
  File "/home/vstinner/python/master/Lib/threading.py", line 882 in run
  File "/home/vstinner/python/master/Lib/threading.py", line 944 in _bootstrap_inner
  File "/home/vstinner/python/master/Lib/threading.py", line 902 in _bootstrap

Thread 0x00007ff401b9b700 (most recent call first):
  File "/home/vstinner/python/master/Lib/multiprocessing/pool.py", line 528 in _handle_tasks
  File "/home/vstinner/python/master/Lib/threading.py", line 882 in run
  File "/home/vstinner/python/master/Lib/threading.py", line 944 in _bootstrap_inner
  File "/home/vstinner/python/master/Lib/threading.py", line 902 in _bootstrap

Thread 0x00007ff40239c700 (most recent call first):
  File "/home/vstinner/python/master/Lib/selectors.py", line 415 in select
  File "/home/vstinner/python/master/Lib/multiprocessing/connection.py", line 930 in wait
  File "/home/vstinner/python/master/Lib/multiprocessing/pool.py", line 499 in _wait_for_updates
  File "/home/vstinner/python/master/Lib/multiprocessing/pool.py", line 519 in _handle_workers
  File "/home/vstinner/python/master/Lib/threading.py", line 882 in run
  File "/home/vstinner/python/master/Lib/threading.py", line 944 in _bootstrap_inner
  File "/home/vstinner/python/master/Lib/threading.py", line 902 in _bootstrap

Thread 0x00007ff4102cf740 (most recent call first):
  File "/home/vstinner/python/master/Lib/threading.py", line 303 in wait
  File "/home/vstinner/python/master/Lib/threading.py", line 565 in wait
  File "/home/vstinner/python/master/Lib/multiprocessing/pool.py", line 759 in wait
  File "/home/vstinner/python/master/Lib/multiprocessing/pool.py", line 762 in get
  File "/home/vstinner/python/master/Lib/multiprocessing/pool.py", line 364 in map
  File "/home/vstinner/mp_exit.py", line 12 in <module>


In the main process, Pool._handle_results() thread is blocked on os.read() which never completes, even if the child process died and so the other end of the pipe should be closed.
History
Date User Action Args
2019-09-10 15:30:58vstinnersetrecipients: + vstinner, pitrou, steve.dower, davin, pablogsal
2019-09-10 15:30:58vstinnersetmessageid: <1568129458.49.0.397040144767.issue38084@roundup.psfhosted.org>
2019-09-10 15:30:58vstinnerlinkissue38084 messages
2019-09-10 15:30:58vstinnercreate