github-actions[bot] commented on code in PR #15966:
URL: https://github.com/apache/doris/pull/15966#discussion_r1089900145


##########
be/src/vec/data_types/data_type_factory.cpp:
##########
@@ -169,6 +179,12 @@
         }
         nested = std::make_shared<DataTypeStruct>(dataTypes, names);
         break;
+    case TYPE_MAP:
+        DCHECK(col_desc.children.size() == 2);
+        nested = std::make_shared<vectorized::DataTypeMap>(
+                create_data_type(col_desc.children[0], col_desc.contains_null),

Review Comment:
   warning: no member named 'contains_null' in 'doris::TypeDescriptor' 
[clang-diagnostic-error]
   ```cpp
                   create_data_type(col_desc.children[0], 
col_desc.contains_null),
                                                                   ^
   ```
   



##########
be/src/runtime/types.cpp:
##########
@@ -223,6 +227,15 @@
         children.push_back(TypeDescriptor(types, idx));
         break;
     }
+    case TTypeNodeType::MAP: {
+        type = TYPE_MAP;
+        if (node.has_contains_null()) {
+            contains_null = node.contains_null();

Review Comment:
   warning: no viable overloaded '=' [clang-diagnostic-error]
   ```cpp
               contains_null = node.contains_null();
                             ^
   ```
   **/usr/include/c++/11/bits/stl_bvector.h:735:** candidate function not 
viable: no known conversion from 'bool' to 'const std::vector<bool>' for 1st 
argument
   ```cpp
         operator=(const vector& __x)
         ^
   ```
   **/usr/include/c++/11/bits/stl_bvector.h:766:** candidate function not 
viable: no known conversion from 'bool' to 'std::vector<bool>' for 1st argument
   ```cpp
         operator=(vector&& __x) noexcept(_Bit_alloc_traits::_S_nothrow_move())
         ^
   ```
   **/usr/include/c++/11/bits/stl_bvector.h:791:** candidate function not 
viable: no known conversion from 'bool' to 'initializer_list<bool>' for 1st 
argument
   ```cpp
         operator=(initializer_list<bool> __l)
         ^
   ```
   



##########
be/src/vec/sink/vmysql_result_writer.cpp:
##########
@@ -715,6 +732,18 @@
             }
             break;
         }
