github-actions[bot] commented on code in PR #32867:
URL: https://github.com/apache/doris/pull/32867#discussion_r1547585556
##########
be/src/vec/data_types/serde/data_type_ipv6_serde.cpp:
##########
@@ -88,5 +88,34 @@ Status
DataTypeIPv6SerDe::deserialize_one_cell_from_json(IColumn& column, Slice&
return Status::OK();
}
+Status DataTypeIPv6SerDe::write_column_to_pb(const IColumn& column, PValues&
result, int start,
Review Comment:
warning: method 'write_column_to_pb' can be made static
[readability-convert-member-functions-to-static]
be/src/vec/data_types/serde/data_type_ipv6_serde.cpp:91:
```diff
- int end) const {
+ int end) {
```
be/src/vec/data_types/serde/data_type_ipv6_serde.h:55:
```diff
- Status write_column_to_pb(const IColumn& column, PValues& result, int
start,
- int end) const override;
+ static Status write_column_to_pb(const IColumn& column, PValues&
result, int start,
+ int end) override;
```
##########
be/src/vec/data_types/serde/data_type_ipv6_serde.cpp:
##########
@@ -88,5 +88,34 @@
return Status::OK();
}
+Status DataTypeIPv6SerDe::write_column_to_pb(const IColumn& column, PValues&
result, int start,
+ int end) const {
+ const auto& column_data = assert_cast<const ColumnIPv6&>(column);
+ result.mutable_string_value()->Reserve(end - start);
+ auto* ptype = result.mutable_type();
+ ptype->set_id(PGenericType::IPV6);
+ for (int i = start; i < end; ++i) {
+ IPv6Value ipv6_value(column_data.get_data()[i]);
+ result.add_string_value(ipv6_value.to_string());
+ }
+ return Status::OK();
+};
+
+Status DataTypeIPv6SerDe::read_column_from_pb(IColumn& column, const PValues&
arg) const {
Review Comment:
warning: method 'read_column_from_pb' can be made static
[readability-convert-member-functions-to-static]
```suggestion
Status DataTypeIPv6SerDe::read_column_from_pb(IColumn& column, const
PValues& arg) {
```
be/src/vec/data_types/serde/data_type_ipv6_serde.h:57:
```diff
- Status read_column_from_pb(IColumn& column, const PValues& arg) const
override;
+ static Status read_column_from_pb(IColumn& column, const PValues& arg)
override;
```
##########
be/test/vec/data_types/serde/data_type_serde_pb_test.cpp:
##########
@@ -28,53 +29,282 @@
#include <string>
#include <vector>
+#include "common/status.h"
#include "gtest/gtest_pred_impl.h"
#include "olap/hll.h"
#include "util/bitmap_value.h"
#include "util/quantile_state.h"
#include "vec/columns/column.h"
+#include "vec/columns/column_array.h"
#include "vec/columns/column_complex.h"
#include "vec/columns/column_decimal.h"
+#include "vec/columns/column_map.h"
#include "vec/columns/column_nullable.h"
#include "vec/columns/column_string.h"
+#include "vec/columns/column_struct.h"
#include "vec/columns/column_vector.h"
+#include "vec/core/block.h"
#include "vec/core/types.h"
#include "vec/data_types/data_type.h"
+#include "vec/data_types/data_type_array.h"
#include "vec/data_types/data_type_bitmap.h"
#include "vec/data_types/data_type_decimal.h"
#include "vec/data_types/data_type_hll.h"
#include "vec/data_types/data_type_ipv4.h"
#include "vec/data_types/data_type_ipv6.h"
+#include "vec/data_types/data_type_map.h"
#include "vec/data_types/data_type_nullable.h"
#include "vec/data_types/data_type_number.h"
#include "vec/data_types/data_type_quantilestate.h"
#include "vec/data_types/data_type_string.h"
+#include "vec/data_types/data_type_struct.h"
#include "vec/data_types/serde/data_type_serde.h"
namespace doris::vectorized {
inline void column_to_pb(const DataTypePtr data_type, const IColumn& col,
PValues* result) {
const DataTypeSerDeSPtr serde = data_type->get_serde();
- static_cast<void>(serde->write_column_to_pb(col, *result, 0, col.size()));
+ Status st = serde->write_column_to_pb(col, *result, 0, col.size());
+ if (!st.ok()) {
+ std::cerr << "column_to_pb error, maybe not impl it: " << st.msg() <<
" "
+ << data_type->get_name() << std::endl;
+ }
}
-inline void pb_to_column(const DataTypePtr data_type, PValues& result,
IColumn& col) {
+inline bool pb_to_column(const DataTypePtr data_type, PValues& result,
IColumn& col) {
auto serde = data_type->get_serde();
- static_cast<void>(serde->read_column_from_pb(col, result));
+ Status st = serde->read_column_from_pb(col, result);
+ if (!st.ok()) {
+ std::cerr << "pb_to_column error, maybe not impl it: " << st.msg() <<
" "
+ << data_type->get_name() << std::endl;
+ return false;
Review Comment:
warning: redundant boolean literal in conditional return statement
[readability-simplify-boolean-expr]
be/test/vec/data_types/serde/data_type_serde_pb_test.cpp:76:
```diff
- if (!st.ok()) {
- std::cerr << "pb_to_column error, maybe not impl it: " << st.msg()
<< " "
- << data_type->get_name() << std::endl;
- return false;
- }
- return true;
+ return st.ok();
```
##########
be/test/vec/data_types/serde/data_type_serde_pb_test.cpp:
##########
@@ -19,6 +19,7 @@
#include <gen_cpp/types.pb.h>
Review Comment:
warning: 'gen_cpp/types.pb.h' file not found [clang-diagnostic-error]
```cpp
#include <gen_cpp/types.pb.h>
^
```
--
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]