Juan Yu has submitted this change and it was merged.

Change subject: IMPALA-2076: Correct execution time tracking for 
DataStreamSender.
......................................................................


IMPALA-2076: Correct execution time tracking for DataStreamSender.

DataStreamSender uses multiple channels (each channel uses one thread)
to send data. We want to know the active wall-clock network time used by
DataStreamSender no matter how many threads are used so we only count
concurrent sending time and row batch serialization time. We don't want
to count recv_TransmitData() time because it is mainly to wait for
receiver to deserialize data and process data, not using much network,
plus those part are already tracked by Exchange node.
Added a ConcurrentStopWatch class to get concurrent transmit time.
If a thread is already running, the following thread won't reset the
stop watch. And the stop watch is stopped only after all threads finish
their work.

Change-Id: I9c530b2056d852c8bcac6263e9e6b1a6bede1047
Reviewed-on: http://gerrit.cloudera.org:8080/2578
Reviewed-by: Juan Yu <j...@cloudera.com>
Reviewed-by: Dan Hecht <dhe...@cloudera.com>
Tested-by: Internal Jenkins
(cherry picked from commit 18434bae383acb38c4a24e4a8d7484f6a173f354)
Reviewed-on: http://gerrit.cloudera.org:8080/2897
Tested-by: Juan Yu <j...@cloudera.com>
---
A be/src/runtime/backend-client.h
M be/src/runtime/client-cache.h
M be/src/runtime/coordinator.cc
M be/src/runtime/coordinator.h
M be/src/runtime/data-stream-sender.cc
M be/src/runtime/data-stream-sender.h
M be/src/runtime/data-stream-test.cc
M be/src/runtime/exec-env.cc
M be/src/runtime/exec-env.h
M be/src/runtime/runtime-filter.cc
M be/src/runtime/runtime-state.h
M be/src/service/fragment-exec-state.cc
M be/src/service/fragment-exec-state.h
M be/src/util/runtime-profile-test.cc
M be/src/util/runtime-profile.cc
M be/src/util/runtime-profile.h
M be/src/util/stopwatch.h
17 files changed, 371 insertions(+), 44 deletions(-)

Approvals:
  Juan Yu: Looks good to me, approved; Verified



-- 
To view, visit http://gerrit.cloudera.org:8080/2897
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I9c530b2056d852c8bcac6263e9e6b1a6bede1047
Gerrit-PatchSet: 2
Gerrit-Project: Impala
Gerrit-Branch: cdh5-2.5.0_5.7.x
Gerrit-Owner: Juan Yu <j...@cloudera.com>
Gerrit-Reviewer: Dan Hecht <dhe...@cloudera.com>
Gerrit-Reviewer: Internal Jenkins
Gerrit-Reviewer: Juan Yu <j...@cloudera.com>

Reply via email to