summaryrefslogtreecommitdiff
path: root/Lib/test/test_multiprocessing.py
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2011-04-05 18:13:06 +0200
committerAntoine Pitrou <solipsis@pitrou.net>2011-04-05 18:13:06 +0200
commite21a596d51b156745202975524c79f450c6e0e71 (patch)
treeb9266e181447525c942e1fc42741b8c53600172b /Lib/test/test_multiprocessing.py
parent0b9ea93a642d2d11e694b6c469b2419401d59f8d (diff)
parent04026cf56c32e89e4af4da6ac6068c6e5dd3c098 (diff)
downloadcpython-git-e21a596d51b156745202975524c79f450c6e0e71.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 0ddc71ccd8..246d2d5700 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
@@ -1371,7 +1372,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()
#