Commit 53fafafa authored by Victor Stinner's avatar Victor Stinner Committed by GitHub

bpo-33735: Fix test_multiprocessing random failure (GH-8059) (GH-8061)

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 23401fb9)
parent 9b84cc87
......@@ -1260,10 +1260,10 @@ class _TestPool(BaseTestCase):
self.assertRaises(SayWhenError, it.next)
def test_imap_unordered(self):
it = self.pool.imap_unordered(sqr, range(1000))
self.assertEqual(sorted(it), map(sqr, range(1000)))
it = self.pool.imap_unordered(sqr, range(100))
self.assertEqual(sorted(it), map(sqr, range(100)))
it = self.pool.imap_unordered(sqr, range(1000), chunksize=53)
it = self.pool.imap_unordered(sqr, range(1000), chunksize=100)
self.assertEqual(sorted(it), map(sqr, range(1000)))
def test_imap_unordered_handle_iterable_exception(self):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment