New submission from Grzegorz Grzywacz:

multiprocessing.Queue is running background thread feeder. Feeder serialize and 
sends buffered data to pipe. 

The issue is with exception handling, feeder is catching all exceptions but out 
of main loop, so after exception is handled feeder is not going back to loop - 
thread finish. If feeder thread is not running any Queue.put will execute 
without exceptions but message not gonna be delivered.

Solution is to move exception handling inside main loop. I will provide PR.

I have run performance tests (found: #17025) and submitted patch do not affect 
performance.

----------
components: Library (Lib)
messages: 294044
nosy: grzgrzgrz3
priority: normal
severity: normal
status: open
title: multiprocesing.Queue silently ignore messages after exc in _feeder
versions: Python 2.7, Python 3.5, Python 3.6, Python 3.7

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

Reply via email to