diff options
author | Victor Stinner <vstinner@redhat.com> | 2018-07-03 11:20:35 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-07-03 11:20:35 (GMT) |
commit | 23401fb960bb94e6ea62d2999527968d53d3fc65 (patch) | |
tree | 5e5b32a8c8219beea59701de9e80a7278162e972 | |
parent | d824ca7f4df9b5f77cf02490b0e98c2408e21fee (diff) | |
download | cpython-23401fb960bb94e6ea62d2999527968d53d3fc65.zip cpython-23401fb960bb94e6ea62d2999527968d53d3fc65.tar.gz cpython-23401fb960bb94e6ea62d2999527968d53d3fc65.tar.bz2 |
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()
-rw-r--r-- | Lib/test/_test_multiprocessing.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py index 2be40c1..4c5da2f 100644 --- a/Lib/test/_test_multiprocessing.py +++ b/Lib/test/_test_multiprocessing.py @@ -2351,10 +2351,10 @@ class _TestPool(BaseTestCase): self.assertRaises(SayWhenError, it.__next__) def test_imap_unordered(self): - it = self.pool.imap_unordered(sqr, list(range(1000))) - self.assertEqual(sorted(it), list(map(sqr, list(range(1000))))) + it = self.pool.imap_unordered(sqr, list(range(10))) + self.assertEqual(sorted(it), list(map(sqr, list(range(10))))) - it = self.pool.imap_unordered(sqr, list(range(1000)), chunksize=53) + it = self.pool.imap_unordered(sqr, list(range(1000)), chunksize=100) self.assertEqual(sorted(it), list(map(sqr, list(range(1000))))) def test_imap_unordered_handle_iterable_exception(self): |