[refactor](data_type) remove some unused functions (#26966)

This commit is contained in:
Jerry Hu
2023-11-15 09:23:53 +08:00
committed by GitHub
parent cdc5626930
commit 6183b298e1
24 changed files with 7 additions and 143 deletions

View File

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

View File

@ -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.
*/

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -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;
}

View File

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

View File

@ -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"; }

View File

@ -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"; }

View File

@ -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;
}

View File

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

View File

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

View File

@ -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();
}

View File

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

View File

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

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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);

View File

@ -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;
}