FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

gh-145685: Stop the world when updating MRO of existing types by colesbury · Pull Request #145707 · python/cpython · GitHub

Repository navigation

gh-145685: Stop the world when updating MRO of existing types - #145707

Merged
colesbury merged 1 commit into
python:mainfrom
colesbury:gh-145685-stw-mro-update
Mar 9, 2026
Merged

colesbury merged 1 commit into
python:mainfrom
colesbury:gh-145685-stw-mro-update

Conversation

colesbury commented Mar 9, 2026 •
edited by bedevere-app Bot
Loading

Copy link
Copy Markdown
Contributor

We already have a stop-the-world pause elsewhere in this code path (type_set_bases) and this makes will make it easier to avoid contention on the TYPE_LOCK when looking up names in the MRO hierarchy.

Also use deferred reference counting for non-immortal MROs.

We already have a stop-the-world pause elsewhere in this code path
(type_set_bases) and this makes will make it easier to avoid contention
on the TYPE_LOCK when looking up names in the MRO hierarchy.

Also use deferred reference counting for non-immortal MROs.
colesbury merged commit 0b65c88 into python:main Mar 9, 2026
58 checks passed
colesbury deleted the gh-145685-stw-mro-update branch March 9, 2026 22:41
colesbury added the needs backport to 3.14 bugs and security fixes label Mar 9, 2026

Copy link
Copy Markdown

Thanks @colesbury for the PR 🌮🎉.. I'm working now to backport this PR to: 3.14.
🐍🍒⛏🤖

Copy link
Copy Markdown

Sorry, @colesbury, I could not cleanly backport this to 3.14 due to a conflict.
Please backport using cherry_picker on command line.

cherry_picker 0b65c88c2af6e09530a9aa21800771aa687371db 3.14

colesbury added a commit to colesbury/cpython that referenced this pull request Mar 9, 2026
…types (pythongh-145707)

We already have a stop-the-world pause elsewhere in this code path
(type_set_bases) and this makes will make it easier to avoid contention
on the TYPE_LOCK when looking up names in the MRO hierarchy.

Also use deferred reference counting for non-immortal MROs.
(cherry picked from commit 0b65c88)

Co-authored-by: Sam Gross <colesbury@gmail.com>

bedevere-app Bot commented Mar 9, 2026

Copy link
Copy Markdown

GH-145715 is a backport of this pull request to the 3.14 branch.

bedevere-app Bot removed the needs backport to 3.14 bugs and security fixes label Mar 9, 2026
colesbury added a commit that referenced this pull request Mar 10, 2026
…h-145707) (#145715)

We already have a stop-the-world pause elsewhere in this code path
(type_set_bases) and this makes will make it easier to avoid contention
on the TYPE_LOCK when looking up names in the MRO hierarchy.

Also use deferred reference counting for non-immortal MROs.
(cherry picked from commit 0b65c88)
ljfp pushed a commit to ljfp/cpython that referenced this pull request Apr 25, 2026
…ythongh-145707)

We already have a stop-the-world pause elsewhere in this code path
(type_set_bases) and this makes will make it easier to avoid contention
on the TYPE_LOCK when looking up names in the MRO hierarchy.

Also use deferred reference counting for non-immortal MROs.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
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.

2 participants


Back | FazBrowse Home | New Git URL