[Python-checkins] r80240 - in python/branches/py3k: Lib/test/test_signal.py

stefan.krah python-checkins at python.org
Tue Apr 20 10:13:03 CEST 2010


Author: stefan.krah
Date: Tue Apr 20 10:13:03 2010
New Revision: 80240

Log:
Merged revisions 80238 via svnmerge from 
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80238 | stefan.krah | 2010-04-20 09:59:10 +0200 (Tue, 20 Apr 2010) | 9 lines
  
  
  1) The timeout in the itimer tests was too low for slow or heavily
     loaded machines.
  
  2) Even with the increased timeout, the OS does not guarantee that
     a process will get a certain amount of virtual time in 60s, so
     the failure is changed to a diagnostic.
........


Modified:
   python/branches/py3k/   (props changed)
   python/branches/py3k/Lib/test/test_signal.py

Modified: python/branches/py3k/Lib/test/test_signal.py
==============================================================================
--- python/branches/py3k/Lib/test/test_signal.py	(original)
+++ python/branches/py3k/Lib/test/test_signal.py	Tue Apr 20 10:13:03 2010
@@ -361,15 +361,15 @@
         signal.setitimer(self.itimer, 0.3, 0.2)
 
         start_time = time.time()
-        while time.time() - start_time < 5.0:
+        while time.time() - start_time < 60.0:
             # use up some virtual time by doing real work
             _ = pow(12345, 67890, 10000019)
             if signal.getitimer(self.itimer) == (0.0, 0.0):
                 break # sig_vtalrm handler stopped this itimer
-        else:
-            self.fail('timeout waiting for sig_vtalrm signal; '
-                      'signal.getitimer(self.itimer) gives: %s' %
-                       (signal.getitimer(self.itimer),))
+        else: # Issue 8424
+            sys.stdout.write("test_itimer_virtual: timeout: likely cause: "
+                             "machine too slow or load too high.\n")
+            return
 
         # virtual itimer should be (0.0, 0.0) now
         self.assertEquals(signal.getitimer(self.itimer), (0.0, 0.0))
@@ -382,13 +382,15 @@
         signal.setitimer(self.itimer, 0.2, 0.2)
 
         start_time = time.time()
-        while time.time() - start_time < 5.0:
+        while time.time() - start_time < 60.0:
             # do some work
             _ = pow(12345, 67890, 10000019)
             if signal.getitimer(self.itimer) == (0.0, 0.0):
                 break # sig_prof handler stopped this itimer
-        else:
-            self.fail('timeout waiting for sig_prof signal')
+        else: # Issue 8424
+            sys.stdout.write("test_itimer_prof: timeout: likely cause: "
+                             "machine too slow or load too high.\n")
+            return
 
         # profiling itimer should be (0.0, 0.0) now
         self.assertEquals(signal.getitimer(self.itimer), (0.0, 0.0))


More information about the Python-checkins mailing list