New submission from Anselm Kruis <[email protected]>:
Starting with commit 468e5fec (bpo-36402: Fix threading._shutdown() race
condition (GH-13948)) the following trivial test case leaks one reference and
one memory block.
class MiscTestCase(unittest.TestCase):
def test_without_join(self):
# Test that a thread without join does not leak references.
# Use a debug build and run "python -m test -R: test_threading"
threading.Thread().start()
Attached is a patch, that adds this test case to Lib/test/test_threading.py.
After you apply this patch "python -m test -R: test_threading" leaks one
(additional) reference. This leak is also present in Python 3.7.4 and 3.8.
I'm not sure, if it correct not to join a thread, but it did work flawlessly
and didn't leak in previous releases.
I didn't analyse the root cause yet.
----------
components: Library (Lib)
files: threading-leak-test-case.diff
keywords: patch
messages: 349173
nosy: anselm.kruis
priority: normal
severity: normal
status: open
title: fix for bpo-36402 (threading._shutdown() race condition) causes
reference leak
type: resource usage
versions: Python 3.7, Python 3.8, Python 3.9
Added file: https://bugs.python.org/file48534/threading-leak-test-case.diff
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue37788>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com