This is an automated email from the ASF dual-hosted git repository. kxiao pushed a commit to branch branch-2.0 in repository https://gitbox.apache.org/repos/asf/doris.git
commit 0802ecac384edaba17d9725e430db8444500c777 Author: Gabriel <[email protected]> AuthorDate: Fri Sep 8 10:27:20 2023 +0800 [Bug](runtime filter) Fix runtime filter initialization (#24063) In be.WARNING, print lots of logs like 'runtime filter params meet error'. This is misleading message --- be/src/runtime/runtime_filter_mgr.cpp | 63 +++++++++++++++-------------------- 1 file changed, 27 insertions(+), 36 deletions(-) diff --git a/be/src/runtime/runtime_filter_mgr.cpp b/be/src/runtime/runtime_filter_mgr.cpp index 54b83c5330..64ef85b52a 100644 --- a/be/src/runtime/runtime_filter_mgr.cpp +++ b/be/src/runtime/runtime_filter_mgr.cpp @@ -257,48 +257,39 @@ Status RuntimeFilterMergeControllerEntity::init(UniqueId query_id, UniqueId frag _mem_tracker = std::make_shared<MemTracker>("RuntimeFilterMergeControllerEntity", ExecEnv::GetInstance()->experimental_mem_tracker()); SCOPED_CONSUME_MEM_TRACKER(_mem_tracker.get()); - for (auto& filterid_to_desc : runtime_filter_params.rid_to_runtime_filter) { - int filter_id = filterid_to_desc.first; - const auto& target_iter = runtime_filter_params.rid_to_target_param.find(filter_id); - if (target_iter == runtime_filter_params.rid_to_target_param.end() && - !runtime_filter_params.__isset.rid_to_target_paramv2) { - return Status::InternalError("runtime filter params meet error"); - } else if (target_iter == runtime_filter_params.rid_to_target_param.end()) { - const auto& targetv2_iter = runtime_filter_params.rid_to_target_paramv2.find(filter_id); - if (targetv2_iter == runtime_filter_params.rid_to_target_paramv2.end()) { - return Status::InternalError("runtime filter params meet error"); - } - const auto& build_iter = - runtime_filter_params.runtime_filter_builder_num.find(filter_id); - if (build_iter == runtime_filter_params.runtime_filter_builder_num.end()) { - return Status::InternalError("runtime filter params meet error"); - } - _init_with_desc(&filterid_to_desc.second, &query_options, &targetv2_iter->second, - build_iter->second); - } else { - const auto& build_iter = - runtime_filter_params.runtime_filter_builder_num.find(filter_id); - if (build_iter == runtime_filter_params.runtime_filter_builder_num.end()) { - return Status::InternalError("runtime filter params meet error"); - } - _init_with_desc(&filterid_to_desc.second, &query_options, &target_iter->second, - build_iter->second); - } - } if (runtime_filter_params.__isset.rid_to_runtime_filter) { for (auto& filterid_to_desc : runtime_filter_params.rid_to_runtime_filter) { int filter_id = filterid_to_desc.first; const auto& target_iter = runtime_filter_params.rid_to_target_param.find(filter_id); - if (target_iter == runtime_filter_params.rid_to_target_param.end()) { - return Status::InternalError("runtime filter params meet error"); - } - const auto& build_iter = - runtime_filter_params.runtime_filter_builder_num.find(filter_id); - if (build_iter == runtime_filter_params.runtime_filter_builder_num.end()) { + if (target_iter == runtime_filter_params.rid_to_target_param.end() && + !runtime_filter_params.__isset.rid_to_target_paramv2) { + // This runtime filter has to target info return Status::InternalError("runtime filter params meet error"); + } else if (target_iter == runtime_filter_params.rid_to_target_param.end()) { + const auto& targetv2_iter = + runtime_filter_params.rid_to_target_paramv2.find(filter_id); + if (targetv2_iter == runtime_filter_params.rid_to_target_paramv2.end()) { + // This runtime filter has to target info + return Status::InternalError("runtime filter params meet error"); + } + const auto& build_iter = + runtime_filter_params.runtime_filter_builder_num.find(filter_id); + if (build_iter == runtime_filter_params.runtime_filter_builder_num.end()) { + // This runtime filter has to builder info + return Status::InternalError("runtime filter params meet error"); + } + + RETURN_IF_ERROR(_init_with_desc(&filterid_to_desc.second, &query_options, + &targetv2_iter->second, build_iter->second)); + } else { + const auto& build_iter = + runtime_filter_params.runtime_filter_builder_num.find(filter_id); + if (build_iter == runtime_filter_params.runtime_filter_builder_num.end()) { + return Status::InternalError("runtime filter params meet error"); + } + RETURN_IF_ERROR(_init_with_desc(&filterid_to_desc.second, &query_options, + &target_iter->second, build_iter->second)); } - _init_with_desc(&filterid_to_desc.second, &query_options, &target_iter->second, - build_iter->second); } } return Status::OK(); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
