This is an automated email from the ASF dual-hosted git repository. yiguolei pushed a commit to branch branch-2.1 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 05a84bd485f0a8a6f531a6c7b31194d786a375aa Author: Pxl <[email protected]> AuthorDate: Wed Apr 3 18:49:10 2024 +0800 [Bug](runtime-filter) set need_local_merge to false when rf is broadcast (#33211) set need_local_merge to false when rf is broadcast --- be/src/exprs/runtime_filter.cpp | 1 + be/src/exprs/runtime_filter.h | 2 +- be/src/pipeline/exec/nested_loop_join_build_operator.cpp | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/be/src/exprs/runtime_filter.cpp b/be/src/exprs/runtime_filter.cpp index a73b833f5e0..f680db5adee 100644 --- a/be/src/exprs/runtime_filter.cpp +++ b/be/src/exprs/runtime_filter.cpp @@ -1254,6 +1254,7 @@ Status IRuntimeFilter::init_with_desc(const TRuntimeFilterDesc* desc, const TQue DCHECK(node_id >= 0 || (node_id == -1 && !is_consumer())); _is_broadcast_join = desc->is_broadcast_join; + _need_local_merge &= !_is_broadcast_join; _has_local_target = desc->has_local_targets; _has_remote_target = desc->has_remote_targets; _expr_order = desc->expr_order; diff --git a/be/src/exprs/runtime_filter.h b/be/src/exprs/runtime_filter.h index 2dd95a0260e..620d61ae564 100644 --- a/be/src/exprs/runtime_filter.h +++ b/be/src/exprs/runtime_filter.h @@ -434,7 +434,7 @@ protected: bool _opt_remote_rf; // `_need_local_merge` indicates whether this runtime filter is global on this BE. // All runtime filters should be merged on each BE before push_to_remote or publish. - const bool _need_local_merge = false; + bool _need_local_merge = false; std::vector<std::shared_ptr<pipeline::RuntimeFilterTimer>> _filter_timer; }; diff --git a/be/src/pipeline/exec/nested_loop_join_build_operator.cpp b/be/src/pipeline/exec/nested_loop_join_build_operator.cpp index 52b27f03b5f..3a64382bcf3 100644 --- a/be/src/pipeline/exec/nested_loop_join_build_operator.cpp +++ b/be/src/pipeline/exec/nested_loop_join_build_operator.cpp @@ -46,7 +46,7 @@ Status NestedLoopJoinBuildSinkLocalState::init(RuntimeState* state, LocalSinkSta p._runtime_filter_descs[i], p._need_local_merge, &_runtime_filters[i], false)); if (!_runtime_filters[i]->is_broadcast_join()) { return Status::InternalError( - "runtime filter({}) on NestedLoopJoin should be set to is_broadcast_join,", + "runtime filter({}) on NestedLoopJoin should be set to is_broadcast_join", _runtime_filters[i]->get_name()); } } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
