New submission from Sindri Guðmundsson <sindrigudmunds...@gmail.com>:

Raising an Exception in a callback handler of apply_async and/or map_async will 
kill the _result_handler thread. This causes unexpected behavior as all 
subsequent callbacks won't be called and worse, pool.join will deadlock.

The documentation states that callbacks should return immediately but it does 
not warn the user against raising an exception.

Attached are steps to reproduce.

----------
components: Library (Lib)
files: test_pool_error.py
messages: 359194
nosy: Sindri Guðmundsson
priority: normal
severity: normal
status: open
title: _result_handler dies on raised exceptions [multiprocessing]
type: behavior
versions: Python 2.7, Python 3.5, Python 3.6, Python 3.7, Python 3.8, Python 3.9
Added file: https://bugs.python.org/file48818/test_pool_error.py

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue39190>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to