Skip to content

Commit 42b2f84

Browse files
bpo-33735: Fix test_multiprocessing random failure (GH-8059)
When hunting memory leaks using -R 3:3, test_imap_unordered() of test_multiprocessing leaks randomly a few memory blocks. It is a false alarm: when testing using -R 3:20 for example, no leak is detected. Modify test_imap_unordered() to be closer to test_imap(): * Only test 10 numbers instead of 1000: it's a pool of 4 processes, so 10 is enough to test at least one number per process * Use chunksize=100 instead of chunksize=53 to mimick test_imap() (cherry picked from commit 23401fb) Co-authored-by: Victor Stinner <[email protected]>
1 parent 4d02ad8 commit 42b2f84

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

Lib/test/_test_multiprocessing.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2351,10 +2351,10 @@ def test_imap_handle_iterable_exception(self):
23512351
self.assertRaises(SayWhenError, it.__next__)
23522352

23532353
def test_imap_unordered(self):
2354-
it = self.pool.imap_unordered(sqr, list(range(1000)))
2355-
self.assertEqual(sorted(it), list(map(sqr, list(range(1000)))))
2354+
it = self.pool.imap_unordered(sqr, list(range(10)))
2355+
self.assertEqual(sorted(it), list(map(sqr, list(range(10)))))
23562356

2357-
it = self.pool.imap_unordered(sqr, list(range(1000)), chunksize=53)
2357+
it = self.pool.imap_unordered(sqr, list(range(1000)), chunksize=100)
23582358
self.assertEqual(sorted(it), list(map(sqr, list(range(1000)))))
23592359

23602360
def test_imap_unordered_handle_iterable_exception(self):

0 commit comments

Comments
 (0)