From 9bbfe7ae3c2ea17b00c6031605ae308959e99191 Mon Sep 17 00:00:00 2001 From: Kang Date: Wed, 29 Nov 2023 17:13:48 +0800 Subject: [PATCH] return RuntimeError if copy_column_data_to_block nullable mismatch --- be/src/vec/core/block.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/be/src/vec/core/block.h b/be/src/vec/core/block.h index ebb0f6e23d93cb..939597d50b6550 100644 --- a/be/src/vec/core/block.h +++ b/be/src/vec/core/block.h @@ -154,6 +154,12 @@ class Block { reinterpret_cast(raw_res_ptr.get()); col_ptr_nullable->get_null_map_column().insert_many_defaults(select_size); raw_res_ptr = col_ptr_nullable->get_nested_column_ptr(); + } else if (!raw_res_ptr->is_nullable() && input_col_ptr->is_nullable()) { + LOG(WARNING) << "nullable mismatch for raw_res_column: " + << this->get_by_position(block_cid).dump_structure() + << " input_column: " << input_col_ptr->dump_structure() + << " block_cid: " << block_cid << " select_size: " << select_size; + return Status::RuntimeError("copy_column_data_to_block nullable mismatch"); } return input_col_ptr->filter_by_selector(sel_rowid_idx, select_size, raw_res_ptr);