Crash report
When I run my project with Python 3.12, sometimes on exit I get the error below.
Given the circumstances, it seems almost impossible to construct a minimal example with this. I'd appreciate more information on how to best track the source of this down... See comments below for a simpler reproducer.
If you want to try reproducing as is, getting a --with-pydebug Python 3.12.0b2 and then installing requirements.txt and misc/requirements/requirements-pyqt-6.txt followed by a python3 -m qutebrowser --temp-basedir --debug ":later 2000 quit" should do the trick.
Note that sometimes it segfaults on exit instead, which seems to be a different issue: https://www.riverbankcomputing.com/pipermail/pyqt/2023-June/045331.html
Error messages
./Include/internal/pycore_global_objects_fini_generated.h:15: _PyStaticObject_CheckRefcnt: Assertion failed: immortal object has less refcnt than expected _Py_IMMORTAL_REFCNT
Enable tracemalloc to get the memory block allocation traceback
object address : 0x55e98b6cb508
object refcount : 4294967294
object type : 0x55e98b5cb6c0
object type name: bytes
object repr : b'x'
Fatal Python error: _PyObject_AssertFailed: _PyObject_AssertFailed
Python runtime state: finalizing (tstate=0x000055e98b737490)
Current thread 0x00007fca714f5740 (most recent call first):
<no Python frame>
This is already with -X tracemalloc, I also tried PYTHONTRACEMALLOC=25 instead. It seems I can't get more information about what's happening there. Happy to go dig into this more e.g. via gdb if someone can tell me what to look for.
Your environment
- CPython versions tested on: 3.12.0b2 with
--with-pydebug
- Operating system and architecture: Archlinux, amd64
Linked PRs
Crash report
When I run my project with Python 3.12, sometimes on exit I get the error below.
Given the circumstances, it seems almost impossible to construct a minimal example with this. I'd appreciate more information on how to best track the source of this down...See comments below for a simpler reproducer.If you want to try reproducing as is, getting a
--with-pydebugPython 3.12.0b2 and then installingrequirements.txtandmisc/requirements/requirements-pyqt-6.txtfollowed by apython3 -m qutebrowser --temp-basedir --debug ":later 2000 quit"should do the trick.Note that sometimes it segfaults on exit instead, which seems to be a different issue: https://www.riverbankcomputing.com/pipermail/pyqt/2023-June/045331.html
Error messages
This is already with
-X tracemalloc, I also triedPYTHONTRACEMALLOC=25instead. It seems I can't get more information about what's happening there. Happy to go dig into this more e.g. via gdb if someone can tell me what to look for.Your environment
--with-pydebugLinked PRs
_PyStaticObject_CheckRefcnt#105638_PyStaticObject_CheckRefcnt(GH-105638) #105769