yiguolei commented on code in PR #18627: URL: https://github.com/apache/doris/pull/18627#discussion_r1166167349
########## be/src/vec/data_types/data_type_nullable.h: ########## @@ -98,6 +99,10 @@ class DataTypeNullable final : public IDataType { const DataTypePtr& get_nested_type() const { return nested_data_type; } bool is_null_literal() const override { return nested_data_type->is_null_literal(); } + DataTypeSerDeSPtr get_serde() const override { + return std::make_shared<DataTypeNullableSerDe>(nested_data_type->get_serde()); Review Comment: nullable 可能不对,nullable 可能是有2列,一列是nested,另外一列是表示一列是否为null,比如下面的代码: void RPCFnImpl::convert_nullable_col_to_pvalue(const ColumnPtr& column, const DataTypePtr& data_type, const ColumnUInt8& null_col, PValues* arg, int start, int end) { int row_count = end - start; if (column->has_null(row_count)) { auto* null_map = arg->mutable_null_map(); null_map->Reserve(row_count); const auto* col = check_and_get_column<ColumnUInt8>(null_col); auto& data = col->get_data(); null_map->Add(data.begin() + start, data.begin() + end); RPCFnImpl::convert_col_to_pvalue<true>(column, data_type, arg, start, end); } else { RPCFnImpl::convert_col_to_pvalue<false>(column, data_type, arg, start, end); } } template <bool nullable> void RPCFnImpl::convert_col_to_pvalue(const ColumnPtr& column, const DataTypePtr& data_type, PValues* arg, int start, int end) { -- 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