Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

gh-139462: Make the ProcessPoolExecutor BrokenProcessPool exception report which child process terminated#139486

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
gpshead merged 10 commits intopython:mainfromjberg5:jb-139462
Nov 11, 2025

Conversation

@jberg5
Copy link
Contributor

@jberg5jberg5 commentedOct 1, 2025
edited by bedevere-appbot
Loading

See#139462 for more context.

Short summary: prior to this change, if a child process segfaulted when running in a concurrent.futures.ProcessPoolExecutor, the user would get a BrokenProcessPool exception with no information about which child process terminated or why.

In order to improve the debugging experience, this change attempts to report which child process terminated and with what exit code. For instance, if I have a worker process that segfaults, I'll now see something like:

Lib.concurrent.futures.process._RemoteTraceback: Process 48939 terminated abruptly with exit code -11The above exception was the direct cause of the following exception:Traceback (most recent call last):...Lib.concurrent.futures.process.BrokenProcessPool: A process in the process pool was terminated abruptly while the future was running or pending.

@bedevere-app
Copy link

Most changes to Pythonrequire a NEWS entry. Add one using theblurb_it web app or theblurb command-line tool.

If this change has little impact on Python users, wait for a maintainer to apply theskip news label instead.

@python-cla-bot
Copy link

python-cla-botbot commentedOct 1, 2025
edited
Loading

All commit authors signed the Contributor License Agreement.

CLA signed

Copy link
Member

@ZeroIntensityZeroIntensity left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

Per the bot, please add a news entry, and please also update the "What's New in Python 3.15" document.

@bedevere-app
Copy link

Most changes to Pythonrequire a NEWS entry. Add one using theblurb_it web app or theblurb command-line tool.

If this change has little impact on Python users, wait for a maintainer to apply theskip news label instead.

Copy link
Member

@ZeroIntensityZeroIntensity left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

Just down to docs nitpicks for me. The rest looks good.

jberg5 reacted with hooray emoji
@jberg5
Copy link
ContributorAuthor

There was a fun issue where the precommit merge conflict checker thought that a perfectly legitimate string was a problem:

check for merge conflicts................................................FailedDoc/whatsnew/3.15.rst:680: Merge conflict string '=======' found

I removed one of the= and it was happy again :) (and then added it back after)

@jberg5
Copy link
ContributorAuthor

Thanks@ZeroIntensity, appreciate all the feedback!

Copy link
Member

@ZeroIntensityZeroIntensity left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others.Learn more.

Thanks, this looks good to me. I'll wait for@gpshead as the multiprocessing expert to decide on the weird triple-quotes in the message.

gpshead reacted with thumbs up emojijberg5 reacted with heart emoji
@ZeroIntensity
Copy link
Member

Hmm, something seems to be causing the tests to hang.

@jberg5
Copy link
ContributorAuthor

Hi@ZeroIntensity and@gpshead! Tests are passing, let me know if there are any other changes you'd like me to make, or if this is good to go.

@jberg5jberg5 requested a review fromgpsheadOctober 8, 2025 20:22
@jberg5
Copy link
ContributorAuthor

@AA-Turner@ZeroIntensity@gpshead thanks for all the feedback thus far! Let me know if there's anything else you'd like me to change here.

@gpsheadgpsheadenabled auto-merge (squash)November 11, 2025 21:49
@gpsheadgpshead merged commit9e7340c intopython:mainNov 11, 2025
46 checks passed
@jberg5jberg5 deleted the jb-139462 branchNovember 11, 2025 22:11
StanFromIreland pushed a commit to StanFromIreland/cpython that referenced this pull requestDec 6, 2025
…tion report which child process terminated (pythonGH-139486)Report which process terminated as cause of BPE
Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

@ZeroIntensityZeroIntensityZeroIntensity approved these changes

@AA-TurnerAA-TurnerAwaiting requested review from AA-TurnerAA-Turner is a code owner

@gpsheadgpsheadAwaiting requested review from gpshead

+1 more reviewer

@YvesDupYvesDupYvesDup left review comments

Reviewers whose approvals may not affect merge requirements

Assignees

@gpsheadgpshead

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

4 participants

@jberg5@ZeroIntensity@gpshead@YvesDup

[8]ページ先頭

©2009-2025 Movatter.jp