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_multiprocessing_forkserver leaks references on Python 3 #74958
changed the title [-][3.6] test_multiprocessing_forkserver leaks references on Python 3.6[/-][+]test_multiprocessing_forkserver leaks references on Python 3[/+]on Jun 26, 2017
New changeset f15bf1f by Victor Stinner (Antoine Pitrou) in branch '3.5':
[3.5] bpo-30775: Fix refleaks in test_multiprocessing (GH-2467) (bpo-2469) f15bf1f
New changeset 79d37ae by Victor Stinner (Antoine Pitrou) in branch 'master':
Clear potential ref cycle between Process and Process target (bpo-2470) 79d37ae
New changeset 38d6a40 by Antoine Pitrou in branch '3.6':
[3.6] Clear potential ref cycle between Process and Process target (GH-2470) (bpo-2471) 38d6a40
New changeset a9705b7 by Antoine Pitrou in branch '3.5':
[3.5] Clear potential ref cycle between Process and Process target (GH-2470) (bpo-2472) a9705b7
New changeset 12536bd by Victor Stinner (Antoine Pitrou) in branch '2.7':
[2.7] Clear potential ref cycle between Process and Process target (GH-2470) (bpo-2473) 12536bd
Activity
vstinner commentedon Jun 26, 2017
$ ./python -m test --match=test.test_multiprocessing_forkserver.WithProcessesTestBarrier.test_barrier --match=test.test_multiprocessing_forkserver.WithProcessesTestFinalize.test_finalize -R 3:3 test_multiprocessing_forkservertest_multiprocessing_forkserver leaked [222, 222, 225] memory blocks, sum=669
test_multiprocessing_forkserver failed
Total duration: 5 sec
Tests result: FAILURE
[-][3.6] test_multiprocessing_forkserver leaks references on Python 3.6[/-][+]test_multiprocessing_forkserver leaks references on Python 3[/+]vstinner commentedon Jun 26, 2017
test_multiprocessing_spawn doesn't leak:
haypo@selma$ ./python -m test --match=test.test_multiprocessing_spawn.WithProcessesTestBarrier.test_barrier --match=test.test_multiprocessing_spawn.WithProcessesTestFinalize.test_finalize -R 3:3 test_multiprocessing_spawn
Run tests sequentially
0:00:00 load avg: 0.11 [1/1] test_multiprocessing_spawn
beginning 6 repetitions
123456
......
1 test OK.
Total duration: 10 sec
Tests result: SUCCESS
vstinner commentedon Jun 26, 2017
The first message was on Python 3.6. On master, regrtest sees even more kinds of leaks: references, memory blocks and file descriptors.
haypo@selma$ ./python -m test --match=test.test_multiprocessing_forkserver.WithProcessesTestBarrier.test_barrier --match=test.test_multiprocessing_forkserver.WithProcessesTestFinalize.test_finalize -R 3:3 test_multiprocessing_forkserver
Run tests sequentially
0:00:00 load avg: 0.25 [1/1] test_multiprocessing_forkserver
beginning 6 repetitions
123456
......
test_multiprocessing_forkserver leaked [492, 492, 492] references, sum=1476
test_multiprocessing_forkserver leaked [221, 222, 225] memory blocks, sum=668
test_multiprocessing_forkserver leaked [4, 4, 4] file descriptors, sum=12
test_multiprocessing_forkserver failed
1 test failed:
test_multiprocessing_forkserver
Total duration: 5 sec
Tests result: FAILURE
pitrou commentedon Jun 26, 2017
Is it test_finalize or test_barrier?
vstinner commentedon Jun 26, 2017
Try yourself: it only leaks when you run both :-)
vstinner commentedon Jun 28, 2017
New changeset a79f8fa by Victor Stinner (Antoine Pitrou) in branch 'master':
bpo-30775: Fix refleaks in test_multiprocessing (bpo-2467)
a79f8fa
vstinner commentedon Jun 28, 2017
Hey, thank you Antoine for fixing the last known reference leak!
pitrou commentedon Jun 28, 2017
New changeset e022aad by Antoine Pitrou in branch '3.6':
[3.6] bpo-30775: Fix refleaks in test_multiprocessing (GH-2467) (bpo-2468)
e022aad
vstinner commentedon Jun 28, 2017
New changeset f15bf1f by Victor Stinner (Antoine Pitrou) in branch '3.5':
[3.5] bpo-30775: Fix refleaks in test_multiprocessing (GH-2467) (bpo-2469)
f15bf1f
vstinner commentedon Jun 28, 2017
New changeset 79d37ae by Victor Stinner (Antoine Pitrou) in branch 'master':
Clear potential ref cycle between Process and Process target (bpo-2470)
79d37ae
pitrou commentedon Jun 28, 2017
New changeset 38d6a40 by Antoine Pitrou in branch '3.6':
[3.6] Clear potential ref cycle between Process and Process target (GH-2470) (bpo-2471)
38d6a40
pitrou commentedon Jun 28, 2017
New changeset a9705b7 by Antoine Pitrou in branch '3.5':
[3.5] Clear potential ref cycle between Process and Process target (GH-2470) (bpo-2472)
a9705b7
vstinner commentedon Jun 28, 2017
New changeset 12536bd by Victor Stinner (Antoine Pitrou) in branch '2.7':
[2.7] Clear potential ref cycle between Process and Process target (GH-2470) (bpo-2473)
12536bd
vstinner commentedon Sep 15, 2017
The Python 2.7 change caused a regression in Sphinx: bpo-31016.