[lldb-dev] [Bug 23403] New: Many LLDB-MI tests time out in Ubuntu 14.10 x86_64 VirtualBox VM
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Sun May 3 20:26:19 PDT 2015
https://llvm.org/bugs/show_bug.cgi?id=23403
Bug ID: 23403
Summary: Many LLDB-MI tests time out in Ubuntu 14.10 x86_64
VirtualBox VM
Product: lldb
Version: unspecified
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: All Bugs
Assignee: lldb-dev at cs.uiuc.edu
Reporter: vadim.macagon at gmail.com
Classification: Unclassified
Many of the LLDB-MI tests fail due to time out when I run them from my Ubuntu
14.10 64-bit Virtualbox VM. After a bit of trial and error I realized that if a
test is modified to wait for the "(gdb)" prompt after spawning the LLDB-MI
child process then the test will run to completion. The test in TestMiPrompt.py
is structured in this way and it was the only one I tried that didn't fail out
of the box. This is what it does:
self.spawnLldbMi(args = None)
# Test that lldb-mi is ready after startup
self.expect(self.child_prompt, exactly = True)
For example, initially all tests in TestMiFile.py failed due to time outs, but
after I added the line above to each one of them they ran to completion. I used
this command to run the tests:
python dotest.py -A x86_64 -C clang --executable ~/Projects/llvm-build/bin/lldb
tools/lldb-mi/ -t -p TestMiFile
And here's a trace from one of the failing tests in TestMiFile.py before I
modified it (the rest of the tests in there failed the same way):
======================================================================
ERROR: test_lldbmi_file_exec_and_symbols_file (TestMiFile.MiFileTestCase)
Test that 'lldb-mi --interpreter' works for -file-exec-and-symbols exe.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/enlight/Projects/llvm/tools/lldb/test/lldbtest.py", line 447, in
wrapper
return func(self, *args, **kwargs)
File "/home/enlight/Projects/llvm/tools/lldb/test/lldbtest.py", line 562, in
wrapper
func(*args, **kwargs)
File
"/home/enlight/Projects/llvm/tools/lldb/test/tools/lldb-mi/TestMiFile.py", line
24, in test_lldbmi_file_exec_and_symbols_file
self.expect("\^done")
File
"/home/enlight/Projects/llvm/tools/lldb/test/tools/lldb-mi/lldbmi_testcase.py",
line 46, in expect
return self.child.expect(pattern, *args, **kwargs)
File "/home/enlight/Projects/llvm/tools/lldb/test/pexpect-2.4/pexpect.py",
line 1316, in expect
return self.expect_list(compiled_pattern_list, timeout, searchwindowsize)
File "/home/enlight/Projects/llvm/tools/lldb/test/pexpect-2.4/pexpect.py",
line 1330, in expect_list
return self.expect_loop(searcher_re(pattern_list), timeout,
searchwindowsize)
File "/home/enlight/Projects/llvm/tools/lldb/test/pexpect-2.4/pexpect.py",
line 1414, in expect_loop
raise TIMEOUT (str(e) + '\n' + str(self))
TIMEOUT: Timeout exceeded in read_nonblocking().
<pexpect.spawn object at 0x7fd76282c290>
version: 2.4 ($Revision: 516 $)
command: /home/enlight/Projects/llvm-build/bin/lldb-mi
args: ['/home/enlight/Projects/llvm-build/bin/lldb-mi', '--interpreter']
searcher: searcher_re:
0: re.compile("\^done")
buffer (last 100 chars): -file-exec-and-symbols a.out(gdb)
before (last 100 chars): -file-exec-and-symbols a.out(gdb)
after: <class 'pexpect.TIMEOUT'>
match: None
match_index: None
exitstatus: None
flag_eof: False
pid: 28399
child_fd: 3
closed: False
timeout: 2
delimiter: <class 'pexpect.EOF'>
logfile: None
logfile_read: <open file 'child.log', mode 'w' at 0x7fd7621df780>
logfile_send: None
maxread: 2000
ignorecase: False
searchwindowsize: None
delaybeforesend: 0.05
delayafterclose: 0.1
delayafterterminate: 0.1
Config=x86_64-clang
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20150504/aad50ec4/attachment.html>
More information about the lldb-dev
mailing list