You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
test_pendingcalls_threaded times out on Windows free-threading builds #114746
It started 5 days ago, after #114262 (Implement GC for free-threaded builds) and #114479 (Make threading.Lock a real class, not a factory function), and it looks like it got more frequent after #113412 (Use pointer for interp->obmalloc state). (This is just from looking at the buildbot logs, I haven't bisected.)
Thread 0x00001f80 (most recent call first):
File "C:\Users\Administrator\buildarea\3.x.itamaro-win64-srv-22-aws.x64.nogil\build\Lib\test\test_capi\test_misc.py", line 1344 in pendingcalls_thread
context.event.set()
File "C:\Users\Administrator\buildarea\3.x.itamaro-win64-srv-22-aws.x64.nogil\build\Lib\threading.py", line 1027 in run
...
Thread 0x000032d0 (most recent call first):
File "C:\Users\Administrator\buildarea\3.x.itamaro-win64-srv-22-aws.x64.nogil\build\Lib\test\test_capi\test_misc.py", line 1304 in pendingcalls_wait
a = i*i
File "C:\Users\Administrator\buildarea\3.x.itamaro-win64-srv-22-aws.x64.nogil\build\Lib\test\test_capi\test_misc.py", line 1332 in test_pendingcalls_threaded
self.pendingcalls_wait(context.l, n, context)
...
On my Win10 fresh debug nogil build, test.test_capi paused several minutes on test_trashcan_python_class1 (test.test_capi.test_misc.CAPITest.test_trashcan_python_class1)
I went away to eat and upon return it had finished ok in 14 minutes, which I believe is a few times as long as normal.
@colesbury Is this a high-priority issue for you, or normal behaviour at this stage of the feature?
We might want to increase the timeout, and revisit GC performance later.
Activity
encukou commentedon Jan 30, 2024
I cannot reproduce on my Windows 11 (10.0.22621.3007) VM :(
Faulthandler tracebacks (with source lines added):
terryjreedy commentedon Jan 31, 2024
On my Win10 fresh debug nogil build, test.test_capi paused several minutes on
test_trashcan_python_class1 (test.test_capi.test_misc.CAPITest.test_trashcan_python_class1)I went away to eat and upon return it had finished ok in 14 minutes, which I believe is a few times as long as normal.
encukou commentedon Jan 31, 2024
@colesbury Is this a high-priority issue for you, or normal behaviour at this stage of the feature?
We might want to increase the timeout, and revisit GC performance later.
colesbury commentedon Jan 31, 2024
@encukou I'm planning to put out a PR to fix it today
pythongh-114746: Avoid quadratic behavior in free-threaded GC
gh-114746: Avoid quadratic behavior in free-threaded GC (GH-114817)
colesbury commentedon Feb 1, 2024
The six builds since the PR merged are all green: https://buildbot.python.org/all/#/builders/1241
pythongh-114746: Avoid quadratic behavior in free-threaded GC (python…