summaryrefslogtreecommitdiff
path: root/Lib/test/test_multiprocessing.py
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2011-04-05 18:12:15 +0200
committerAntoine Pitrou <solipsis@pitrou.net>2011-04-05 18:12:15 +0200
commit04026cf56c32e89e4af4da6ac6068c6e5dd3c098 (patch)
tree87eca488de17c5da00758a99e059e37543451946 /Lib/test/test_multiprocessing.py
parent02ba73c0ef4e5b6822b585e99f3bd520e83a1c2e (diff)
parentc824e9a713efac8d14e4d697f8c01a52c8f0d42c (diff)
downloadcpython-git-04026cf56c32e89e4af4da6ac6068c6e5dd3c098.tar.gz
Try to fix sporadic test_multiprocessing failure
Diffstat (limited to 'Lib/test/test_multiprocessing.py')
-rw-r--r--Lib/test/test_multiprocessing.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/Lib/test/test_multiprocessing.py b/Lib/test/test_multiprocessing.py
index 4e48944f70..ca20396616 100644
--- a/Lib/test/test_multiprocessing.py
+++ b/Lib/test/test_multiprocessing.py
@@ -11,6 +11,7 @@ import io
import sys
import os
import gc
+import errno
import signal
import array
import socket
@@ -1359,7 +1360,16 @@ class _TestManagerRestart(BaseTestCase):
manager.shutdown()
manager = QueueManager(
address=addr, authkey=authkey, serializer=SERIALIZER)
- manager.start()
+ try:
+ manager.start()
+ except IOError as e:
+ if e.errno != errno.EADDRINUSE:
+ raise
+ # Retry after some time, in case the old socket was lingering
+ # (sporadic failure on buildbots)
+ time.sleep(1.0)
+ manager = QueueManager(
+ address=addr, authkey=authkey, serializer=SERIALIZER)
manager.shutdown()
#