From: Victor Stinner Date: Mon, 12 Oct 2015 21:37:02 +0000 (+0200) Subject: Issue #25277: Use a longer sleep in test_eintr to reduce the risk of race X-Git-Tag: v3.5.1rc1~165 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=60f26691f5aeff555f27c62aee11efb07e20ecdc;p=python Issue #25277: Use a longer sleep in test_eintr to reduce the risk of race condition in test_eintr. --- diff --git a/Lib/test/eintrdata/eintr_tester.py b/Lib/test/eintrdata/eintr_tester.py index e1e0d91006..e3c36f9ce3 100644 --- a/Lib/test/eintrdata/eintr_tester.py +++ b/Lib/test/eintrdata/eintr_tester.py @@ -59,11 +59,6 @@ class EINTRBaseTest(unittest.TestCase): cls.stop_alarm() signal.signal(signal.SIGALRM, cls.orig_handler) - @classmethod - def _sleep(cls): - # default sleep time - time.sleep(cls.sleep_time) - def subprocess(self, *args, **kw): cmd_args = (sys.executable, '-c') + args return subprocess.Popen(cmd_args, **kw) @@ -375,6 +370,11 @@ class SignalEINTRTest(EINTRBaseTest): @unittest.skipUnless(hasattr(signal, 'sigwaitinfo'), 'need signal.sigwaitinfo()') def test_sigwaitinfo(self): + # Issue #25277: The sleep is a weak synchronization between the parent + # and the child process. If the sleep is too low, the test hangs on + # slow or highly loaded systems. + self.sleep_time = 2.0 + signum = signal.SIGUSR1 pid = os.getpid()