You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by yi...@apache.org on 2023/06/15 00:08:46 UTC
[doris] branch master updated: [fix](profile) remove same profile in join node (#20734)
This is an automated email from the ASF dual-hosted git repository.
yiguolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 460399f214 [fix](profile) remove same profile in join node (#20734)
460399f214 is described below
commit 460399f2143ad05fd870eeb4052a529f37037681
Author: Mryange <59...@users.noreply.github.com>
AuthorDate: Thu Jun 15 08:08:39 2023 +0800
[fix](profile) remove same profile in join node (#20734)
---
be/src/vec/exec/join/vhash_join_node.cpp | 20 +++++++++++---------
be/src/vec/exec/join/vhash_join_node.h | 2 --
be/src/vec/exec/join/vjoin_node_base.cpp | 5 +++--
be/src/vec/exec/join/vnested_loop_join_node.cpp | 4 ----
4 files changed, 14 insertions(+), 17 deletions(-)
diff --git a/be/src/vec/exec/join/vhash_join_node.cpp b/be/src/vec/exec/join/vhash_join_node.cpp
index be94987bdb..0770d26e74 100644
--- a/be/src/vec/exec/join/vhash_join_node.cpp
+++ b/be/src/vec/exec/join/vhash_join_node.cpp
@@ -450,25 +450,26 @@ Status HashJoinNode::prepare(RuntimeState* state) {
// Build phase
auto record_profile = _should_build_hash_table ? _build_phase_profile : faker_runtime_profile();
- _build_table_timer = ADD_TIMER(record_profile, "BuildTableTime");
- _build_side_merge_block_timer = ADD_TIMER(record_profile, "BuildSideMergeBlockTime");
+ _build_table_timer = ADD_CHILD_TIMER(_build_phase_profile, "BuildTableTime", "BuildTime");
+ _build_side_merge_block_timer =
+ ADD_CHILD_TIMER(_build_phase_profile, "BuildSideMergeBlockTime", "BuildTime");
_build_table_insert_timer = ADD_TIMER(record_profile, "BuildTableInsertTime");
_build_expr_call_timer = ADD_TIMER(record_profile, "BuildExprCallTime");
_build_table_expanse_timer = ADD_TIMER(record_profile, "BuildTableExpanseTime");
_build_table_convert_timer = ADD_TIMER(record_profile, "BuildTableConvertToPartitionedTime");
_build_side_compute_hash_timer = ADD_TIMER(record_profile, "BuildSideHashComputingTime");
_build_runtime_filter_timer = ADD_TIMER(record_profile, "BuildRuntimeFilterTime");
- _push_down_timer = ADD_TIMER(record_profile, "PublishRuntimeFilterTime");
- _push_compute_timer = ADD_TIMER(record_profile, "PushDownComputeTime");
// Probe phase
auto probe_phase_profile = _probe_phase_profile;
_probe_next_timer = ADD_TIMER(probe_phase_profile, "ProbeFindNextTime");
_probe_expr_call_timer = ADD_TIMER(probe_phase_profile, "ProbeExprCallTime");
- _search_hashtable_timer = ADD_TIMER(probe_phase_profile, "ProbeWhenSearchHashTableTime");
- _build_side_output_timer = ADD_TIMER(probe_phase_profile, "ProbeWhenBuildSideOutputTime");
- _probe_side_output_timer = ADD_TIMER(probe_phase_profile, "ProbeWhenProbeSideOutputTime");
-
+ _search_hashtable_timer =
+ ADD_CHILD_TIMER(probe_phase_profile, "ProbeWhenSearchHashTableTime", "ProbeTime");
+ _build_side_output_timer =
+ ADD_CHILD_TIMER(probe_phase_profile, "ProbeWhenBuildSideOutputTime", "ProbeTime");
+ _probe_side_output_timer =
+ ADD_CHILD_TIMER(probe_phase_profile, "ProbeWhenProbeSideOutputTime", "ProbeTime");
_open_timer = ADD_TIMER(runtime_profile(), "OpenTime");
_allocate_resource_timer = ADD_TIMER(runtime_profile(), "AllocateResourceTime");
_process_other_join_conjunct_timer = ADD_TIMER(runtime_profile(), "OtherJoinConjunctTime");
@@ -887,7 +888,8 @@ Status HashJoinNode::sink(doris::RuntimeState* state, vectorized::Block* in_bloc
} else if (!_should_build_hash_table) {
DCHECK(_shared_hashtable_controller != nullptr);
DCHECK(_shared_hash_table_context != nullptr);
- auto wait_timer = ADD_TIMER(_build_phase_profile, "WaitForSharedHashTableTime");
+ auto wait_timer =
+ ADD_CHILD_TIMER(_build_phase_profile, "WaitForSharedHashTableTime", "BuildTime");
SCOPED_TIMER(wait_timer);
RETURN_IF_ERROR(
_shared_hashtable_controller->wait_for_signal(state, _shared_hash_table_context));
diff --git a/be/src/vec/exec/join/vhash_join_node.h b/be/src/vec/exec/join/vhash_join_node.h
index 4e9cd40e9a..02927f9724 100644
--- a/be/src/vec/exec/join/vhash_join_node.h
+++ b/be/src/vec/exec/join/vhash_join_node.h
@@ -299,8 +299,6 @@ private:
RuntimeProfile::Counter* _probe_next_timer;
RuntimeProfile::Counter* _build_buckets_counter;
RuntimeProfile::Counter* _build_buckets_fill_counter;
- RuntimeProfile::Counter* _push_down_timer;
- RuntimeProfile::Counter* _push_compute_timer;
RuntimeProfile::Counter* _search_hashtable_timer;
RuntimeProfile::Counter* _build_side_output_timer;
RuntimeProfile::Counter* _probe_side_output_timer;
diff --git a/be/src/vec/exec/join/vjoin_node_base.cpp b/be/src/vec/exec/join/vjoin_node_base.cpp
index 1171297d80..3be9284906 100644
--- a/be/src/vec/exec/join/vjoin_node_base.cpp
+++ b/be/src/vec/exec/join/vjoin_node_base.cpp
@@ -115,10 +115,11 @@ Status VJoinNodeBase::prepare(RuntimeState* state) {
_probe_phase_profile = runtime_profile()->create_child("ProbePhase", true, true);
_probe_timer = ADD_TIMER(_probe_phase_profile, "ProbeTime");
+ _join_filter_timer = ADD_CHILD_TIMER(_probe_phase_profile, "JoinFilterTimer", "ProbeTime");
+ _build_output_block_timer =
+ ADD_CHILD_TIMER(_probe_phase_profile, "BuildOutputBlock", "ProbeTime");
_probe_rows_counter = ADD_COUNTER(_probe_phase_profile, "ProbeRows", TUnit::UNIT);
- _build_output_block_timer = ADD_TIMER(runtime_profile(), "BuildOutPutBlockTimer");
- _join_filter_timer = ADD_TIMER(runtime_profile(), "JoinFilterTimer");
_push_down_timer = ADD_TIMER(runtime_profile(), "PublishRuntimeFilterTime");
_push_compute_timer = ADD_TIMER(runtime_profile(), "PushDownComputeTime");
diff --git a/be/src/vec/exec/join/vnested_loop_join_node.cpp b/be/src/vec/exec/join/vnested_loop_join_node.cpp
index 41c397671d..2a603e7680 100644
--- a/be/src/vec/exec/join/vnested_loop_join_node.cpp
+++ b/be/src/vec/exec/join/vnested_loop_join_node.cpp
@@ -134,10 +134,6 @@ Status VNestedLoopJoinNode::init(const TPlanNode& tnode, RuntimeState* state) {
Status VNestedLoopJoinNode::prepare(RuntimeState* state) {
SCOPED_TIMER(_runtime_profile->total_time_counter());
RETURN_IF_ERROR(VJoinNodeBase::prepare(state));
-
- _probe_rows_counter = ADD_COUNTER(runtime_profile(), "ProbeRows", TUnit::UNIT);
- _probe_timer = ADD_TIMER(runtime_profile(), "ProbeTime");
-
// pre-compute the tuple index of build tuples in the output row
int num_build_tuples = child(1)->row_desc().tuple_descriptors().size();
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org