[New-bugs-announce] [issue44584] Deprecate thread debugging PYTHONTHREADDEBUG=1
STINNER Victor
report at bugs.python.org
Thu Jul 8 05:23:09 EDT 2021
New submission from STINNER Victor <vstinner at python.org>:
Copy of my email to python-dev:
https://mail.python.org/archives/list/python-dev@python.org/thread/NMLGCDRUKLZSTK4UICJTKR54WRXU2ZGJ/
Hi,
Does anyone use threading debug PYTHONTHREADDEBUG=1 env var on a
Python debug build? If not, can I just remove it?
--
To fix a race condition at thread exit on Linux using the glibc, I
removed calls to pthread_exit() (PyThread_exit_thread()) in the
_thread module:
https://bugs.python.org/issue44434
A side effect of this change is the removal of the
"PyThread_exit_thread called" threading debug log when using
PYTHONTHREADDEBUG=1 environment variable.
I never used PYTHONTHREADDEBUG. I just tried it and it produces tons
of output in stdout about locks. It looks basically useless because it
produces way too many logs, and it pollutes stdout (ex: most Python
tests fail when it's enabled).
This debug mode requires to build Python in debug mode (./configure
--with-pydebug):
https://docs.python.org/dev/using/configure.html#python-debug-build
IMO there are enough external debugging tools to debug threading
issues. Python no longer has to come with its built-in logs.
I propose to deprecate the feature in Python 3.11 and remove it in 2
releases (Python 3.13).
Victor
----------
components: Interpreter Core
messages: 397130
nosy: vstinner
priority: normal
severity: normal
status: open
title: Deprecate thread debugging PYTHONTHREADDEBUG=1
versions: Python 3.11
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue44584>
_______________________________________
More information about the New-bugs-announce
mailing list