This is an automated email from the ASF dual-hosted git repository.

panxiaolei pushed a commit to branch new_join2
in repository https://gitbox.apache.org/repos/asf/doris.git

commit 65258c607e05a620d0543d02d5f6e768621a4c7a
Author: BiteTheDDDDt <pxl...@qq.com>
AuthorDate: Mon Nov 27 13:23:41 2023 +0800

    update fix
---
 be/src/pipeline/exec/hashjoin_build_sink.cpp | 7 ++++---
 be/src/vec/core/block.cpp                    | 4 ++--
 2 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/be/src/pipeline/exec/hashjoin_build_sink.cpp 
b/be/src/pipeline/exec/hashjoin_build_sink.cpp
index cc32f880570..13d07a1522e 100644
--- a/be/src/pipeline/exec/hashjoin_build_sink.cpp
+++ b/be/src/pipeline/exec/hashjoin_build_sink.cpp
@@ -49,9 +49,7 @@ Status HashJoinBuildSinkLocalState::init(RuntimeState* state, 
LocalSinkStateInfo
             _parent->operator_id(), _parent->node_id(), 
state->get_query_ctx());
     auto& p = _parent->cast<HashJoinBuildSinkOperatorX>();
     _shared_state->join_op_variants = p._join_op_variants;
-    if (p._is_broadcast_join && 
state->enable_share_hash_table_for_broadcast_join()) {
-        _shared_state->build_block = p._shared_hash_table_context->block;
-    }
+
     _shared_state->is_null_safe_eq_join = p._is_null_safe_eq_join;
     _shared_state->store_null_in_hash_table = p._store_null_in_hash_table;
     _build_expr_ctxs.resize(p._build_expr_ctxs.size());
@@ -513,6 +511,7 @@ Status HashJoinBuildSinkOperatorX::sink(RuntimeState* 
state, vectorized::Block*
                         _shared_hash_table_context);
             }
             _shared_hashtable_controller->signal(node_id());
+            _shared_hash_table_context->block = 
local_state._shared_state->build_block;
         }
     } else if (!local_state._should_build_hash_table) {
         DCHECK(_shared_hashtable_controller != nullptr);
@@ -540,6 +539,8 @@ Status HashJoinBuildSinkOperatorX::sink(RuntimeState* 
state, vectorized::Block*
                 *std::static_pointer_cast<vectorized::HashTableVariants>(
                         _shared_hash_table_context->hash_table_variants));
 
+        local_state._shared_state->build_block = 
_shared_hash_table_context->block;
+
         if (!_shared_hash_table_context->runtime_filters.empty()) {
             auto ret = std::visit(
                     Overload {
diff --git a/be/src/vec/core/block.cpp b/be/src/vec/core/block.cpp
index ae7f9897baf..723dc3ac639 100644
--- a/be/src/vec/core/block.cpp
+++ b/be/src/vec/core/block.cpp
@@ -265,7 +265,7 @@ void Block::erase(const String& name) {
 ColumnWithTypeAndName& Block::safe_get_by_position(size_t position) {
     if (position >= data.size()) {
         throw Exception(ErrorCode::INTERNAL_ERROR,
-                        "invalid input position, position={}, data.size{}, 
names={}", position,
+                        "invalid input position, position={}, data.size={}, 
names={}", position,
                         data.size(), dump_names());
     }
     return data[position];
@@ -274,7 +274,7 @@ ColumnWithTypeAndName& Block::safe_get_by_position(size_t 
position) {
 const ColumnWithTypeAndName& Block::safe_get_by_position(size_t position) 
const {
     if (position >= data.size()) {
         throw Exception(ErrorCode::INTERNAL_ERROR,
-                        "invalid input position, position={}, data.size{}, 
names={}", position,
+                        "invalid input position, position={}, data.size={}, 
names={}", position,
                         data.size(), dump_names());
     }
     return data[position];


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to