You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by sa...@apache.org on 2018/05/25 23:44:38 UTC

impala git commit: IMPALA-4970: Record identity of largest latency ExecQueryFInstances()

Repository: impala
Updated Branches:
  refs/heads/master 456356ca0 -> ff26663f9


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/ff26663f
Tree: http://git-wip-us.apache.org/repos/asf/impala/tree/ff26663f
Diff: http://git-wip-us.apache.org/repos/asf/impala/diff/ff26663f

Branch: refs/heads/master
Commit: ff26663f90b58153e8086c1a779f8604b2cfe685
Parents: 456356c
Author: Rahul Shivu Mahadev <ra...@cloudera.com>
Authored: Wed May 23 13:49:33 2018 -0700
Committer: Impala Public Jenkins <im...@cloudera.com>
Committed: Fri May 25 22:13:08 2018 +0000

----------------------------------------------------------------------
 be/src/runtime/coordinator.cc | 9 +++++++++
 1 file changed, 9 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/impala/blob/ff26663f/be/src/runtime/coordinator.cc
----------------------------------------------------------------------
diff --git a/be/src/runtime/coordinator.cc b/be/src/runtime/coordinator.cc
index 90e2390..de35af9 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);
 }