This is an automated email from the ASF dual-hosted git repository.
panxiaolei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new cfe01ed808f [Chore](function) remove
is_value_unambiguously_represented_in_contiguous_memory_region (#55373)
cfe01ed808f is described below
commit cfe01ed808f97ab44f20fa95ff221fb6c88a8a10
Author: Pxl <[email protected]>
AuthorDate: Fri Aug 29 10:14:12 2025 +0800
[Chore](function) remove
is_value_unambiguously_represented_in_contiguous_memory_region (#55373)
remove is_value_unambiguously_represented_in_contiguous_memory_region
---
.../aggregate_function_group_array_intersect.cpp | 41 ++++------------------
.../aggregate_function_group_array_intersect.h | 25 ++++---------
be/src/vec/data_types/data_type.h | 11 ------
be/src/vec/data_types/data_type_array.h | 4 ---
be/src/vec/data_types/data_type_bitmap.h | 4 ---
be/src/vec/data_types/data_type_decimal.h | 3 --
be/src/vec/data_types/data_type_hll.h | 4 ---
be/src/vec/data_types/data_type_jsonb.h | 3 --
be/src/vec/data_types/data_type_map.h | 4 ---
be/src/vec/data_types/data_type_nullable.h | 4 ---
be/src/vec/data_types/data_type_number_base.h | 3 --
be/src/vec/data_types/data_type_quantilestate.h | 4 ---
be/src/vec/data_types/data_type_string.h | 3 --
be/test/vec/data_types/common_data_type_test.h | 5 +--
.../vec/data_types/data_type_agg_state_test.cpp | 3 +-
be/test/vec/data_types/data_type_array_test.cpp | 5 +--
be/test/vec/data_types/data_type_bitmap_test.cpp | 3 +-
.../vec/data_types/data_type_datetime_v1_test.cpp | 1 -
be/test/vec/data_types/data_type_decimal_test.cpp | 2 --
.../data_type_fixed_length_object_test.cpp | 3 +-
be/test/vec/data_types/data_type_hll_test.cpp | 3 +-
be/test/vec/data_types/data_type_ip_test.cpp | 35 +++++++++---------
be/test/vec/data_types/data_type_jsonb_test.cpp | 2 --
be/test/vec/data_types/data_type_number_test.cpp | 2 --
.../data_types/data_type_quantile_state_test.cpp | 3 +-
be/test/vec/data_types/data_type_string_test.cpp | 2 --
be/test/vec/data_types/data_type_time_v2_test.cpp | 1 -
27 files changed, 36 insertions(+), 147 deletions(-)
diff --git
a/be/src/vec/aggregate_functions/aggregate_function_group_array_intersect.cpp
b/be/src/vec/aggregate_functions/aggregate_function_group_array_intersect.cpp
index 996c3a0c903..697e5776824 100644
---
a/be/src/vec/aggregate_functions/aggregate_function_group_array_intersect.cpp
+++
b/be/src/vec/aggregate_functions/aggregate_function_group_array_intersect.cpp
@@ -26,48 +26,20 @@
namespace doris::vectorized {
#include "common/compile_check_begin.h"
-IAggregateFunction* create_with_extra_types(const DataTypePtr& nested_type,
- const DataTypes& argument_types,
- const AggregateFunctionAttr& attr)
{
- if (nested_type->get_primitive_type() == PrimitiveType::TYPE_DATE ||
- nested_type->get_primitive_type() == PrimitiveType::TYPE_DATETIME) {
- throw Exception(ErrorCode::INVALID_ARGUMENT,
- "We don't support array<date> or array<datetime> for "
- "group_array_intersect(), please use array<datev2> or
array<datetimev2>.");
- } else if (nested_type->get_primitive_type() ==
PrimitiveType::TYPE_DATEV2) {
- return new
AggregateFunctionGroupArrayIntersect<PrimitiveType::TYPE_DATEV2>(argument_types);
- } else if (nested_type->get_primitive_type() ==
PrimitiveType::TYPE_DATETIMEV2) {
- return new
AggregateFunctionGroupArrayIntersect<PrimitiveType::TYPE_DATETIMEV2>(
- argument_types);
- } else {
- /// Check that we can use plain version of
AggregateFunctionGroupArrayIntersectGeneric
- if
(nested_type->is_value_unambiguously_represented_in_contiguous_memory_region())
- return new
AggregateFunctionGroupArrayIntersectGeneric<true>(argument_types);
- else
- return new
AggregateFunctionGroupArrayIntersectGeneric<false>(argument_types);
- }
-}
-
inline AggregateFunctionPtr
create_aggregate_function_group_array_intersect_impl(
const std::string& name, const DataTypes& argument_types, const bool
result_is_nullable,
const AggregateFunctionAttr& attr) {
const auto& nested_type = remove_nullable(
dynamic_cast<const
DataTypeArray&>(*(argument_types[0])).get_nested_type());
AggregateFunctionPtr res = creator_with_type_list<
- TYPE_TINYINT, TYPE_SMALLINT, TYPE_INT, TYPE_BIGINT,
-
TYPE_LARGEINT>::create<AggregateFunctionGroupArrayIntersect>(argument_types,
-
result_is_nullable, attr);
-
- if (!res) {
- res = AggregateFunctionPtr(create_with_extra_types(nested_type,
argument_types, attr));
- }
+ TYPE_TINYINT, TYPE_SMALLINT, TYPE_INT, TYPE_BIGINT, TYPE_LARGEINT,
TYPE_DATEV2,
+
TYPE_DATETIMEV2>::create<AggregateFunctionGroupArrayIntersect>(argument_types,
+
result_is_nullable,
+
attr);
if (!res) {
- throw Exception(ErrorCode::INVALID_ARGUMENT,
- "Illegal type {} of argument for aggregate function
{}",
- argument_types[0]->get_name(), name);
+ res = AggregateFunctionPtr(new
AggregateFunctionGroupArrayIntersectGeneric(argument_types));
}
-
return res;
}
@@ -77,11 +49,12 @@ AggregateFunctionPtr
create_aggregate_function_group_array_intersect(
assert_arity_range(name, argument_types, 1, 1);
const DataTypePtr& argument_type = remove_nullable(argument_types[0]);
- if (argument_type->get_primitive_type() != TYPE_ARRAY)
+ if (argument_type->get_primitive_type() != TYPE_ARRAY) {
throw Exception(ErrorCode::INVALID_ARGUMENT,
"Aggregate function groupArrayIntersect accepts only
array type argument. "
"Provided argument type: " +
argument_type->get_name());
+ }
return create_aggregate_function_group_array_intersect_impl(name,
{argument_type},
result_is_nullable, attr);
}
diff --git
a/be/src/vec/aggregate_functions/aggregate_function_group_array_intersect.h
b/be/src/vec/aggregate_functions/aggregate_function_group_array_intersect.h
index 2303e0b253b..48e4567af79 100644
--- a/be/src/vec/aggregate_functions/aggregate_function_group_array_intersect.h
+++ b/be/src/vec/aggregate_functions/aggregate_function_group_array_intersect.h
@@ -323,20 +323,17 @@ struct AggregateFunctionGroupArrayIntersectGenericData {
/** Template parameter with true value should be used for columns that store
their elements in memory continuously.
* For such columns group_array_intersect() can be implemented more
efficiently (especially for small numeric arrays).
*/
-template <bool is_plain_column = false>
class AggregateFunctionGroupArrayIntersectGeneric
- : public IAggregateFunctionDataHelper<
- AggregateFunctionGroupArrayIntersectGenericData,
-
AggregateFunctionGroupArrayIntersectGeneric<is_plain_column>> {
+ : public
IAggregateFunctionDataHelper<AggregateFunctionGroupArrayIntersectGenericData,
+
AggregateFunctionGroupArrayIntersectGeneric> {
private:
using State = AggregateFunctionGroupArrayIntersectGenericData;
DataTypePtr input_data_type;
public:
AggregateFunctionGroupArrayIntersectGeneric(const DataTypes&
input_data_type_)
- : IAggregateFunctionDataHelper<
- AggregateFunctionGroupArrayIntersectGenericData,
-
AggregateFunctionGroupArrayIntersectGeneric<is_plain_column>>(
+ :
IAggregateFunctionDataHelper<AggregateFunctionGroupArrayIntersectGenericData,
+
AggregateFunctionGroupArrayIntersectGeneric>(
input_data_type_),
input_data_type(input_data_type_[0]) {}
@@ -378,13 +375,7 @@ public:
const bool is_null_element =
is_column_data_nullable && col_null->is_null_at(offset +
i);
- StringRef src = StringRef();
- if constexpr (is_plain_column) {
- src = nested_column_data->get_data_at(offset + i);
- } else {
- const char* begin = nullptr;
- src = nested_column_data->serialize_value_into_arena(offset +
i, arena, begin);
- }
+ StringRef src = nested_column_data->get_data_at(offset + i);
src.data = is_null_element ? nullptr : arena.insert(src.data,
src.size);
return src;
@@ -506,11 +497,7 @@ public:
HybridSetBase::IteratorBase* it = set->begin();
while (it->has_next()) {
const auto* value = reinterpret_cast<const
StringRef*>(it->get_value());
- if constexpr (is_plain_column) {
- data_to.insert_data(value->data, value->size);
- } else {
- std::ignore =
data_to.deserialize_and_insert_from_arena(value->data);
- }
+ data_to.insert_data(value->data, value->size);
it->next();
}
}
diff --git a/be/src/vec/data_types/data_type.h
b/be/src/vec/data_types/data_type.h
index 7ff811b7de6..4cb652089ab 100644
--- a/be/src/vec/data_types/data_type.h
+++ b/be/src/vec/data_types/data_type.h
@@ -170,17 +170,6 @@ public:
*/
virtual bool is_value_represented_by_number() const { return false; }
- /** Values are unambiguously identified by contents of contiguous memory
region,
- * that can be obtained by IColumn::get_data_at method.
- * Examples: numbers, Date, DateTime, String, FixedString,
- * and Arrays of numbers, Date, DateTime, FixedString, Enum, but not
String.
- * (because Array(String) values became ambiguous if you concatenate
Strings).
- * Counterexamples: Nullable, Tuple.
- */
- virtual bool
is_value_unambiguously_represented_in_contiguous_memory_region() const {
- return false;
- }
-
/** Example: numbers, Date, DateTime, FixedString, Enum... Nullable and
Tuple of such types.
* Counterexamples: String, Array.
* It's Ok to return false for AggregateFunction despite the fact that
some of them have fixed size state.
diff --git a/be/src/vec/data_types/data_type_array.h
b/be/src/vec/data_types/data_type_array.h
index 026882796db..9cd35bfac99 100644
--- a/be/src/vec/data_types/data_type_array.h
+++ b/be/src/vec/data_types/data_type_array.h
@@ -88,10 +88,6 @@ public:
}
bool is_comparable() const override { return nested->is_comparable(); }
- bool is_value_unambiguously_represented_in_contiguous_memory_region()
const override {
- return
nested->is_value_unambiguously_represented_in_contiguous_memory_region();
- }
-
const DataTypePtr& get_nested_type() const { return nested; }
/// 1 for plain array, 2 for array of arrays and so on.
diff --git a/be/src/vec/data_types/data_type_bitmap.h
b/be/src/vec/data_types/data_type_bitmap.h
index 12e1a158fee..deb6e2f09a0 100644
--- a/be/src/vec/data_types/data_type_bitmap.h
+++ b/be/src/vec/data_types/data_type_bitmap.h
@@ -70,10 +70,6 @@ public:
bool should_align_right_in_pretty_formats() const override { return false;
}
bool text_can_contain_only_valid_utf8() const override { return true; }
bool is_comparable() const override { return false; }
- // TODO:
- bool is_value_unambiguously_represented_in_contiguous_memory_region()
const override {
- return true;
- }
bool equals(const IDataType& rhs) const override { return typeid(rhs) ==
typeid(*this); }
diff --git a/be/src/vec/data_types/data_type_decimal.h
b/be/src/vec/data_types/data_type_decimal.h
index b6a11897deb..c41f484f9b6 100644
--- a/be/src/vec/data_types/data_type_decimal.h
+++ b/be/src/vec/data_types/data_type_decimal.h
@@ -225,9 +225,6 @@ public:
bool text_can_contain_only_valid_utf8() const override { return true; }
bool is_comparable() const override { return true; }
bool is_value_represented_by_number() const override { return true; }
- bool is_value_unambiguously_represented_in_contiguous_memory_region()
const override {
- return true;
- }
bool have_maximum_size_of_value() const override { return true; }
size_t get_size_of_value_in_memory() const override { return
sizeof(FieldType); }
diff --git a/be/src/vec/data_types/data_type_hll.h
b/be/src/vec/data_types/data_type_hll.h
index ac0f8b17a2b..0d3f8d3ce1b 100644
--- a/be/src/vec/data_types/data_type_hll.h
+++ b/be/src/vec/data_types/data_type_hll.h
@@ -70,10 +70,6 @@ public:
bool should_align_right_in_pretty_formats() const override { return false;
}
bool text_can_contain_only_valid_utf8() const override { return true; }
bool is_comparable() const override { return false; }
- // TODO:
- bool is_value_unambiguously_represented_in_contiguous_memory_region()
const override {
- return true;
- }
bool equals(const IDataType& rhs) const override { return typeid(rhs) ==
typeid(*this); }
diff --git a/be/src/vec/data_types/data_type_jsonb.h
b/be/src/vec/data_types/data_type_jsonb.h
index fadcd719047..c1d3940d54b 100644
--- a/be/src/vec/data_types/data_type_jsonb.h
+++ b/be/src/vec/data_types/data_type_jsonb.h
@@ -75,9 +75,6 @@ public:
bool have_subtypes() const override { return false; }
bool is_comparable() const override { return false; }
- bool is_value_unambiguously_represented_in_contiguous_memory_region()
const override {
- return true;
- }
bool can_be_inside_low_cardinality() const override { return true; }
std::string to_string(const IColumn& column, size_t row_num) const
override;
void to_string(const IColumn& column, size_t row_num, BufferWritable&
ostr) const override;
diff --git a/be/src/vec/data_types/data_type_map.h
b/be/src/vec/data_types/data_type_map.h
index 0c99dab8b3b..d47629fe975 100644
--- a/be/src/vec/data_types/data_type_map.h
+++ b/be/src/vec/data_types/data_type_map.h
@@ -80,10 +80,6 @@ public:
bool is_comparable() const override {
return key_type->is_comparable() && value_type->is_comparable();
}
- bool is_value_unambiguously_represented_in_contiguous_memory_region()
const override {
- return true;
- }
-
const DataTypePtr& get_key_type() const { return key_type; }
const DataTypePtr& get_value_type() const { return value_type; }
diff --git a/be/src/vec/data_types/data_type_nullable.h
b/be/src/vec/data_types/data_type_nullable.h
index 53d359008a6..c5246e81e9c 100644
--- a/be/src/vec/data_types/data_type_nullable.h
+++ b/be/src/vec/data_types/data_type_nullable.h
@@ -87,10 +87,6 @@ public:
bool equals(const IDataType& rhs) const override;
- bool is_value_unambiguously_represented_in_contiguous_memory_region()
const override {
- return
nested_data_type->is_value_unambiguously_represented_in_contiguous_memory_region();
- }
-
bool have_subtypes() const override { return true; }
bool should_align_right_in_pretty_formats() const override {
return nested_data_type->should_align_right_in_pretty_formats();
diff --git a/be/src/vec/data_types/data_type_number_base.h
b/be/src/vec/data_types/data_type_number_base.h
index ffab211b8bc..2d2c32acdee 100644
--- a/be/src/vec/data_types/data_type_number_base.h
+++ b/be/src/vec/data_types/data_type_number_base.h
@@ -132,9 +132,6 @@ public:
bool text_can_contain_only_valid_utf8() const override { return true; }
bool is_comparable() const override { return true; }
bool is_value_represented_by_number() const override { return true; }
- bool is_value_unambiguously_represented_in_contiguous_memory_region()
const override {
- return true;
- }
bool have_maximum_size_of_value() const override { return true; }
size_t get_size_of_value_in_memory() const override {
return sizeof(typename PrimitiveTypeTraits<T>::ColumnItemType);
diff --git a/be/src/vec/data_types/data_type_quantilestate.h
b/be/src/vec/data_types/data_type_quantilestate.h
index 249b2d3d0eb..e7cac2548ba 100644
--- a/be/src/vec/data_types/data_type_quantilestate.h
+++ b/be/src/vec/data_types/data_type_quantilestate.h
@@ -66,10 +66,6 @@ public:
bool should_align_right_in_pretty_formats() const override { return false;
}
bool text_can_contain_only_valid_utf8() const override { return true; }
bool is_comparable() const override { return false; }
- // TODO:
- bool is_value_unambiguously_represented_in_contiguous_memory_region()
const override {
- return true;
- }
bool equals(const IDataType& rhs) const override { return typeid(rhs) ==
typeid(*this); }
diff --git a/be/src/vec/data_types/data_type_string.h
b/be/src/vec/data_types/data_type_string.h
index 1ac21fd1eaf..392a928573f 100644
--- a/be/src/vec/data_types/data_type_string.h
+++ b/be/src/vec/data_types/data_type_string.h
@@ -82,9 +82,6 @@ public:
bool have_subtypes() const override { return false; }
bool is_comparable() const override { return true; }
- bool is_value_unambiguously_represented_in_contiguous_memory_region()
const override {
- return true;
- }
bool can_be_inside_low_cardinality() const override { return true; }
std::string to_string(const IColumn& column, size_t row_num) const
override;
void to_string(const IColumn& column, size_t row_num, BufferWritable&
ostr) const override;
diff --git a/be/test/vec/data_types/common_data_type_test.h
b/be/test/vec/data_types/common_data_type_test.h
index ce6c61ec91f..5920f7ebb43 100644
--- a/be/test/vec/data_types/common_data_type_test.h
+++ b/be/test/vec/data_types/common_data_type_test.h
@@ -41,7 +41,7 @@
// have_maximum_size_of_value, get_maximum_size_of_value_in_memory,
get_size_of_value_in_memory
// get_precision, get_scale
// get_field
-// is_null_literal, is_value_represented_by_number,
is_value_unambiguously_represented_in_contiguous_memory_region,
is_value_unambiguously_represented_in_fixed_size_contiguous_memory_region
+// is_null_literal, is_value_represented_by_number,
is_value_unambiguously_represented_in_fixed_size_contiguous_memory_region
// 2. datatype creation with column: create_column, create_column_const
(size_t size, const Field &field), create_column_const_with_default_value
(size_t size), get_uncompressed_serialized_bytes (const IColumn &column, int
be_exec_version)
// 3. serde related: get_serde (int nesting_level=1)
// to_string (const IColumn &column, size_t row_num, BufferWritable
&ostr), to_string (const IColumn &column, size_t row_num), to_string_batch
(const IColumn &column, ColumnString &column_to), from_string (ReadBuffer &rb,
IColumn *column)
@@ -115,7 +115,6 @@ public:
bool is_value_represented_by_number = false;
PColumnMeta* pColumnMeta = nullptr;
DataTypeSerDeSPtr serde = nullptr;
- bool is_value_unambiguously_represented_in_contiguous_memory_region =
false;
Field default_field;
};
void SetUp() override {}
@@ -134,8 +133,6 @@ public:
ASSERT_EQ(data_type->text_can_contain_only_valid_utf8(),
meta_info.text_can_contain_only_valid_utf8);
ASSERT_EQ(data_type->have_maximum_size_of_value(),
meta_info.have_maximum_size_of_value);
-
ASSERT_EQ(data_type->is_value_unambiguously_represented_in_contiguous_memory_region(),
-
meta_info.is_value_unambiguously_represented_in_contiguous_memory_region);
if (is_decimal(data_type->get_primitive_type()) ||
data_type->is_nullable() ||
data_type->get_primitive_type() == TYPE_STRUCT ||
data_type->get_primitive_type() == INVALID_TYPE ||
diff --git a/be/test/vec/data_types/data_type_agg_state_test.cpp
b/be/test/vec/data_types/data_type_agg_state_test.cpp
index 0897a333e16..4616d00bb06 100644
--- a/be/test/vec/data_types/data_type_agg_state_test.cpp
+++ b/be/test/vec/data_types/data_type_agg_state_test.cpp
@@ -45,7 +45,7 @@
// text_can_contain_only_valid_utf8
// have_maximum_size_of_value, get_maximum_size_of_value_in_memory,
get_size_of_value_in_memory
// get_precision, get_scale
-// is_null_literal, is_value_represented_by_number,
is_value_unambiguously_represented_in_contiguous_memory_region
+// is_null_literal, is_value_represented_by_number
// 2. datatype creation with column : create_column, create_column_const
(size_t size, const Field &field), create_column_const_with_default_value
(size_t size), get_uncompressed_serialized_bytes (const IColumn &column, int
be_exec_version)
// 3. serde related: get_serde (int nesting_level=1)
// to_string (const IColumn &column, size_t row_num, BufferWritable
&ostr), to_string (const IColumn &column, size_t row_num), to_string_batch
(const IColumn &column, ColumnString &column_to), from_string (ReadBuffer &rb,
IColumn *column)
@@ -91,7 +91,6 @@ TEST_P(DataTypeAggStateTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = false,
.pColumnMeta = col_meta.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
true,
.default_field = Field::create_field<TYPE_STRING>(String()),
};
helper->meta_info_assert(datatype_agg_state_count,
agg_state_meta_info_to_assert);
diff --git a/be/test/vec/data_types/data_type_array_test.cpp
b/be/test/vec/data_types/data_type_array_test.cpp
index 089d3d64620..4e86298ee43 100644
--- a/be/test/vec/data_types/data_type_array_test.cpp
+++ b/be/test/vec/data_types/data_type_array_test.cpp
@@ -46,7 +46,7 @@
// text_can_contain_only_valid_utf8
// have_maximum_size_of_value, get_maximum_size_of_value_in_memory,
get_size_of_value_in_memory
// get_precision, get_scale
-// is_null_literal, is_value_represented_by_number,
is_value_unambiguously_represented_in_contiguous_memory_region
+// is_null_literal, is_value_represented_by_number
// 2. datatype creation with column : create_column, create_column_const
(size_t size, const Field &field), create_column_const_with_default_value
(size_t size), get_uncompressed_serialized_bytes (const IColumn &column, int
be_exec_version)
// 3. serde related: get_serde (int nesting_level=1)
// to_string (const IColumn &column, size_t row_num, BufferWritable
&ostr), to_string (const IColumn &column, size_t row_num), to_string_batch
(const IColumn &column, ColumnString &column_to), from_string (ReadBuffer &rb,
IColumn *column)
@@ -358,9 +358,6 @@ TEST_F(DataTypeArrayTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = false,
.pColumnMeta = col_meta.get(),
-
.is_value_unambiguously_represented_in_contiguous_memory_region =
- nested_type
-
->is_value_unambiguously_represented_in_contiguous_memory_region(),
.default_field = Field::create_field<TYPE_ARRAY>(a),
};
DataTypePtr arr = remove_nullable(type);
diff --git a/be/test/vec/data_types/data_type_bitmap_test.cpp
b/be/test/vec/data_types/data_type_bitmap_test.cpp
index a05af25d975..c5e0dfd26c9 100644
--- a/be/test/vec/data_types/data_type_bitmap_test.cpp
+++ b/be/test/vec/data_types/data_type_bitmap_test.cpp
@@ -41,7 +41,7 @@
// text_can_contain_only_valid_utf8
// have_maximum_size_of_value, get_maximum_size_of_value_in_memory,
get_size_of_value_in_memory
// get_precision, get_scale
-// is_null_literal, is_value_represented_by_number,
is_value_unambiguously_represented_in_contiguous_memory_region
+// is_null_literal, is_value_represented_by_number
// 2. datatype creation with column : create_column, create_column_const
(size_t size, const Field &field), create_column_const_with_default_value
(size_t size), get_uncompressed_serialized_bytes (const IColumn &column, int
be_exec_version)
// 3. serde related: get_serde (int nesting_level=1)
// to_string (const IColumn &column, size_t row_num, BufferWritable
&ostr), to_string (const IColumn &column, size_t row_num), to_string_batch
(const IColumn &column, ColumnString &column_to), from_string (ReadBuffer &rb,
IColumn *column)
@@ -82,7 +82,6 @@ TEST_P(DataTypeBitMapTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = false,
.pColumnMeta = col_meta.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
true,
.default_field =
Field::create_field<TYPE_BITMAP>(BitmapValue::empty_bitmap()),
};
helper->meta_info_assert(dt_bitmap, bitmap_meta_info_to_assert);
diff --git a/be/test/vec/data_types/data_type_datetime_v1_test.cpp
b/be/test/vec/data_types/data_type_datetime_v1_test.cpp
index d7470bb7311..726d4c82b94 100644
--- a/be/test/vec/data_types/data_type_datetime_v1_test.cpp
+++ b/be/test/vec/data_types/data_type_datetime_v1_test.cpp
@@ -82,7 +82,6 @@ TEST_F(DataTypeDateTimeV1Test, simple_func_test) {
EXPECT_TRUE(dt.text_can_contain_only_valid_utf8());
EXPECT_TRUE(dt.is_comparable());
EXPECT_TRUE(dt.is_value_represented_by_number());
-
EXPECT_TRUE(dt.is_value_unambiguously_represented_in_contiguous_memory_region());
EXPECT_TRUE(dt.have_maximum_size_of_value());
EXPECT_EQ(dt.get_size_of_value_in_memory(), sizeof(FieldType));
EXPECT_TRUE(dt.can_be_inside_low_cardinality());
diff --git a/be/test/vec/data_types/data_type_decimal_test.cpp
b/be/test/vec/data_types/data_type_decimal_test.cpp
index 8678e2600b2..d245110dc7d 100644
--- a/be/test/vec/data_types/data_type_decimal_test.cpp
+++ b/be/test/vec/data_types/data_type_decimal_test.cpp
@@ -210,7 +210,6 @@ TEST_F(DataTypeDecimalTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = true,
.pColumnMeta = col_meta.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
true,
.default_field = Field::create_field<TYPE_DECIMAL32>(
DecimalField<Decimal32>(0, tmp_dt->get_scale())),
};
@@ -259,7 +258,6 @@ TEST_F(DataTypeDecimalTest, simple_func_test) {
EXPECT_TRUE(dt.text_can_contain_only_valid_utf8());
EXPECT_TRUE(dt.is_comparable());
EXPECT_TRUE(dt.is_value_represented_by_number());
-
EXPECT_TRUE(dt.is_value_unambiguously_represented_in_contiguous_memory_region());
EXPECT_TRUE(dt.have_maximum_size_of_value());
EXPECT_EQ(dt.get_size_of_value_in_memory(), sizeof(FieldType));
EXPECT_FALSE(dt.can_be_inside_low_cardinality());
diff --git a/be/test/vec/data_types/data_type_fixed_length_object_test.cpp
b/be/test/vec/data_types/data_type_fixed_length_object_test.cpp
index d4ea17a3314..7951baf9dce 100644
--- a/be/test/vec/data_types/data_type_fixed_length_object_test.cpp
+++ b/be/test/vec/data_types/data_type_fixed_length_object_test.cpp
@@ -42,7 +42,7 @@
// text_can_contain_only_valid_utf8
// have_maximum_size_of_value, get_maximum_size_of_value_in_memory,
get_size_of_value_in_memory
// get_precision, get_scale
-// is_null_literal, is_value_represented_by_number,
is_value_unambiguously_represented_in_contiguous_memory_region
+// is_null_literal, is_value_represented_by_number
// 2. datatype creation with column : create_column, create_column_const
(size_t size, const Field &field), create_column_const_with_default_value
(size_t size), get_uncompressed_serialized_bytes (const IColumn &column, int
be_exec_version)
// 3. serde related: get_serde (int nesting_level=1)
// to_string (const IColumn &column, size_t row_num, BufferWritable
&ostr), to_string (const IColumn &column, size_t row_num), to_string_batch
(const IColumn &column, ColumnString &column_to), from_string (ReadBuffer &rb,
IColumn *column)
@@ -82,7 +82,6 @@ TEST_P(DataTypeFixedLengthObjectTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = false,
.pColumnMeta = col_meta.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
false,
.default_field = Field::create_field<TYPE_STRING>(String()),
};
helper->meta_info_assert(datatype_fixed_length,
bitmap_meta_info_to_assert);
diff --git a/be/test/vec/data_types/data_type_hll_test.cpp
b/be/test/vec/data_types/data_type_hll_test.cpp
index 53fc4ffbb63..a08e1027435 100644
--- a/be/test/vec/data_types/data_type_hll_test.cpp
+++ b/be/test/vec/data_types/data_type_hll_test.cpp
@@ -41,7 +41,7 @@
// text_can_contain_only_valid_utf8
// have_maximum_size_of_value, get_maximum_size_of_value_in_memory,
get_size_of_value_in_memory
// get_precision, get_scale
-// is_null_literal, is_value_represented_by_number,
is_value_unambiguously_represented_in_contiguous_memory_region
+// is_null_literal, is_value_represented_by_number
// 2. datatype creation with column : create_column, create_column_const
(size_t size, const Field &field), create_column_const_with_default_value
(size_t size), get_uncompressed_serialized_bytes (const IColumn &column, int
be_exec_version)
// 3. serde related: get_serde (int nesting_level=1)
// to_string (const IColumn &column, size_t row_num, BufferWritable
&ostr), to_string (const IColumn &column, size_t row_num), to_string_batch
(const IColumn &column, ColumnString &column_to), from_string (ReadBuffer &rb,
IColumn *column)
@@ -83,7 +83,6 @@ TEST_P(DataTypeHLLTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = false,
.pColumnMeta = col_meta.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
true,
.default_field =
Field::create_field<TYPE_HLL>(HyperLogLog::empty()),
};
helper->meta_info_assert(dt_hll, hll_meta_info_to_assert);
diff --git a/be/test/vec/data_types/data_type_ip_test.cpp
b/be/test/vec/data_types/data_type_ip_test.cpp
index aa3c3388944..6322b6d813d 100644
--- a/be/test/vec/data_types/data_type_ip_test.cpp
+++ b/be/test/vec/data_types/data_type_ip_test.cpp
@@ -39,7 +39,7 @@
// text_can_contain_only_valid_utf8
// have_maximum_size_of_value, get_maximum_size_of_value_in_memory,
get_size_of_value_in_memory
// get_precision, get_scale
-// is_null_literal, is_value_represented_by_number,
is_value_unambiguously_represented_in_contiguous_memory_region
+// is_null_literal, is_value_represented_by_number
// 2. datatype creation with column : create_column, create_column_const
(size_t size, const Field &field), create_column_const_with_default_value
(size_t size), get_uncompressed_serialized_bytes (const IColumn &column, int
be_exec_version)
// 3. serde related: get_serde (int nesting_level=1)
// to_string (const IColumn &column, size_t row_num, BufferWritable
&ostr), to_string (const IColumn &column, size_t row_num), to_string_batch
(const IColumn &column, ColumnString &column_to), from_string (ReadBuffer &rb,
IColumn *column)
@@ -90,30 +90,27 @@ TEST_F(DataTypeIPTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = true,
.pColumnMeta = col_meta.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
true,
.default_field = Field::create_field<TYPE_IPV4>(IPv4(0)),
};
auto ipv6_type_descriptor =
DataTypeFactory::instance().create_data_type(PrimitiveType::TYPE_IPV6, false);
auto col_meta6 = std::make_shared<PColumnMeta>();
col_meta6->set_type(PGenericType_TypeId_IPV6);
- DataTypeMetaInfo ipv6_meta_info = {
- .type_id = PrimitiveType::TYPE_IPV6,
- .type_as_type_descriptor = ipv6_type_descriptor,
- .family_name = "IPv6",
- .has_subtypes = false,
- .storage_field_type = doris::FieldType::OLAP_FIELD_TYPE_IPV6,
- .should_align_right_in_pretty_formats = true,
- .text_can_contain_only_valid_utf8 = true,
- .have_maximum_size_of_value = true,
- .size_of_value_in_memory = sizeof(IPv6),
- .precision = size_t(-1),
- .scale = size_t(-1),
- .is_null_literal = false,
- .is_value_represented_by_number = true,
- .pColumnMeta = col_meta6.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
true,
- .default_field = Field::create_field<TYPE_IPV6>(IPv6(0))};
+ DataTypeMetaInfo ipv6_meta_info = {.type_id = PrimitiveType::TYPE_IPV6,
+ .type_as_type_descriptor =
ipv6_type_descriptor,
+ .family_name = "IPv6",
+ .has_subtypes = false,
+ .storage_field_type =
doris::FieldType::OLAP_FIELD_TYPE_IPV6,
+ .should_align_right_in_pretty_formats =
true,
+ .text_can_contain_only_valid_utf8 =
true,
+ .have_maximum_size_of_value = true,
+ .size_of_value_in_memory = sizeof(IPv6),
+ .precision = size_t(-1),
+ .scale = size_t(-1),
+ .is_null_literal = false,
+ .is_value_represented_by_number = true,
+ .pColumnMeta = col_meta6.get(),
+ .default_field =
Field::create_field<TYPE_IPV6>(IPv6(0))};
meta_info_assert(dt_ipv4, ipv4_meta_info_to_assert);
meta_info_assert(dt_ipv6, ipv6_meta_info);
}
diff --git a/be/test/vec/data_types/data_type_jsonb_test.cpp
b/be/test/vec/data_types/data_type_jsonb_test.cpp
index 33ae72af807..aa86a28d5b3 100644
--- a/be/test/vec/data_types/data_type_jsonb_test.cpp
+++ b/be/test/vec/data_types/data_type_jsonb_test.cpp
@@ -99,7 +99,6 @@ TEST_F(DataTypeJsonbTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = false,
.pColumnMeta = col_meta.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
true,
.default_field = Field::create_field<TYPE_JSONB>(JsonbField())};
auto tmp_dt =
DataTypeFactory::instance().create_data_type(PrimitiveType::TYPE_JSONB, false);
helper->meta_info_assert(tmp_dt, meta_info_to_assert);
@@ -264,7 +263,6 @@ TEST_F(DataTypeJsonbTest, simple_func_test) {
EXPECT_FALSE(dt.have_subtypes());
EXPECT_FALSE(dt.should_align_right_in_pretty_formats());
EXPECT_FALSE(dt.is_comparable());
-
EXPECT_TRUE(dt.is_value_unambiguously_represented_in_contiguous_memory_region());
EXPECT_FALSE(dt.have_maximum_size_of_value());
EXPECT_TRUE(dt.can_be_inside_low_cardinality());
diff --git a/be/test/vec/data_types/data_type_number_test.cpp
b/be/test/vec/data_types/data_type_number_test.cpp
index b76229c1c65..c6f8da974d9 100644
--- a/be/test/vec/data_types/data_type_number_test.cpp
+++ b/be/test/vec/data_types/data_type_number_test.cpp
@@ -128,7 +128,6 @@ TEST_F(DataTypeNumberTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = true,
.pColumnMeta = col_meta.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
true,
.default_field = Field::create_field<TYPE_TINYINT>((Int8)0),
};
auto tmp_dt =
DataTypeFactory::instance().create_data_type(PrimitiveType::TYPE_TINYINT,
false);
@@ -444,7 +443,6 @@ TEST_F(DataTypeNumberTest, simple_func_test) {
EXPECT_TRUE(dt.text_can_contain_only_valid_utf8());
EXPECT_TRUE(dt.is_comparable());
EXPECT_TRUE(dt.is_value_represented_by_number());
-
EXPECT_TRUE(dt.is_value_unambiguously_represented_in_contiguous_memory_region());
EXPECT_TRUE(dt.have_maximum_size_of_value());
EXPECT_EQ(dt.get_size_of_value_in_memory(), sizeof(FieldType));
EXPECT_TRUE(dt.can_be_inside_low_cardinality());
diff --git a/be/test/vec/data_types/data_type_quantile_state_test.cpp
b/be/test/vec/data_types/data_type_quantile_state_test.cpp
index b89e87f37e6..342e3a5852a 100644
--- a/be/test/vec/data_types/data_type_quantile_state_test.cpp
+++ b/be/test/vec/data_types/data_type_quantile_state_test.cpp
@@ -41,7 +41,7 @@
// text_can_contain_only_valid_utf8
// have_maximum_size_of_value, get_maximum_size_of_value_in_memory,
get_size_of_value_in_memory
// get_precision, get_scale
-// is_null_literal, is_value_represented_by_number,
is_value_unambiguously_represented_in_contiguous_memory_region
+// is_null_literal, is_value_represented_by_number
// 2. datatype creation with column : create_column, create_column_const
(size_t size, const Field &field), create_column_const_with_default_value
(size_t size), get_uncompressed_serialized_bytes (const IColumn &column, int
be_exec_version)
// 3. serde related: get_serde (int nesting_level=1)
// to_string (const IColumn &column, size_t row_num, BufferWritable
&ostr), to_string (const IColumn &column, size_t row_num), to_string_batch
(const IColumn &column, ColumnString &column_to)
@@ -83,7 +83,6 @@ TEST_P(DataTypeQuantileStateTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = false,
.pColumnMeta = col_meta.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
true,
.default_field =
Field::create_field<TYPE_QUANTILE_STATE>(QuantileState()),
};
helper->meta_info_assert(datatype_quantile_state,
quantile_state_meta_info_to_assert);
diff --git a/be/test/vec/data_types/data_type_string_test.cpp
b/be/test/vec/data_types/data_type_string_test.cpp
index 8d03c98dc87..26470e4e6d3 100644
--- a/be/test/vec/data_types/data_type_string_test.cpp
+++ b/be/test/vec/data_types/data_type_string_test.cpp
@@ -101,7 +101,6 @@ TEST_F(DataTypeStringTest, MetaInfoTest) {
.is_null_literal = false,
.is_value_represented_by_number = false,
.pColumnMeta = col_meta.get(),
- .is_value_unambiguously_represented_in_contiguous_memory_region =
true,
.default_field = Field::create_field<TYPE_STRING>(""),
};
auto tmp_dt =
DataTypeFactory::instance().create_data_type(PrimitiveType::TYPE_STRING, false);
@@ -266,7 +265,6 @@ TEST_F(DataTypeStringTest, simple_func_test) {
EXPECT_FALSE(dt.have_subtypes());
EXPECT_FALSE(dt.should_align_right_in_pretty_formats());
EXPECT_TRUE(dt.is_comparable());
-
EXPECT_TRUE(dt.is_value_unambiguously_represented_in_contiguous_memory_region());
EXPECT_FALSE(dt.have_maximum_size_of_value());
EXPECT_TRUE(dt.can_be_inside_low_cardinality());
diff --git a/be/test/vec/data_types/data_type_time_v2_test.cpp
b/be/test/vec/data_types/data_type_time_v2_test.cpp
index 4ca5b7dd61e..45497ba8d6b 100644
--- a/be/test/vec/data_types/data_type_time_v2_test.cpp
+++ b/be/test/vec/data_types/data_type_time_v2_test.cpp
@@ -108,7 +108,6 @@ TEST_F(DataTypeDateTimeV2Test, simple_func_test) {
EXPECT_TRUE(dt.text_can_contain_only_valid_utf8());
EXPECT_TRUE(dt.is_comparable());
EXPECT_TRUE(dt.is_value_represented_by_number());
-
EXPECT_TRUE(dt.is_value_unambiguously_represented_in_contiguous_memory_region());
EXPECT_TRUE(dt.have_maximum_size_of_value());
EXPECT_EQ(dt.get_size_of_value_in_memory(), sizeof(FieldType));
EXPECT_TRUE(dt.can_be_inside_low_cardinality());
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]