[3.13] gh-132969: Fix error/hang when shutdown(wait=False) and task exited abnormally (GH-133222) by miss-islington · Pull Request #135343 · python/cpython · GitHub
Skip to content

[3.13] gh-132969: Fix error/hang when shutdown(wait=False) and task exited abnormally (GH-133222) - #135343

Merged
encukou merged 1 commit into
python:3.13from
miss-islington:backport-598aa7c-3.13
Jun 16, 2025
Merged

encukou merged 1 commit into
python:3.13from
miss-islington:backport-598aa7c-3.13

Conversation

@miss-islington

@miss-islington miss-islington commented Jun 10, 2025

Copy link
Copy Markdown
Contributor

When shutdown is called with wait=False, the executor thread keeps running
even after the ProcessPoolExecutor's state is reset. The executor then tries
to replenish the worker processes pool resulting in an error and a potential hang
when it comes across a worker that has died. Fixed the issue by having
_adjust_process_count() return without doing anything if the ProcessPoolExecutor's
state has been reset.

Added unit tests to validate two scenarios:
max_workers < num_tasks (exception)
max_workers > num_tasks (exception + hang)
(cherry picked from commit 598aa7c)

Co-authored-by: Ajay Kamdar 140011370+ogbiggles@users.noreply.github.com

…ited abnormally (pythonGH-133222)

When shutdown is called with wait=False, the executor thread keeps running
even after the ProcessPoolExecutor's state is reset. The executor then tries
to replenish the worker processes pool resulting in an error and a potential hang
when it comes across a worker that has died. Fixed the issue by having
_adjust_process_count() return without doing anything if the ProcessPoolExecutor's
state has been reset.

Added unit tests to validate two scenarios:
max_workers < num_tasks (exception)
max_workers > num_tasks (exception + hang)
(cherry picked from commit 598aa7c)

Co-authored-by: Ajay Kamdar <140011370+ogbiggles@users.noreply.github.com>
@bedevere-bot

Copy link
Copy Markdown

@bedevere-bot bedevere-bot removed the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Jun 11, 2025
@encukou

encukou commented Jun 16, 2025

Copy link
Copy Markdown
Member

@encukou
encukou merged commit 404e8aa into python:3.13 Jun 16, 2025
@miss-islington
miss-islington deleted the backport-598aa7c-3.13 branch January 2, 2026 17:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants