https://github.com/python/cpython/commit/08f98f4576f95f9ae1a4423d151fce053416f39f
commit: 08f98f4576f95f9ae1a4423d151fce053416f39f
branch: main
author: Peter Bierma <[email protected]>
committer: encukou <[email protected]>
date: 2024-11-15T14:03:46+01:00
summary:
Fix intermittent failures for the `PyUnstable_Object_EnableDeferredRefcount`
tests (GH-126849)
Hotfix for the PyUnstable_Object_EnableDeferredRefcount tests.
files:
M Lib/test/test_capi/test_object.py
diff --git a/Lib/test/test_capi/test_object.py
b/Lib/test/test_capi/test_object.py
index a38b203ed12fa2..b0d39937fd865f 100644
--- a/Lib/test/test_capi/test_object.py
+++ b/Lib/test/test_capi/test_object.py
@@ -134,6 +134,7 @@ def test_ClearWeakRefsNoCallbacks_no_weakref_support(self):
_testcapi.pyobject_clear_weakrefs_no_callbacks(obj)
+@threading_helper.requires_working_threading()
class EnableDeferredRefcountingTest(unittest.TestCase):
"""Test PyUnstable_Object_EnableDeferredRefcount"""
@support.requires_resource("cpu")
@@ -158,21 +159,13 @@ def silly_func(obj):
silly_list = [1, 2, 3]
threads = [
- Thread(target=silly_func, args=(silly_list,)) for _ in range(5)
+ Thread(target=silly_func, args=(silly_list,)) for _ in range(4)
]
- with threading_helper.catch_threading_exception() as cm:
- for t in threads:
- t.start()
-
+ with threading_helper.start_threads(threads):
for i in range(10):
silly_list.append(i)
- for t in threads:
- t.join()
-
- self.assertIsNone(cm.exc_value)
-
if support.Py_GIL_DISABLED:
self.assertTrue(_testinternalcapi.has_deferred_refcount(silly_list))
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]