[multiprocessing] Calling pool.terminate() from an error_callback causes deadlock
未關閉
還沒有人認領這個 Issue。
3.7 (EOL)
stdlib
topic-multiprocessing
type-bug
- 主要語言
- Python
- 星號
- 77.2k
- 分支
- 36k
- 平均合併
- 1 天 9 小時
- 30 天內合併 PR
- 558
描述
| BPO | 42963 |
|---|---|
| Nosy | @sjelin |
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
assignee = None
closed_at = None
created_at = <Date 2021-01-19.01:08:51.183>
labels = ['3.7', 'type-bug', 'library']
title = '[multiprocessing] Calling pool.terminate() from an error_callback causes deadlock'
updated_at = <Date 2021-01-19.01:10:42.325>
user = 'https://github.com/sjelin'
bugs.python.org fields:
activity = <Date 2021-01-19.01:10:42.325>
actor = 'sjelin'
assignee = 'none'
closed = False
closed_date = None
closer = None
components = ['Library (Lib)']
creation = <Date 2021-01-19.01:08:51.183>
creator = 'sjelin'
dependencies = []
files = []
hgrepos = []
issue_num = 42963
keywords = []
message_count = 1.0
messages = ['385240']
nosy_count = 1.0
nosy_names = ['sjelin']
pr_nums = []
priority = 'normal'
resolution = None
stage = None
status = 'open'
superseder = None
type = 'behavior'
url = 'https://bugs.python.org/issue42963'
versions = ['Python 3.6', 'Python 3.7']
貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
研究方向
先閱讀 multiprocessing Pool 在 terminate() 和 error_callback 附近的行為,然後重現 issue 標題中描述的 deadlock。payload 沒有指明原始檔或測試,因此定位相關實作和回歸測試入口需要研究 repository。完成標準是:從 error_callback 呼叫 pool.terminate() 不再發生 deadlock。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- python
- 領域
- backend, operating-systems
- Issue 類型
- 缺陷
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 停滯
- 描述清晰度
- 需要釐清
- 新手友好度
- 25/100