From 60f26691f5aeff555f27c62aee11efb07e20ecdc Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Mon, 12 Oct 2015 23:37:02 +0200 Subject: [PATCH] Issue #25277: Use a longer sleep in test_eintr to reduce the risk of race condition in test_eintr. --- Lib/test/eintrdata/eintr_tester.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Lib/test/eintrdata/eintr_tester.py b/Lib/test/eintrdata/eintr_tester.py index e1e0d91006f..e3c36f9ce36 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()