You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by tm...@apache.org on 2018/06/01 05:58:54 UTC
[05/16] impala git commit: IMPALA-4970: Record identity of largest
latency ExecQueryFInstances()
IMPALA-4970: Record identity of largest latency ExecQueryFInstances()
Tracked the slowest ExecQueryFInstances() RPC to executors and
added the identity of that executor to the RuntimeProfile.
Testing: Manually tested to verify working.
Change-Id: Icf9ce0d087c91c2e92ba5be08c96cc5364ae38dc
Reviewed-on: http://gerrit.cloudera.org:8080/10490
Reviewed-by: Sailesh Mukil <sa...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>
Project: http://git-wip-us.apache.org/repos/asf/impala/repo
Commit: http://git-wip-us.apache.org/repos/asf/impala/commit/c5dec3d1
Tree: http://git-wip-us.apache.org/repos/asf/impala/tree/c5dec3d1
Diff: http://git-wip-us.apache.org/repos/asf/impala/diff/c5dec3d1
Branch: refs/heads/2.x
Commit: c5dec3d132c3805157b12b62e32fbd46c189647b
Parents: 937885b
Author: Rahul Shivu Mahadev <ra...@cloudera.com>
Authored: Wed May 23 13:49:33 2018 -0700
Committer: Impala Public Jenkins <im...@gerrit.cloudera.org>
Committed: Fri Jun 1 01:15:44 2018 +0000
----------------------------------------------------------------------
be/src/runtime/coordinator.cc | 9 +++++++++
1 file changed, 9 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/impala/blob/c5dec3d1/be/src/runtime/coordinator.cc
----------------------------------------------------------------------
diff --git a/be/src/runtime/coordinator.cc b/be/src/runtime/coordinator.cc
index 28e4d6c..3031d99 100644
--- a/be/src/runtime/coordinator.cc
+++ b/be/src/runtime/coordinator.cc
@@ -353,6 +353,8 @@ Status Coordinator::FinishBackendStartup() {
HistogramMetric latencies(def, 30 * 60 * 1000, 4);
Status status = Status::OK();
string error_hostname;
+ string max_latency_host;
+ int max_latency = 0;
for (BackendState* backend_state: backend_states_) {
// preserve the first non-OK, if there is one
Status backend_status = backend_state->GetStatus();
@@ -360,10 +362,17 @@ Status Coordinator::FinishBackendStartup() {
status = backend_status;
error_hostname = backend_state->impalad_address().hostname;
}
+ if (backend_state->rpc_latency() > max_latency) {
+ // Find the backend that takes the most time to acknowledge to
+ // the ExecQueryFinstances() RPC.
+ max_latency = backend_state->rpc_latency();
+ max_latency_host = TNetworkAddressToString(backend_state->impalad_address());
+ }
latencies.Update(backend_state->rpc_latency());
}
query_profile_->AddInfoString(
"Backend startup latencies", latencies.ToHumanReadable());
+ query_profile_->AddInfoString("Slowest Backend to startup", max_latency_host);
return UpdateExecState(status, nullptr, error_hostname);
}