STINNER Victor <[email protected]> added the comment:
This issue isn't a real memory leak: if I use -R 3:10 instead of -R 3:3, the
test doesn't fail anymore.
But the issue is still annoying since it makes Refleaks buildbot workers fail
randomly :-/
This issue remembers me the unstable multiprocessing tests:
* bpo-33735: test_multiprocessing_spawn leaked [1, 2, 1] memory blocks on AMD64
Windows8.1 Refleaks 3.7
* bpo-33984: test_multiprocessing_forkserver leaked [1, 2, 1] memory blocks on
x86 Gentoo Refleaks 3.x
Patch to always display memory allocations differences:
diff --git a/Lib/test/libregrtest/refleak.py b/Lib/test/libregrtest/refleak.py
index d68ea63b5b..997be819fa 100644
--- a/Lib/test/libregrtest/refleak.py
+++ b/Lib/test/libregrtest/refleak.py
@@ -118,6 +118,8 @@ def dash_R(the_module, test, indirect_test, huntrleaks):
print(msg, file=refrep)
refrep.flush()
failed = True
+ if not failed:
+ print(alloc_deltas[nwarmup:])
return failed
Truncated output with the patch:
vstinner@apu$ ./python -m test -F -r -j1 -R 3:10 test_functools
Using random seed 4308771
Run tests in parallel using 1 child processes
0:00:04 load avg: 0.91 [ 1] test_functools passed
[0, 1, 2, 0, 0, 0, 0, 0, 0, 0]
...
0:00:13 load avg: 0.92 [ 3] test_functools passed
[2, 1, 0, 0, 0, 0, 0, 0, 0, 0]
...
0:00:17 load avg: 0.93 [ 4] test_functools passed
[0, 3, 0, 0, 0, 0, 0, 0, 0, 0]
...
0:00:21 load avg: 0.93 [ 5] test_functools passed
[0, 1, 0, 0, 2, 0, 0, 0, 0, 0]
...
0:00:26 load avg: 0.93 [ 6] test_functools passed
[0, 4, 0, 0, 0, 0, 0, 0, 0, 0]
...
0:00:34 load avg: 0.87 [ 8] test_functools passed
[0, 1, 0, 2, 0, 0, 0, 0, 0, 0]
...
0:01:06 load avg: 1.15 [ 15] test_functools passed
[0, 1, 0, 2, 0, -1, 1, 0, 0, 0]
...
0:01:10 load avg: 1.46 [ 16] test_functools passed
[0, 4, 0, 0, 0, 0, 0, 0, -1, 1]
...
The maximum sum() of these list is around 5 on 10 runs: not every run leaks a
memory block. It looks more like a internal cache which is "unstable" if you
look at the number of allocated memory blocks.
----------
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue36560>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com