You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@impala.apache.org by "Thomas Tauber-Marshall (JIRA)" <ji...@apache.org> on 2017/12/07 21:21:00 UTC

[jira] [Resolved] (IMPALA-6081) TestRuntimeFilters fails due to runtime profile missing portions

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

Thomas Tauber-Marshall resolved IMPALA-6081.
--------------------------------------------
       Resolution: Fixed
    Fix Version/s: Impala 2.11.0

commit f3fa3e017f1341579d008619f57cc5dceb21603d
Author: Thomas Tauber-Marshall <tm...@cloudera.com>
Date:   Wed Nov 29 16:46:38 2017 -0800

    IMPALA-6081: Fix test_basic_filters runtime profile failure
    
    test_basic_filters has been occasionally failing due to a line missing
    from a runtime profile for a particular query.
    
    The problem is that the query returns all of its results before all of
    its fragment instances are finished executing (due to a limit). Then,
    when one fragment instance reports its status, the coordinator returns
    to it a 'cancelled' status, causing all remaining instances for that
    backend to be cancelled.
    
    Sometimes this cancellation happens quickly enough that the relevant
    fragment instances have not yet sent a status report when they are
    cancelled. They will still send a report in finalize, but as the
    coordinator only updates its runtime profile for 'ok' status reports,
    not 'cancelled', the final runtime profile doesn't end up with any
    data for those fragment instances, which means the test does not find
    the line in the runtime profile its checking for.
    
    The fix is to have the coordinator update its runtime profile with
    every status report it recieves, regardless of error status.
    
    Testing:
    - Ran existing runtime profile tests, which rely on profile output,
      in a loop.
    - Manually tested some scenarios with failed queries and checked that
      the new profile output is reasonable.
    - Added a new e2e test that runs the affected query and checks for the
      presence of info for all expected exec node in the profile. This
      repros the underlying issue consistently.
    
    Change-Id: I4f581c7c8039f02a33712515c5bffab942309bba
    Reviewed-on: http://gerrit.cloudera.org:8080/8754
    Reviewed-by: Joe McDonnell <jo...@cloudera.com>
    Reviewed-by: Dan Hecht <dh...@cloudera.com>
    Tested-by: Impala Public Jenkins

> TestRuntimeFilters fails due to runtime profile missing portions
> ----------------------------------------------------------------
>
>                 Key: IMPALA-6081
>                 URL: https://issues.apache.org/jira/browse/IMPALA-6081
>             Project: IMPALA
>          Issue Type: Bug
>    Affects Versions: Impala 2.11.0
>            Reporter: Jim Apple
>            Assignee: Thomas Tauber-Marshall
>            Priority: Blocker
>             Fix For: Impala 2.11.0
>
>
> https://jenkins.impala.io/job/ubuntu-16.04-from-scratch/461/consoleText
> {noformat}
>  TestRuntimeFilters.test_basic_filters[exec_option: {'batch_size': 0, 'num_nodes': 0, 'disable_codegen_rows_threshold': 0, 'disable_codegen': False, 'abort_on_error': 1, 'exec_single_node_rows_threshold': 0} | table_format: avro/snap/block] 
> [gw1] linux2 -- Python 2.7.12 /home/ubuntu/Impala/bin/../infra/python/env/bin/python
> query_test/test_runtime_filters.py:39: in test_basic_filters
>     self.run_test_case('QueryTest/runtime_filters', vector)
> common/impala_test_suite.py:431: in run_test_case
>     verify_runtime_profile(test_section['RUNTIME_PROFILE'], result.runtime_profile)
> common/test_result_verifier.py:560: in verify_runtime_profile
>     actual))
> E   AssertionError: Did not find matches for lines in runtime profile:
> E   EXPECTED LINES:
> E   row_regex: .*1 of 1 Runtime Filter Published.*
> E   
> E   ACTUAL PROFILE:
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)