You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@impala.apache.org by "Sahil Takiar (Jira)" <ji...@apache.org> on 2020/07/22 23:53:00 UTC

[jira] [Resolved] (IMPALA-9953) Shell does not return all rows if a fetch times out in FINISHED state

     [ https://issues.apache.org/jira/browse/IMPALA-9953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sahil Takiar resolved IMPALA-9953.
----------------------------------
    Fix Version/s: Impala 4.0
       Resolution: Fixed

> Shell does not return all rows if a fetch times out in FINISHED state
> ---------------------------------------------------------------------
>
>                 Key: IMPALA-9953
>                 URL: https://issues.apache.org/jira/browse/IMPALA-9953
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Clients
>            Reporter: Tim Armstrong
>            Assignee: Sahil Takiar
>            Priority: Blocker
>              Labels: correctness
>             Fix For: Impala 4.0
>
>
> I noticed that if a fetch times out, impala-shell will stop returning rows and close the query. It looks like this happens if the query transitions to FINISHED state, then the fetch times out
> I ran into this on an experimental branch where a sort deadlocked. I haven't been able to repro on master yet but I thought I should report it.
> The bug is here:
> {noformat}
> diff --git a/shell/impala_shell.py b/shell/impala_shell.py
> index e0d802626..323aee6c9 100755
> --- a/shell/impala_shell.py
> +++ b/shell/impala_shell.py
> @@ -1182,8 +1182,7 @@ class ImpalaShell(cmd.Cmd, object):
>  
>          for rows in rows_fetched:
>            # IMPALA-4418: Break out of the loop to prevent printing an unnecessary empty line.
> -          if len(rows) == 0:
> -            break
> +          if len(rows) == 0: continue
>            self.output_stream.write(rows)
>            num_rows += len(rows)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)