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

yiguolei pushed a commit to branch branch-1.1-lts
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-1.1-lts by this push:
     new 87ce8078fc [fix](join)ColumnNullable need handle const column with 
nullable const value (#13866) (#13979)
87ce8078fc is described below

commit 87ce8078fcfdaed077d38f0115ef395db75d04f3
Author: starocean999 <40539150+starocean...@users.noreply.github.com>
AuthorDate: Sat Nov 5 19:18:35 2022 +0800

    [fix](join)ColumnNullable need handle const column with nullable const 
value (#13866) (#13979)
---
 be/src/vec/columns/column_nullable.cpp | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/be/src/vec/columns/column_nullable.cpp 
b/be/src/vec/columns/column_nullable.cpp
index 41a58f063f..b9d4d1de1a 100644
--- a/be/src/vec/columns/column_nullable.cpp
+++ b/be/src/vec/columns/column_nullable.cpp
@@ -34,6 +34,13 @@ ColumnNullable::ColumnNullable(MutableColumnPtr&& 
nested_column_, MutableColumnP
     /// ColumnNullable cannot have constant nested column. But constant 
argument could be passed. Materialize it.
     nested_column = get_nested_column().convert_to_full_column_if_const();
 
+    // after convert const column to full column, it may be a nullable column
+    if (nested_column->is_nullable()) {
+        assert_cast<ColumnNullable&>(*nested_column).apply_null_map((const 
ColumnUInt8&)*null_map);
+        null_map = 
assert_cast<ColumnNullable&>(*nested_column).get_null_map_column_ptr();
+        nested_column = 
assert_cast<ColumnNullable&>(*nested_column).get_nested_column_ptr();
+    }
+
     if (!get_nested_column().can_be_inside_nullable()) {
         LOG(FATAL) << get_nested_column().get_name() << " cannot be inside 
Nullable column";
     }


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

Reply via email to