You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by mo...@apache.org on 2022/07/09 14:26:32 UTC

[doris] branch dev-1.0.1-v20220709 updated: [tmpfix] join node nullable to nonnull

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

morningman pushed a commit to branch dev-1.0.1-v20220709
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/dev-1.0.1-v20220709 by this push:
     new ae1f42fad7 [tmpfix] join node nullable to nonnull
ae1f42fad7 is described below

commit ae1f42fad734f6987be5422edf15e284e1a82d6e
Author: morningman <mo...@apache.org>
AuthorDate: Sat Jul 9 22:17:35 2022 +0800

    [tmpfix] join node nullable to nonnull
---
 be/src/vec/exec/join/vhash_join_node.cpp | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/be/src/vec/exec/join/vhash_join_node.cpp b/be/src/vec/exec/join/vhash_join_node.cpp
index 25be6c80a9..72af7c29b3 100644
--- a/be/src/vec/exec/join/vhash_join_node.cpp
+++ b/be/src/vec/exec/join/vhash_join_node.cpp
@@ -1368,10 +1368,14 @@ Status HashJoinNode::_build_output_block(Block* origin_block, Block* output_bloc
     // we should repalce `insert_column_datas` by `insert_range_from`
 
     auto insert_column_datas = [](auto& to, const auto& from, size_t rows) {
-        if (to->is_nullable() && !from.is_nullable()) {
+        auto [to_null, from_null] = std::pair {to->is_nullable(), from.is_nullable()};
+        if (to_null && !from_null) {
             auto& null_column = reinterpret_cast<ColumnNullable&>(*to);
             null_column.get_nested_column().insert_range_from(from, 0, rows);
             null_column.get_null_map_column().get_data().resize_fill(rows, 0);
+        } else if (!to_null && from_null) {
+            const auto& null_column = reinterpret_cast<const ColumnNullable&>(from);
+            to->insert_range_from(null_column.get_nested_column(), 0, rows);
         } else {
             to->insert_range_from(from, 0, rows);
         }


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