Please see attached log file. Thanks, Ying
On Wed, Jan 13, 2016 at 5:39 PM, Enrico Granata <egran...@apple.com> wrote: > From the buildbot log it’s quite hard to tell what could be going on > > Is there any chance you guys could run the test by hand with the “-t -v” > flags to the dotest.py driver and attach the output of the run? > > That might help figure out where the issue lies > > On Jan 13, 2016, at 5:35 PM, Ying Chen <chy...@google.com> wrote: > > Hello Enrico, > > The new test has been failing on Ubuntu buildbot. But it's passing on some > offline Ubuntu machines, I don't understand what caused the difference. > Could you please help to take a look? > > > http://lab.llvm.org:8011/builders/lldb-x86_64-ubuntu-14.04-cmake/builds/10299 > > Thanks, > Ying > > On Wed, Jan 13, 2016 at 11:32 AM, Enrico Granata via lldb-commits < > lldb-commits@lists.llvm.org> wrote: > >> >> On Jan 13, 2016, at 11:26 AM, Zachary Turner <ztur...@google.com> wrote: >> >> Thanks! btw would having the command write its output to a file instead >> of stdout solve the pexpect problme as well? >> >> >> That’s possible - but I would need to play with it a little bit to >> convince myself that it really is a faithful reproduction of my original >> issue >> It’ll take me a little while to get to it - stay tuned. >> >> On Wed, Jan 13, 2016 at 11:22 AM Enrico Granata <egran...@apple.com> >> wrote: >> >>> >>> On Jan 13, 2016, at 10:34 AM, Zachary Turner <ztur...@google.com> wrote: >>> >>> >>> >>> On Wed, Jan 13, 2016 at 10:25 AM Enrico Granata <egran...@apple.com> >>> wrote: >>> >>>> On Jan 13, 2016, at 10:21 AM, Zachary Turner <ztur...@google.com> >>>> wrote: >>>> >>>> >>>> On Wed, Jan 13, 2016 at 10:15 AM Enrico Granata via lldb-commits < >>>> lldb-commits@lists.llvm.org> wrote: >>>> >>>>> + >>>>> +class CommandScriptImmediateOutputTestCase (PExpectTest): >>>>> >>>> Does the bug that you were trying to fix occur only when using the >>>> command_script.py file from the lldb command line? If you load it from >>>> within lldb via an LLDB command, does the problem still occur? If the >>>> problem you are fixing is not specific to the LLDB command line, I would >>>> prefer if you write this not as a pexpect test. >>>> >>>> >>>> I would love to not touch pexpect :-) But in this case, I can’t see a >>>> way around it. I am trying to detect whether some text is “physically” >>>> printed to stdout. And pexpect seems the most obvious straightforward way >>>> to get that to happen. Note that, in this bug, the result object is filled >>>> in correctly even if nothing gets printed, so looking at the result won’t >>>> quite cut it - it really needs to detect output to stdout. >>>> >>> You're calling result.SetImmediateOutputFile(sys.__stdout__). Wouldn't >>> it work to use a file on the file system here, and then you open that file >>> and look at it after running the commands? It wouldn't work in remote >>> cases, but it already doesn't work on remote cases anyway (as you point out >>> below) >>> >>> >>>> >>>> >>>> >>>>> + >>>>> + mydir = TestBase.compute_mydir(__file__) >>>>> + >>>>> + def setUp(self): >>>>> + # Call super's setUp(). >>>>> + PExpectTest.setUp(self) >>>>> + >>>>> + @skipIfRemote # test not remote-ready llvm.org/pr24813 >>>>> + @expectedFlakeyFreeBSD("llvm.org/pr25172 fails rarely on the >>>>> buildbot") >>>>> + @expectedFlakeyLinux("llvm.org/pr25172") >>>>> >>>> Are these necessary? The windows one is necessary (but not if you >>>> change this to not being a pexpect test as I've requested above), but why >>>> are the other ones necessary? >>>> >>>> >>>> Do we support remote pexpect? As for FreeBSD and Linux, they might not >>>> be necessary, but I’d rather much remove them (or let the relevant platform >>>> owners) remove them in a separate commit >>>> >>>> No remote pexpect, so the @skipIfRemote probably needs to be there. >>> But I think everyone should be checking in tests enabled by default in the >>> widest set of environments possible that you aren't completely sure are >>> broken. It should be up to the platform holders to disable broken tests, >>> not to enable working tests. Because it's much easier to notice a broken >>> test going in than it is to notice a working test went in disabled (because >>> who's going to think to test it out?). >>> >>> >>> This is a fair point. I’ll enable those platforms in a subsequent commit >>> ASAP >>> >>> >>> Thanks, >>> *- Enrico* >>> 📩 egranata@.com ☎️ 27683 >>> >>> >> >> Thanks, >> *- Enrico* >> 📩 egranata@.com ☎️ 27683 >> >> >> _______________________________________________ >> lldb-commits mailing list >> lldb-commits@lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits >> >> > > > Thanks, > *- Enrico* > 📩 egranata@.com ☎️ 27683 > >
lldb version 3.9.0 ( http://llvm.org/svn/llvm-project/lldb/trunk revision 257733 clang revision 257733 llvm revision 257733) Session logs for test failures/errors/unexpected successes will go into directory 'logs-clang-3.5-i386' Command invoked: /lldb-buildbot/lldbSlave/buildWorkingDir/scripts/../llvm/tools/lldb/test/dotest.py --executable /lldb-buildbot/lldbSlave/buildWorkingDir/scripts/../build/bin/lldb -A i386 -C clang-3.5 -v -s logs-clang-3.5-i386 -u CXXFLAGS -u CFLAGS --inferior -p TestCommandScriptImmediateOutput.py /lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test --event-add-entries worker_index=13:int -v -t Configuration: arch=i386 compiler=clang-3.5 ---------------------------------------------------------------------- Collected 2 tests Change dir to: /lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/command_script_immediate_output 1: test_command_script_immediate_output_dwarf (TestCommandScriptImmediateOutput.CommandScriptImmediateOutputTestCase) Test that LLDB correctly allows scripted commands to set an immediate output file. ... ['/lldb-buildbot/lldbSlave/buildWorkingDir/scripts/../llvm/tools/lldb/test/dotest.py', '--executable', '/lldb-buildbot/lldbSlave/buildWorkingDir/scripts/../build/bin/lldb', '-A', 'i386', '-C', 'clang-3.5', '-v', '-s', 'logs-clang-3.5-i386', '-u', 'CXXFLAGS', '-u', 'CFLAGS', '--inferior', '-p', 'TestCommandScriptImmediateOutput.py', '/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test', '--event-add-entries', 'worker_index=13:int', '-v', '-t'] LLDB library dir: /lldb-buildbot/lldbSlave/buildWorkingDir/scripts/../build/bin LLDB import library dir: /lldb-buildbot/lldbSlave/buildWorkingDir/scripts/../build/bin compilers=['clang-3.5'] command script import /lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/command_script_immediate_output/custom_command.py command script import /lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/command_script_immediate_output/custom_command.py(lldb) target create "None" error: unable to find executable for 'None' (lldb) command script import /lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/command_script_immediate_output/custom_command.py command script add -f custom_command.command_function mycommand mycommand (lldb) command script add -f custom_command.command_function mycommand (lldb) mycommand (lldb) ERROR tearing down the child process.... settings set interpreter.prompt-on-quit false quit settings set interpreter.prompt-on-quit false (lldb) quit 2: test_command_script_immediate_output_dwo (TestCommandScriptImmediateOutput.CommandScriptImmediateOutputTestCase) Test that LLDB correctly allows scripted commands to set an immediate output file. ... command script import /lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/command_script_immediate_output/custom_command.py command script import /lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/command_script_immediate_output/custom_command.py(lldb) target create "None" error: unable to find executable for 'None' (lldb) command script import /lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/command_script_immediate_output/custom_command.pycommand script add -f custom_command.command_function mycommand mycommand (lldb) command script add -f custom_command.command_function mycommand (lldb) mycommand (lldb) ERROR tearing down the child process.... settings set interpreter.prompt-on-quit false quit settings set interpreter.prompt-on-quit false (lldb) quit Restore dir to: /lldb-buildbot ====================================================================== ERROR: test_command_script_immediate_output_dwarf (TestCommandScriptImmediateOutput.CommandScriptImmediateOutputTestCase) Test that LLDB correctly allows scripted commands to set an immediate output file. ---------------------------------------------------------------------- Traceback (most recent call last): File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 2249, in dwarf_test_method return attrvalue(self) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 836, in wrapper func(*args, **kwargs) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 608, in wrapper func(*args, **kwargs) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/command_script_immediate_output/TestCommandScriptImmediateOutput.py", line 33, in test_command_script_immediate_output self.sendline('mycommand', patterns='this is a test string, just a test string') File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbpexpect.py", line 57, in sendline return self.sendimpl(self.child.sendline, command, patterns, timeout, exact) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbpexpect.py", line 51, in sendimpl return self.expect(patterns=patterns, timeout=timeout, exact=exact) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbpexpect.py", line 40, in expect return self.child.expect(patterns, timeout=timeout) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/third_party/Python/module/pexpect-2.4/pexpect.py", line 1316, in expect return self.expect_list(compiled_pattern_list, timeout, searchwindowsize) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/third_party/Python/module/pexpect-2.4/pexpect.py", line 1330, in expect_list return self.expect_loop(searcher_re(pattern_list), timeout, searchwindowsize) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/third_party/Python/module/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 0x7f04cb7f1110> version: 2.4 ($Revision: 516 $) command: /lldb-buildbot/lldbSlave/buildWorkingDir/scripts/../build/bin/lldb args: ['/lldb-buildbot/lldbSlave/buildWorkingDir/scripts/../build/bin/lldb', 'None', '--no-use-colors'] searcher: searcher_re: 0: re.compile("this is a test string, just a test string") buffer (last 100 chars): y (lldb) command script add -f custom_command.command_function mycommand (lldb) mycommand (lldb) before (last 100 chars): y (lldb) command script add -f custom_command.command_function mycommand (lldb) mycommand (lldb) after: <class 'pexpect.TIMEOUT'> match: None match_index: None exitstatus: None flag_eof: False pid: 22930 child_fd: 5 closed: False timeout: 5 delimiter: <class 'pexpect.EOF'> logfile: <open file '<stdout>', mode 'w' at 0x7f04d3452150> logfile_read: None logfile_send: None maxread: 2000 ignorecase: False searchwindowsize: None delaybeforesend: 0.05 delayafterclose: 0.1 delayafterterminate: 0.1 Config=i386-clang-3.5 ====================================================================== ERROR: test_command_script_immediate_output_dwo (TestCommandScriptImmediateOutput.CommandScriptImmediateOutputTestCase) Test that LLDB correctly allows scripted commands to set an immediate output file. ---------------------------------------------------------------------- Traceback (most recent call last): File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 2259, in dwo_test_method return attrvalue(self) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 836, in wrapper func(*args, **kwargs) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 608, in wrapper func(*args, **kwargs) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/functionalities/command_script_immediate_output/TestCommandScriptImmediateOutput.py", line 33, in test_command_script_immediate_output self.sendline('mycommand', patterns='this is a test string, just a test string') File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbpexpect.py", line 57, in sendline return self.sendimpl(self.child.sendline, command, patterns, timeout, exact) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbpexpect.py", line 51, in sendimpl return self.expect(patterns=patterns, timeout=timeout, exact=exact) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/packages/Python/lldbsuite/test/lldbpexpect.py", line 40, in expect return self.child.expect(patterns, timeout=timeout) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/third_party/Python/module/pexpect-2.4/pexpect.py", line 1316, in expect return self.expect_list(compiled_pattern_list, timeout, searchwindowsize) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/third_party/Python/module/pexpect-2.4/pexpect.py", line 1330, in expect_list return self.expect_loop(searcher_re(pattern_list), timeout, searchwindowsize) File "/lldb-buildbot/lldbSlave/buildWorkingDir/llvm/tools/lldb/third_party/Python/module/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 0x7f04cb7dbd50> version: 2.4 ($Revision: 516 $) command: /lldb-buildbot/lldbSlave/buildWorkingDir/scripts/../build/bin/lldb args: ['/lldb-buildbot/lldbSlave/buildWorkingDir/scripts/../build/bin/lldb', 'None', '--no-use-colors'] searcher: searcher_re: 0: re.compile("this is a test string, just a test string") buffer (last 100 chars): y (lldb) command script add -f custom_command.command_function mycommand (lldb) mycommand (lldb) before (last 100 chars): y (lldb) command script add -f custom_command.command_function mycommand (lldb) mycommand (lldb) after: <class 'pexpect.TIMEOUT'> match: None match_index: None exitstatus: None flag_eof: False pid: 23461 child_fd: 5 closed: False timeout: 5 delimiter: <class 'pexpect.EOF'> logfile: <open file '<stdout>', mode 'w' at 0x7f04d3452150> logfile_read: None logfile_send: None maxread: 2000 ignorecase: False searchwindowsize: None delaybeforesend: 0.05 delayafterclose: 0.1 delayafterterminate: 0.1 Config=i386-clang-3.5 ---------------------------------------------------------------------- Ran 2 tests in 11.251s RESULT: FAILED (0 passes, 0 failures, 2 errors, 0 skipped, 0 expected failures, 0 unexpected successes) Session logs for test failures/errors/unexpected successes can be found in directory 'logs-clang-3.5-i386'
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits