From f80269a524cec7e78ce6e6031d407c51859c00bf Mon Sep 17 00:00:00 2001 From: obdev Date: Mon, 27 May 2024 05:12:24 +0000 Subject: [PATCH] [ARRAY] VecValueTypeClass placehold --- deps/oblib/src/common/object/ob_obj_type.h | 5 ++++- src/share/aggregate/iaggregate.cpp | 1 + src/share/vector/type_traits.h | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/deps/oblib/src/common/object/ob_obj_type.h b/deps/oblib/src/common/object/ob_obj_type.h index e9d757e271..cf61899611 100644 --- a/deps/oblib/src/common/object/ob_obj_type.h +++ b/deps/oblib/src/common/object/ob_obj_type.h @@ -1186,6 +1186,7 @@ enum VecValueTypeClass: uint16_t { VEC_TC_DEC_INT128, VEC_TC_DEC_INT256, VEC_TC_DEC_INT512, + VEC_TC_COLLECTION, MAX_VEC_TC }; @@ -1246,7 +1247,9 @@ OB_INLINE VecValueTypeClass get_vec_value_tc(const ObObjType type, const int16_t VEC_TC_LOB, // ObLobType VEC_TC_JSON, // ObJsonType VEC_TC_GEO, // ObGeometryType - VEC_TC_UDT // ObUserDefinedSQLType + VEC_TC_UDT, // ObUserDefinedSQLType + MAX_VEC_TC, // invalid for ObDecimalIntType + VEC_TC_COLLECTION // ObCollectionSQLType }; VecValueTypeClass t = MAX_VEC_TC; if (type < 0 || type >= ObMaxType) { diff --git a/src/share/aggregate/iaggregate.cpp b/src/share/aggregate/iaggregate.cpp index ca25c17573..9e461c5c83 100644 --- a/src/share/aggregate/iaggregate.cpp +++ b/src/share/aggregate/iaggregate.cpp @@ -153,6 +153,7 @@ static int32_t reserved_agg_col_size(RuntimeContext &agg_ctx, int64_t agg_col_id RTSIZE(VEC_TC_DEC_INT128), // dec_int128 RTSIZE(VEC_TC_DEC_INT256), // dec_int256 RTSIZE(VEC_TC_DEC_INT512), // dec_int512 + string_reserved_size, // collection }; static_assert(sizeof(reserved_sizes) / sizeof(reserved_sizes[0]) == MAX_VEC_TC, ""); OB_ASSERT(aggr_info.expr_ != NULL); diff --git a/src/share/vector/type_traits.h b/src/share/vector/type_traits.h index fbe898385c..c3d437ad4b 100644 --- a/src/share/vector/type_traits.h +++ b/src/share/vector/type_traits.h @@ -109,6 +109,7 @@ DEFINE_VECTOR_TC_TRAITS(VEC_TC_DEC_INT64, true, int64_t); DEFINE_VECTOR_TC_TRAITS(VEC_TC_DEC_INT128, true, int128_t); DEFINE_VECTOR_TC_TRAITS(VEC_TC_DEC_INT256, true, int256_t); DEFINE_VECTOR_TC_TRAITS(VEC_TC_DEC_INT512, true, int512_t); +DEFINE_VECTOR_TC_TRAITS(VEC_TC_COLLECTION, false, ObString); #undef DEFINE_VECTOR_TC_TRAITS