[
https://issues.apache.org/jira/browse/IMPALA-14480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18040883#comment-18040883
]
ASF subversion and git services commented on IMPALA-14480:
----------------------------------------------------------
Commit 336034debd3c620bef00d07658482cbe770f2a78 in impala's branch
refs/heads/master from jasonmfehr
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=336034deb ]
IMPALA-14480: Optional OpenTelemetry DCHECKs
The code in span-manager.cc contains aggressive DCHECKS that rely on
the query lifecycle to be deterministic. In reality, the query
lifecycle is not completely deterministic due to multiple threads
being involved in execution, result retrieval, query shutdown, etc.
On debug builds only, a new flag named, otel_trace_exhaustive_dchecks
will be available with a default of 'false'. If set to 'true', then
optional DCHECKs will be enabled in the SpanManager class to enable
identification of edge cases where the query lifecycle proceeds in an
unexpected way.
The DCHECKs that are controlled by the new flag are those that rely
on a specific ordering of start/end child span and add child span
event calls.
Change-Id: Id6507f3f0e23ecf7c2bece9a6b6c2d86bfac1e57
Reviewed-on: http://gerrit.cloudera.org:8080/23518
Reviewed-by: Michael Smith <[email protected]>
Reviewed-by: Riza Suminto <[email protected]>
Tested-by: Impala Public Jenkins <[email protected]>
> Enable Optional OpenTelemetry DCHECKs
> -------------------------------------
>
> Key: IMPALA-14480
> URL: https://issues.apache.org/jira/browse/IMPALA-14480
> Project: IMPALA
> Issue Type: Improvement
> Affects Versions: Impala 5.0.0
> Reporter: Jason Fehr
> Assignee: Jason Fehr
> Priority: Critical
> Labels: opentelemetry
>
> During test runs, the OpenTelemetry tests are proving to be flaky because
> some of the DCHECKs in span-manager.cc were written under the assumption that
> the query lifecycle would deterministically transition between phases. In
> reality, the query lifecycle is not exactly deterministic once the query
> execution begins because multiple threads can be involved in execution,
> result retrieval, query shutdown etc.
> The OTel code is written so that it won't fail in release builds. This
> behavior was verified by running custom cluster and EE tests against release
> builds of Impala.
> Since the DCHECKs provide value by identifying edge cases where the query
> lifecycle does not proceed as expected. Since the code in span-manager.cc is
> written so that situations that would fail a DCHECK do not cause problems in
> release builds, the DCHECKs in span-manager.cc can be ignored during regular
> test runs. Add a method of optionally enabling the DCHECKs in
> span-manager.cc that rely on deterministic query lifecycle transitions.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]