+        case TYPE_MAP: {
+            if (type_ptr->is_nullable()) {
+                auto& nested_type =
+                        assert_cast<const 
DataTypeNullable&>(*type_ptr).get_nested_type(); //for map
+                status = _add_one_column<PrimitiveType::TYPE_MAP, 
true>(column_ptr, result,
+                                                                        
nested_type);
+            } else {
+                status = _add_one_column<PrimitiveType::TYPE_MAP, 
false>(column_ptr, result,

Review Comment:
   warning: no matching member function for call to '_add_one_column' 
[clang-diagnostic-error]
   ```cpp
                   status = _add_one_column<PrimitiveType::TYPE_MAP, 
false>(column_ptr, result,
                            ^
   ```
   **be/src/vec/sink/vmysql_result_writer.cpp:65:** candidate function template 
not viable: no known conversion from 'doris::vectorized::DataTypePtr' (aka 
'shared_ptr<const doris::vectorized::IDataType>') to 'int' for 3rd argument
   ```cpp
   Status VMysqlResultWriter::_add_one_column(const ColumnPtr& column_ptr,
                              ^
   ```
   



##########
be/src/vec/sink/vmysql_result_writer.cpp:
##########
@@ -715,6 +732,18 @@
             }
             break;
         }
+        case TYPE_MAP: {
+            if (type_ptr->is_nullable()) {
+                auto& nested_type =
+                        assert_cast<const 
DataTypeNullable&>(*type_ptr).get_nested_type(); //for map
+                status = _add_one_column<PrimitiveType::TYPE_MAP, 
true>(column_ptr, result,

Review Comment:
   warning: no matching member function for call to '_add_one_column' 
[clang-diagnostic-error]
   ```cpp
                   status = _add_one_column<PrimitiveType::TYPE_MAP, 
true>(column_ptr, result,
                            ^
   ```
   **be/src/vec/sink/vmysql_result_writer.cpp:65:** candidate function template 
not viable: no known conversion from 'const doris::vectorized::DataTypePtr' 
(aka 'const shared_ptr<const doris::vectorized::IDataType>') to 'int' for 3rd 
argument
   ```cpp
   Status VMysqlResultWriter::_add_one_column(const ColumnPtr& column_ptr,
                              ^
   ```
   



##########
be/src/vec/data_types/data_type_factory.cpp:
##########
@@ -169,6 +179,12 @@ DataTypePtr DataTypeFactory::create_data_type(const 
TypeDescriptor& col_desc, bo
         }
         nested = std::make_shared<DataTypeStruct>(dataTypes, names);
         break;
+    case TYPE_MAP:

Review Comment:
   warning: cannot jump from switch statement to this case label 
[clang-diagnostic-error]
   ```cpp
       case TYPE_MAP:
       ^
   ```
   **be/src/vec/data_types/data_type_factory.cpp:172:** jump bypasses variable 
initialization
   ```cpp
           Strings names;
                   ^
   ```
   **be/src/vec/data_types/data_type_factory.cpp:171:** jump bypasses variable 
initialization
   ```cpp
           DataTypes dataTypes;
                     ^
   ```
   **be/src/vec/data_types/data_type_factory.cpp:169:** jump bypasses variable 
initialization
   ```cpp
           size_t child_size = col_desc.children.size();
                  ^
   ```
   



##########
be/src/vec/sink/vmysql_result_writer.cpp:
##########
@@ -185,6 +187,21 @@ Status VMysqlResultWriter::_add_one_column(const 
ColumnPtr& column_ptr,
                 begin = false;
             }
             buf_ret = _buffer.push_string("]", 1);
+            _buffer.close_dynamic_mode();
+            result->result_batch.rows[i].append(_buffer.buf(), 
_buffer.length());
+        }
+    } else if constexpr (type == TYPE_MAP) {
+        auto& map_type = assert_cast<const DataTypeMap&>(*nested_type_ptr);

Review Comment:
   warning: use of undeclared identifier 'nested_type_ptr' 
[clang-diagnostic-error]
   ```cpp
           auto& map_type = assert_cast<const DataTypeMap&>(*nested_type_ptr);
                                                             ^
   ```
   



##########
be/src/vec/data_types/data_type_factory.cpp:
##########
@@ -169,6 +179,12 @@
         }
         nested = std::make_shared<DataTypeStruct>(dataTypes, names);
         break;
+    case TYPE_MAP:
+        DCHECK(col_desc.children.size() == 2);
+        nested = std::make_shared<vectorized::DataTypeMap>(
+                create_data_type(col_desc.children[0], col_desc.contains_null),
+                create_data_type(col_desc.children[1], 
col_desc.contains_null));

Review Comment:
   warning: no member named 'contains_null' in 'doris::TypeDescriptor' 
[clang-diagnostic-error]
   ```cpp
                   create_data_type(col_desc.children[1], 
col_desc.contains_null));
                                                                   ^
   ```
   



##########
be/src/runtime/types.cpp:
##########
@@ -223,6 +227,15 @@ TypeDescriptor::TypeDescriptor(const 
google::protobuf::RepeatedPtrField<PTypeNod
         children.push_back(TypeDescriptor(types, idx));
         break;
     }
+    case TTypeNodeType::MAP: {
+        type = TYPE_MAP;
+        if (node.has_contains_null()) {
+            contains_null = node.contains_null();

Review Comment:
   warning: use of undeclared identifier 'contains_null'; did you mean 
'contains_nulls'? [clang-diagnostic-error]
   
   ```suggestion
               contains_nulls = node.contains_null();
   ```
   **be/src/runtime/types.h:66:** 'contains_nulls' declared here
   ```cpp
       std::vector<bool> contains_nulls;
                         ^
   ```
   



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to