eldenmoon commented on code in PR #39022:
URL: https://github.com/apache/doris/pull/39022#discussion_r1721156376


##########
be/src/vec/columns/column_object.cpp:
##########
@@ -896,18 +1062,28 @@ void ColumnObject::insert_range_from(const IColumn& src, 
size_t start, size_t le
     const auto& src_object = assert_cast<const ColumnObject&>(src);
     for (const auto& entry : src_object.subcolumns) {
         if (!has_subcolumn(entry->path)) {
-            add_sub_column(entry->path, num_rows);
+            if (entry->path.has_nested_part()) {
+                FieldInfo field_info {
+                        .scalar_type_id = 
entry->data.least_common_type.get_base_type_id(),
+                        .num_dimensions = entry->data.get_dimensions()};
+                add_nested_subcolumn(entry->path, field_info, num_rows);

Review Comment:
    only occur once for `try_insert_many_defaults_from_nested` function.  I 
think the logic is quite clear,nested column do nested insert.  
add_nested_subcolumn and add_sub_column need different arguments, combining 
them will be unnecessary, since the logic is clear at present



##########
be/src/vec/columns/column_object.cpp:
##########
@@ -896,18 +1062,28 @@ void ColumnObject::insert_range_from(const IColumn& src, 
size_t start, size_t le
     const auto& src_object = assert_cast<const ColumnObject&>(src);
     for (const auto& entry : src_object.subcolumns) {
         if (!has_subcolumn(entry->path)) {
-            add_sub_column(entry->path, num_rows);
+            if (entry->path.has_nested_part()) {
+                FieldInfo field_info {
+                        .scalar_type_id = 
entry->data.least_common_type.get_base_type_id(),
+                        .num_dimensions = entry->data.get_dimensions()};
+                add_nested_subcolumn(entry->path, field_info, num_rows);

Review Comment:
    only occur once for `try_insert_many_defaults_from_nested` function.  I 
think the logic is quite clear,nested column do nested insert.  
add_nested_subcolumn and add_sub_column need different arguments, combining 
them will be unnecessary, since the logic is clear at present and may lead to 
performance issue



-- 
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

Reply via email to