[refactor](data_type) remove some unused functions (#26966)
This commit is contained in:
@ -199,8 +199,7 @@ void get_column_by_type(const vectorized::DataTypePtr& data_type, const std::str
|
||||
TabletColumn child;
|
||||
get_column_by_type(assert_cast<const DataTypeArray*>(data_type.get())->get_nested_type(),
|
||||
"", child, {});
|
||||
column.set_length(TabletColumn::get_field_length_by_type(
|
||||
data_type->get_type_as_tprimitive_type(), 0));
|
||||
column.set_length(TabletColumn::get_field_length_by_type(TPrimitiveType::ARRAY, 0));
|
||||
column.add_sub_column(child);
|
||||
column.set_default_value("[]");
|
||||
return;
|
||||
|
||||
@ -78,7 +78,6 @@ public:
|
||||
virtual TypeIndex get_type_id() const = 0;
|
||||
|
||||
virtual TypeDescriptor get_type_as_type_descriptor() const = 0;
|
||||
virtual TPrimitiveType::type get_type_as_tprimitive_type() const = 0;
|
||||
virtual doris::FieldType get_storage_field_type() const = 0;
|
||||
|
||||
virtual void to_string(const IColumn& column, size_t row_num, BufferWritable& ostr) const;
|
||||
@ -148,20 +147,6 @@ public:
|
||||
* The same for nullable of comparable types: they are comparable (but not totally-comparable).
|
||||
*/
|
||||
virtual bool is_comparable() const { return false; }
|
||||
/** Values of data type can be summed (possibly with overflow, within the same data type).
|
||||
* Example: numbers, even nullable. Not Date/DateTime. Not Enum.
|
||||
* Enums can be passed to aggregate function 'sum', but the result is Int64, not Enum, so they are not summable.
|
||||
*/
|
||||
virtual bool is_summable() const { return false; }
|
||||
|
||||
/** Can be used in operations like bit and, bit shift, bit not, etc.
|
||||
*/
|
||||
virtual bool can_be_used_in_bit_operations() const { return false; }
|
||||
|
||||
/** Can be used in boolean context (WHERE, HAVING).
|
||||
* UInt8, maybe nullable.
|
||||
*/
|
||||
virtual bool can_be_used_in_boolean_context() const { return false; }
|
||||
|
||||
/** Numbers, Enums, Date, DateTime. Not nullable.
|
||||
*/
|
||||
|
||||
@ -78,9 +78,6 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_AGG_STATE);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::AGG_STATE;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_AGG_STATE;
|
||||
|
||||
@ -64,9 +64,6 @@ public:
|
||||
desc.add_sub_type(nested->get_type_as_type_descriptor());
|
||||
return desc;
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::ARRAY;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_ARRAY;
|
||||
|
||||
@ -61,9 +61,6 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_OBJECT);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::OBJECT;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_OBJECT;
|
||||
|
||||
@ -50,9 +50,6 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_DATE);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::DATE;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_DATE;
|
||||
|
||||
@ -76,9 +76,6 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_DATETIME);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::DATETIME;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_DATETIME;
|
||||
|
||||
@ -168,23 +168,6 @@ public:
|
||||
return desc;
|
||||
}
|
||||
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Decimal32>>) {
|
||||
return TPrimitiveType::DECIMAL32;
|
||||
}
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Decimal64>>) {
|
||||
return TPrimitiveType::DECIMAL64;
|
||||
}
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Decimal128I>>) {
|
||||
return TPrimitiveType::DECIMAL128I;
|
||||
}
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Decimal256>>) {
|
||||
return TPrimitiveType::DECIMAL256;
|
||||
}
|
||||
LOG(FATAL) << "__builtin_unreachable";
|
||||
__builtin_unreachable();
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Decimal32>>) {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_DECIMAL32;
|
||||
@ -247,8 +230,6 @@ public:
|
||||
bool have_maximum_size_of_value() const override { return true; }
|
||||
size_t get_size_of_value_in_memory() const override { return sizeof(T); }
|
||||
|
||||
bool is_summable() const override { return true; }
|
||||
bool can_be_used_in_boolean_context() 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;
|
||||
Status from_string(ReadBuffer& rb, IColumn* column) const override;
|
||||
|
||||
@ -56,10 +56,6 @@ public:
|
||||
return TypeDescriptor(INVALID_TYPE);
|
||||
}
|
||||
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::INVALID_TYPE;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_NONE;
|
||||
}
|
||||
|
||||
@ -57,9 +57,6 @@ public:
|
||||
|
||||
TypeIndex get_type_id() const override { return TypeIndex::HLL; }
|
||||
TypeDescriptor get_type_as_type_descriptor() const override { return TypeDescriptor(TYPE_HLL); }
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::HLL;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_HLL;
|
||||
|
||||
@ -44,9 +44,6 @@ namespace doris::vectorized {
|
||||
class DataTypeIPv4 final : public DataTypeNumberBase<IPv4> {
|
||||
public:
|
||||
TypeIndex get_type_id() const override { return TypeIndex::IPv4; }
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::IPV4;
|
||||
}
|
||||
const char* get_family_name() const override { return "IPv4"; }
|
||||
std::string do_get_name() const override { return "IPv4"; }
|
||||
|
||||
|
||||
@ -45,9 +45,6 @@ namespace doris::vectorized {
|
||||
class DataTypeIPv6 final : public DataTypeNumberBase<IPv6> {
|
||||
public:
|
||||
TypeIndex get_type_id() const override { return TypeIndex::IPv6; }
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::IPV6;
|
||||
}
|
||||
const char* get_family_name() const override { return "IPv6"; }
|
||||
std::string do_get_name() const override { return "IPv6"; }
|
||||
|
||||
|
||||
@ -56,10 +56,6 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_JSONB);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::JSONB;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_JSONB;
|
||||
}
|
||||
|
||||
@ -65,9 +65,6 @@ public:
|
||||
desc.add_sub_type(value_type->get_type_as_type_descriptor());
|
||||
return desc;
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::MAP;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_MAP;
|
||||
|
||||
@ -55,9 +55,6 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(INVALID_TYPE);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::INVALID_TYPE;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_NONE;
|
||||
|
||||
@ -63,9 +63,6 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(nested_data_type->get_type_as_type_descriptor());
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return nested_data_type->get_type_as_tprimitive_type();
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return nested_data_type->get_storage_field_type();
|
||||
@ -104,10 +101,6 @@ public:
|
||||
return nested_data_type->text_can_contain_only_valid_utf8();
|
||||
}
|
||||
bool is_comparable() const override { return nested_data_type->is_comparable(); }
|
||||
bool is_summable() const override { return nested_data_type->is_summable(); }
|
||||
bool can_be_used_in_boolean_context() const override {
|
||||
return nested_data_type->can_be_used_in_boolean_context();
|
||||
}
|
||||
bool have_maximum_size_of_value() const override {
|
||||
return nested_data_type->have_maximum_size_of_value();
|
||||
}
|
||||
|
||||
@ -30,10 +30,6 @@ namespace doris::vectorized {
|
||||
template <typename T>
|
||||
class DataTypeNumber final : public DataTypeNumberBase<T> {
|
||||
bool equals(const IDataType& rhs) const override { return typeid(rhs) == typeid(*this); }
|
||||
|
||||
bool is_summable() const override { return true; }
|
||||
bool can_be_used_in_bit_operations() const override { return true; }
|
||||
bool can_be_used_in_boolean_context() const override { return true; }
|
||||
};
|
||||
|
||||
using DataTypeUInt8 = DataTypeNumber<UInt8>;
|
||||
|
||||
@ -98,32 +98,6 @@ public:
|
||||
return TypeDescriptor(INVALID_TYPE);
|
||||
}
|
||||
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Int8>>) {
|
||||
return TPrimitiveType::TINYINT;
|
||||
}
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Int16>>) {
|
||||
return TPrimitiveType::SMALLINT;
|
||||
}
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Int32>>) {
|
||||
return TPrimitiveType::INT;
|
||||
}
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Int64>>) {
|
||||
return TPrimitiveType::BIGINT;
|
||||
}
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Int128>>) {
|
||||
return TPrimitiveType::LARGEINT;
|
||||
}
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Float32>>) {
|
||||
return TPrimitiveType::FLOAT;
|
||||
}
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Float64>>) {
|
||||
return TPrimitiveType::DOUBLE;
|
||||
}
|
||||
LOG(FATAL) << "__builtin_unreachable";
|
||||
__builtin_unreachable();
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
if constexpr (std::is_same_v<TypeId<T>, TypeId<Int8>>) {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_TINYINT;
|
||||
|
||||
@ -58,9 +58,7 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_VARIANT);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::VARIANT;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_VARIANT;
|
||||
}
|
||||
|
||||
@ -56,9 +56,7 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_QUANTILE_STATE);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::QUANTILE_STATE;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_QUANTILE_STATE;
|
||||
}
|
||||
|
||||
@ -59,9 +59,6 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_STRING);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::STRING;
|
||||
}
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_STRING;
|
||||
}
|
||||
|
||||
@ -82,9 +82,7 @@ public:
|
||||
}
|
||||
return desc;
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::STRUCT;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_STRUCT;
|
||||
}
|
||||
|
||||
@ -56,9 +56,7 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_TIME);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::TIME;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_TIMEV2;
|
||||
}
|
||||
@ -67,10 +65,6 @@ public:
|
||||
|
||||
MutableColumnPtr create_column() const override;
|
||||
|
||||
bool is_summable() const override { return true; }
|
||||
bool can_be_used_in_bit_operations() const override { return true; }
|
||||
bool can_be_used_in_boolean_context() const override { return true; }
|
||||
|
||||
DataTypeSerDeSPtr get_serde(int nesting_level = 1) const override {
|
||||
return std::make_shared<DataTypeTimeSerDe>(nesting_level);
|
||||
};
|
||||
@ -94,18 +88,11 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_TIMEV2);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::TIMEV2;
|
||||
}
|
||||
|
||||
void to_string(const IColumn& column, size_t row_num, BufferWritable& ostr) const override;
|
||||
|
||||
MutableColumnPtr create_column() const override;
|
||||
|
||||
bool is_summable() const override { return true; }
|
||||
bool can_be_used_in_bit_operations() const override { return true; }
|
||||
bool can_be_used_in_boolean_context() const override { return true; }
|
||||
|
||||
void to_pb_column_meta(PColumnMeta* col_meta) const override;
|
||||
DataTypeSerDeSPtr get_serde(int nesting_level = 1) const override {
|
||||
return std::make_shared<DataTypeTimeV2SerDe>(_scale, nesting_level);
|
||||
|
||||
@ -60,9 +60,7 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_DATEV2);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::DATEV2;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_DATEV2;
|
||||
}
|
||||
@ -117,9 +115,7 @@ public:
|
||||
TypeDescriptor get_type_as_type_descriptor() const override {
|
||||
return TypeDescriptor(TYPE_DATETIMEV2);
|
||||
}
|
||||
TPrimitiveType::type get_type_as_tprimitive_type() const override {
|
||||
return TPrimitiveType::DATETIMEV2;
|
||||
}
|
||||
|
||||
doris::FieldType get_storage_field_type() const override {
|
||||
return doris::FieldType::OLAP_FIELD_TYPE_DATETIMEV2;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user