You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "Tim Armstrong (Jira)" <ji...@apache.org> on 2020/06/19 19:26:00 UTC
[jira] [Updated] (IMPALA-7598) Planner timeline not set in the
runtime profile incase of errors
[ https://issues.apache.org/jira/browse/IMPALA-7598?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tim Armstrong updated IMPALA-7598:
----------------------------------
Labels: newbie ramp-up (was: ramp-up)
> Planner timeline not set in the runtime profile incase of errors
> ----------------------------------------------------------------
>
> Key: IMPALA-7598
> URL: https://issues.apache.org/jira/browse/IMPALA-7598
> Project: IMPALA
> Issue Type: Bug
> Components: Frontend
> Affects Versions: Impala 3.1.0
> Reporter: Bharath Vissapragada
> Priority: Major
> Labels: newbie, ramp-up
>
> Currently, the frontend sets the "Query compilation" timeline only if doCreateExecRequest() finishes successfully.
> {code}
> private TExecRequest doCreateExecRequest(TQueryCtx queryCtx...) {
> ...... <snip>......
> timeline.markEvent("Planning finished");
> result.setTimeline(timeline.toThrift());
> return result;
> }
> {code}
> There can be cases where the timeline could be useful for debugging when the planning fails.
> One recent case I came across is the exhaustion of retries on InconsistentMetadataFetchException. For every retry of query due to this exception, we add a timeline event.
> {code}
> while (true) {
> try {
> return doCreateExecRequest(queryCtx, timeline, explainString);
> } catch (InconsistentMetadataFetchException e) {
> if (attempt++ == INCONSISTENT_METADATA_NUM_RETRIES) {
> throw e;
> }
> if (attempt > 1) {
> // Back-off a bit on later retries.
> Uninterruptibles.sleepUninterruptibly(200 * attempt, TimeUnit.MILLISECONDS);
> }
> timeline.markEvent(
> String.format("Retrying query planning due to inconsistent metadata "
> + "fetch, attempt %s of %s: ",
> attempt, INCONSISTENT_METADATA_NUM_RETRIES)
> + e.getMessage());
> {code}
> However, if the planning eventually fails, the timeline about retries is gone. This would've confirmed that the query was re-tried for 10 times.
> Would be really useful if we can populate the partial timeline, even if the planning failed.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org