Gabriel39 commented on code in PR #12146: URL: https://github.com/apache/doris/pull/12146#discussion_r957955723
########## be/src/vec/olap/vcollect_iterator.h: ########## @@ -89,10 +89,10 @@ class VCollectIterator { const IteratorRowRef* current_row_ref() const { return &_ref; } - virtual Status next(IteratorRowRef* ref) = 0; - virtual Status next(Block* block) = 0; + virtual Status next(IteratorRowRef* ref) = 0; Review Comment: unnecessary change ########## be/src/exec/text_converter.hpp: ########## @@ -169,19 +169,14 @@ inline bool TextConverter::write_slot(const SlotDescriptor* slot_desc, Tuple* tu inline void TextConverter::write_string_column(const SlotDescriptor* slot_desc, vectorized::MutableColumnPtr* column_ptr, const char* data, size_t len) { - vectorized::IColumn* col_ptr = column_ptr->get(); - // \N means it's NULL - if (LIKELY(slot_desc->is_nullable())) { - auto* nullable_column = reinterpret_cast<vectorized::ColumnNullable*>(column_ptr->get()); - if ((len == 2 && data[0] == '\\' && data[1] == 'N') || len == SQL_NULL_DATA) { - nullable_column->insert_data(nullptr, 0); - return; - } else { - nullable_column->get_null_map_data().push_back(0); - col_ptr = &nullable_column->get_nested_column(); - } + auto* nullable_column = reinterpret_cast<vectorized::ColumnNullable*>(column_ptr->get()); Review Comment: Better to add a DCHECK to ensure this column is nullable ########## be/src/vec/exec/vbroker_scanner.cpp: ########## @@ -98,19 +99,8 @@ Status VBrokerScanner::_fill_dest_columns(const Slice& line, int dest_index = idx++; auto src_slot_desc = _src_slot_descs[i]; - if (!src_slot_desc->is_materialized()) { - continue; - } const Slice& value = _split_values[i]; - if (is_null(value)) { Review Comment: also add a DCHECK? ########## be/src/vec/functions/function_helpers.cpp: ########## @@ -26,6 +26,42 @@ namespace doris::vectorized { +Block create_block_with_nested_columns_only_args(const Block& block, const ColumnNumbers& args) { + std::unordered_set<size_t> args_set(args.begin(), args.end()); + Block res; + size_t columns = block.columns(); + + for (size_t i = 0; i < columns; ++i) { Review Comment: only process columns in args_set instead of all columns -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org