Skip to content

Python 3.14.0a5 i686 Linux freethreading-debug build fails: gc_free_threading.c:1077: mark_heap_visitor: Assertion "gc_get_refs(op) >= 0" failed: refcount is too small #130030

@befeleme

Description

@befeleme

Bug report

Bug description:

I try to build freethreading-debug Python 3.14.0a5 for i686 Fedora Linux with a consistent failure: /builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Python/gc_free_threading.c:1077: mark_heap_visitor: Assertion "gc_get_refs(op) >= 0" failed: refcount is too small. This happens when freezing importlib._bootstrap_external, zipimport, importlib._bootstrap.
The bigger log excerpt:

./Programs/_freeze_module getpath /builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Modules/getpath.py Python/frozen_modules/getpath.h
./Programs/_freeze_module importlib._bootstrap_external /builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/importlib/_bootstrap_external.py Python/frozen_modules/importlib._bootstrap_external.h
/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Python/gc_free_threading.c:1077: mark_heap_visitor: Assertion "gc_get_refs(op) >= 0" failed: refcount is too small
Enable tracemalloc to get the memory block allocation traceback
object address  : 0xefc48188
object refcount : 1
object type     : 0x56bef880
object type name: staticmethod
object repr     : <staticmethod(<built-in method maketrans of type object at 0x56be6ac0>)>
Fatal Python error: _PyObject_AssertFailed: _PyObject_AssertFailed
Python runtime state: core initialized
Stack (most recent call first):
  <no Python frame>
make: *** [Makefile:1772: Python/frozen_modules/importlib._bootstrap_external.h] Aborted (core dumped)
make: *** Waiting for unfinished jobs....
./Programs/_freeze_module zipimport /builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/zipimport.py Python/frozen_modules/zipimport.h
/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Python/gc_free_threading.c:1077: mark_heap_visitor: Assertion "gc_get_refs(op) >= 0" failed: refcount is too small
Enable tracemalloc to get the memory block allocation traceback
object address  : 0xefc48188
object refcount : 1
object type     : 0x56be0880
object type name: staticmethod
object repr     : <staticmethod(<built-in method maketrans of type object at 0x56bd7ac0>)>
Fatal Python error: _PyObject_AssertFailed: _PyObject_AssertFailed
Python runtime state: core initialized
Stack (most recent call first):
  <no Python frame>
make: *** [Makefile:1775: Python/frozen_modules/zipimport.h] Aborted (core dumped)
./Programs/_freeze_module importlib._bootstrap /builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Lib/importlib/_bootstrap.py Python/frozen_modules/importlib._bootstrap.h
/builddir/build/BUILD/python3.14-3.14.0_a5-build/Python-3.14.0a5/Python/gc_free_threading.c:1077: mark_heap_visitor: Assertion "gc_get_refs(op) >= 0" failed: refcount is too small
Enable tracemalloc to get the memory block allocation traceback
object address  : 0xefc48188
object refcount : 1
object type     : 0x56bb7880
object type name: staticmethod
object repr     : <staticmethod(<built-in method maketrans of type object at 0x56baeac0>)>
Fatal Python error: _PyObject_AssertFailed: _PyObject_AssertFailed
Python runtime state: core initialized
Stack (most recent call first):
  <no Python frame>
make: *** [Makefile:1769: Python/frozen_modules/importlib._bootstrap.h] Aborted (core dumped)

CPython versions tested on:

3.14

Operating systems tested on:

Linux

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    3.14bugs and security fixesbuildThe build process and cross-buildtopic-free-threadingtype-bugAn unexpected behavior, bug, or error

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions