classification
Title: Sporadic failure in test_dump_tracebacks_later_file (test_faulthandler)
Type: behavior Stage: needs patch
Components: Tests Versions: Python 3.3
process
Status: closed Resolution: out of date
Dependencies: Superseder:
Assigned To: vstinner Nosy List: ezio.melotti, lukasz.langa, vstinner
Priority: normal Keywords:

Created on 2012-09-19 03:47 by ezio.melotti, last changed 2014-03-25 11:36 by vstinner. This issue is now closed.

Messages (3)
msg170700 - (view) Author: Ezio Melotti (ezio.melotti) * (Python committer) Date: 2012-09-19 03:47
Seen on http://buildbot.python.org/all/builders/AMD64%20Lion%203.x/builds/428/steps/test/logs/stdio

======================================================================
FAIL: test_dump_tracebacks_later_file (test.test_faulthandler.FaultHandlerTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/ambv/Buildbot/3.x.langa-lion/build/Lib/test/test_faulthandler.py", line 490, in test_dump_tracebacks_later_file
    self.check_dump_tracebacks_later(file=True)
  File "/Users/ambv/Buildbot/3.x.langa-lion/build/Lib/test/test_faulthandler.py", line 476, in check_dump_tracebacks_later
    filename, loops)
  File "/Users/ambv/Buildbot/3.x.langa-lion/build/Lib/test/test_faulthandler.py", line 460, in _check_dump_tracebacks_later
    self.assertRegex(trace, regex)
AssertionError: Regex didn't match: '^Timeout \\(0:00:00.500000\\)!\\nThread 0x[0-9a-f]+:\\n  File "<string>", line 9 in func\n  File "<string>", line 20 in <module>$' not found in 'Timeout (0:00:00.500000)!\nThread 0x00007fff77d85960:\n  File "<string>", line 10 in func\n  File "<string>", line 20 in <module>'

----------------------------------------------------------------------
Ran 30 tests in 126.504s

The regex expects the failure to be at "line 9 in func", but the failure happens at "line 10".
msg170722 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2012-09-19 12:08
Code of the failing test:
----
import faulthandler
import time

def func(timeout, repeat, cancel, file, loops):
    for loop in range(loops):
        faulthandler.dump_tracebacks_later(timeout, repeat=repeat, file=file)
        if cancel:
            faulthandler.cancel_dump_tracebacks_later()
        time.sleep(timeout * 5)  # line 9
        faulthandler.cancel_dump_tracebacks_later()   # line 10

timeout = {timeout}
repeat = {repeat}
cancel = {cancel}
loops = {loops}
if {has_filename}:
    file = open({filename}, "wb")
else:
    file = None
func(timeout, repeat, cancel, file, loops)
if file is not None:
    file.close()
----
If the test fails at line 10: it means that it failed to dump the
traceback in 2.5 seconds, whereas the traceback must be dumped after a
timeout of 0.5 second.

Do you know if the system load of this particular buildbot is high? It
would be nice to have the system load in the output of the buildbot.

We might change the timeout, but it is already long.
msg214813 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2014-03-25 11:36
I didn't see this error recently.
History
Date User Action Args
2014-03-25 11:36:55vstinnersetstatus: open -> closed
resolution: out of date
messages: + msg214813
2012-12-28 00:17:06ezio.melottilinkissue16797 superseder
2012-09-19 12:08:29vstinnersetmessages: + msg170722
2012-09-19 03:47:45ezio.melotticreate