Skip to content

[3.13] gh-149590: Remove faulthandler_traverse (GH-150023)#150087

Merged
JelleZijlstra merged 1 commit into
python:3.13from
armaan-v924:backport-5673748-3.13
May 19, 2026
Merged

[3.13] gh-149590: Remove faulthandler_traverse (GH-150023)#150087
JelleZijlstra merged 1 commit into
python:3.13from
armaan-v924:backport-5673748-3.13

Conversation

@armaan-v924
Copy link
Copy Markdown
Contributor

@armaan-v924 armaan-v924 commented May 19, 2026

faulthandler_traverse visits Python objects owned by _PyRuntime, not by the module instance. With multi-phase init allowing multiple module instances, each instance's GC traversal decrements gc_refs on the same runtime-owned objects, driving it negative when two instances are collected simultaneously.
(cherry picked from commit 5673748)

`faulthandler_traverse` visits Python objects owned by `_PyRuntime`, not
by the module instance. With multi-phase init allowing multiple module
instances, each instance's GC traversal decrements `gc_refs` on the same
runtime-owned objects, driving it negative when two instances are
collected simultaneously.
(cherry picked from commit 5673748)

Co-authored-by: Armaan Vakharia <43391096+armaan-v924@users.noreply.github.com>
@JelleZijlstra
Copy link
Copy Markdown
Member

The CI failure looks like a flake.

@JelleZijlstra JelleZijlstra merged commit 44f3149 into python:3.13 May 19, 2026
42 of 43 checks passed
@armaan-v924 armaan-v924 deleted the backport-5673748-3.13 branch May 19, 2026 15:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants