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 3927ceac95 [Bug](runtime filter) Fix runtime filter initialization 
(#24063)
3927ceac95 is described below

commit 3927ceac95ae017652884b26551d905aa55a1626
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 58cbc96e50..553713db92 100644
--- a/be/src/runtime/runtime_filter_mgr.cpp
+++ b/be/src/runtime/runtime_filter_mgr.cpp
@@ -258,48 +258,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]

Reply via email to