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)