Issue 30006: Deadlocks in concurrent.futures.ProcessPoolExecutor (original) (raw)

Issue30006

Created on 2017-04-06 12:41 by tomMoral, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 1013 closed tomMoral,2017-04-06 12:41
Messages (4)
msg291224 - (view) Author: Thomas Moreau (tomMoral) * Date: 2017-04-06 12:41
The design of ProcessPoolExecutor contains some possible race conditions that may freeze the interpreter due to deadlocks. This is notably the case with pickling and unpickling errors for a submitted job and returned results. This makes it hard to reuse a launched executor. We propose in the joint PR to fix some of those situations to make the ProcessPoolExecutor more robust to failure in the different threads and worker.
msg341898 - (view) Author: Brian Quinlan (bquinlan) * (Python committer) Date: 2019-05-08 16:03
Was this fixed by https://github.com/python/cpython/pull/3895 ?
msg343960 - (view) Author: Thomas Moreau (tomMoral) * Date: 2019-05-30 09:41
The deadlocks I refer to in this issue are fixed by the PR #3895. Subsequent failures (like the fact that the Executor is set in a broken state when there is an unpickling error) are tracked in other issues so I think it is safe to close this one.
msg343973 - (view) Author: Antoine Pitrou (pitrou) * (Python committer) Date: 2019-05-30 12:33
Ok, closing as duplicate then.
History
Date User Action Args
2022-04-11 14:58:45 admin set github: 74192
2019-05-30 12:33:22 pitrou set status: open -> closedresolution: duplicatemessages: + superseder: Deadlocks in `concurrent.futures.ProcessPoolExecutor` with pickling errorstage: patch review -> resolved
2019-05-30 09:41:34 tomMoral set messages: +
2019-05-08 16:03:43 bquinlan set messages: +
2017-10-23 17:03:01 berker.peksag link issue30549 superseder
2017-04-08 11:57:53 pitrou set nosy: + bquinlan, pitrou, davinstage: patch review
2017-04-06 12:41:11 tomMoral create