Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-10119

TestImpalaShellInteractive.test_history_does_not_duplicate_on_interrupt

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • Impala 4.0.0
    • Impala 4.0.0
    • Infrastructure
    • ghx-label-10

    Description

      This test was flaky.

      https://jenkins.impala.io/job/ubuntu-16.04-dockerised-tests/3069/testReport/junit/shell.test_shell_interactive/TestImpalaShellInteractive/test_history_does_not_duplicate_on_interrupt_table_format_and_file_extension____textfile_____txt_____protocol__hs2_/

      shell.test_shell_interactive.TestImpalaShellInteractive.test_history_does_not_duplicate_on_interrupt[table_format_and_file_extension: ('textfile', '.txt') | protocol: hs2] (from pytest)
      
      Failing for the past 1 build (Since Failed#3069 )
      Took 36 sec.
      Error Message
      shell/test_shell_interactive.py:532: in test_history_does_not_duplicate_on_interrupt     child_proc.expect("Fetched 1 row\(s\) in [0-9]+\.?[0-9]*s") ../infra/python/env-gcc7.5.0/lib/python2.7/site-packages/pexpect/__init__.py:1451: in expect     timeout, searchwindowsize) ../infra/python/env-gcc7.5.0/lib/python2.7/site-packages/pexpect/__init__.py:1466: in expect_list     timeout, searchwindowsize) ../infra/python/env-gcc7.5.0/lib/python2.7/site-packages/pexpect/__init__.py:1568: in expect_loop     raise TIMEOUT(str(err) + '\n' + str(self)) E   TIMEOUT: Timeout exceeded. E   <pexpect.spawn object at 0x7f2d51b997d0> E   version: 3.3 E   command: /home/ubuntu/Impala/shell/build/impala-shell-4.0.0-SNAPSHOT/impala-shell E   args: ['/home/ubuntu/Impala/shell/build/impala-shell-4.0.0-SNAPSHOT/impala-shell', '--protocol=hs2', '-ilocalhost:21050'] E   searcher: <pexpect.searcher_re object at 0x7f2d51b99a10> E   buffer (last 100 chars): ' default> select 2;\r\n^C\r\n[localhost:21050] default> ' E   before (last 100 chars): ' default> select 2;\r\n^C\r\n[localhost:21050] default> ' E   after: <class 'pexpect.TIMEOUT'> E   match: None E   match_index: None E   exitstatus: None E   flag_eof: False E   pid: 12993 E   child_fd: 24 E   closed: False E   timeout: 30 E   delimiter: <class 'pexpect.EOF'> E   logfile: None E   logfile_read: None E   logfile_send: None E   maxread: 2000 E   ignorecase: False E   searchwindowsize: None E   delaybeforesend: 0.05 E   delayafterclose: 0.1 E   delayafterterminate: 0.1
      Stacktrace
      shell/test_shell_interactive.py:532: in test_history_does_not_duplicate_on_interrupt
          child_proc.expect("Fetched 1 row\(s\) in [0-9]+\.?[0-9]*s")
      ../infra/python/env-gcc7.5.0/lib/python2.7/site-packages/pexpect/__init__.py:1451: in expect
          timeout, searchwindowsize)
      ../infra/python/env-gcc7.5.0/lib/python2.7/site-packages/pexpect/__init__.py:1466: in expect_list
          timeout, searchwindowsize)
      ../infra/python/env-gcc7.5.0/lib/python2.7/site-packages/pexpect/__init__.py:1568: in expect_loop
          raise TIMEOUT(str(err) + '\n' + str(self))
      E   TIMEOUT: Timeout exceeded.
      E   <pexpect.spawn object at 0x7f2d51b997d0>
      E   version: 3.3
      E   command: /home/ubuntu/Impala/shell/build/impala-shell-4.0.0-SNAPSHOT/impala-shell
      E   args: ['/home/ubuntu/Impala/shell/build/impala-shell-4.0.0-SNAPSHOT/impala-shell', '--protocol=hs2', '-ilocalhost:21050']
      E   searcher: <pexpect.searcher_re object at 0x7f2d51b99a10>
      E   buffer (last 100 chars): ' default> select 2;\r\n^C\r\n[localhost:21050] default> '
      E   before (last 100 chars): ' default> select 2;\r\n^C\r\n[localhost:21050] default> '
      E   after: <class 'pexpect.TIMEOUT'>
      E   match: None
      E   match_index: None
      E   exitstatus: None
      E   flag_eof: False
      E   pid: 12993
      E   child_fd: 24
      E   closed: False
      E   timeout: 30
      E   delimiter: <class 'pexpect.EOF'>
      E   logfile: None
      E   logfile_read: None
      E   logfile_send: None
      E   maxread: 2000
      E   ignorecase: False
      E   searchwindowsize: None
      E   delaybeforesend: 0.05
      E   delayafterclose: 0.1
      E   delayafterterminate: 0.1
      

      The test was added in IMPALA-9398.

      Looks like it's stuck in this line of code waiting for the fetched message:

          child_proc.sendintr()
          child_proc.sendline("select 2;")
          child_proc.expect("Fetched 1 row\(s\) in [0-9]+\.?[0-9]*s")
          child_proc.sendline("quit;")
          child_proc.wait()
      

      tmate can you have a look? It wasn't immediately obvious to me what happened, although maybe the interrupt was handled after the select 2 command - I see ^C after select 2 in the output?

      Attachments

        Activity

          People

            tmate Tamas Mate
            tarmstrong Tim Armstrong
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: