feat: add Dictionary to ColumnDataType (#290)

This commit is contained in:
Ruihang Xia
2025-11-21 18:45:21 +08:00
committed by GitHub
parent fd699b2199
commit 437e6a1ef8
5 changed files with 2592 additions and 223 deletions
+451 -51
View File
@@ -433,6 +433,22 @@ struct JsonNativeTypeExtensionDefaultTypeInternal {
};
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 JsonNativeTypeExtensionDefaultTypeInternal _JsonNativeTypeExtension_default_instance_;
PROTOBUF_CONSTEXPR DictionaryTypeExtension::DictionaryTypeExtension(
::_pbi::ConstantInitialized): _impl_{
/*decltype(_impl_.key_datatype_extension_)*/nullptr
, /*decltype(_impl_.value_datatype_extension_)*/nullptr
, /*decltype(_impl_.key_datatype_)*/0
, /*decltype(_impl_.value_datatype_)*/0
, /*decltype(_impl_._cached_size_)*/{}} {}
struct DictionaryTypeExtensionDefaultTypeInternal {
PROTOBUF_CONSTEXPR DictionaryTypeExtensionDefaultTypeInternal()
: _instance(::_pbi::ConstantInitialized{}) {}
~DictionaryTypeExtensionDefaultTypeInternal() {}
union {
DictionaryTypeExtension _instance;
};
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DictionaryTypeExtensionDefaultTypeInternal _DictionaryTypeExtension_default_instance_;
PROTOBUF_CONSTEXPR ColumnOptions_OptionsEntry_DoNotUse::ColumnOptions_OptionsEntry_DoNotUse(
::_pbi::ConstantInitialized) {}
struct ColumnOptions_OptionsEntry_DoNotUseDefaultTypeInternal {
@@ -474,7 +490,7 @@ struct ArrowIpcDefaultTypeInternal {
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ArrowIpcDefaultTypeInternal _ArrowIpc_default_instance_;
} // namespace v1
} // namespace greptime
static ::_pb::Metadata file_level_metadata_greptime_2fv1_2fcommon_2eproto[33];
static ::_pb::Metadata file_level_metadata_greptime_2fv1_2fcommon_2eproto[34];
static const ::_pb::EnumDescriptor* file_level_enum_descriptors_greptime_2fv1_2fcommon_2eproto[4];
static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_greptime_2fv1_2fcommon_2eproto = nullptr;
@@ -697,6 +713,7 @@ const uint32_t TableStruct_greptime_2fv1_2fcommon_2eproto::offsets[] PROTOBUF_SE
::_pbi::kInvalidFieldOffsetTag,
::_pbi::kInvalidFieldOffsetTag,
::_pbi::kInvalidFieldOffsetTag,
::_pbi::kInvalidFieldOffsetTag,
PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnDataTypeExtension, _impl_.type_ext_),
~0u, // no _has_bits_
PROTOBUF_FIELD_OFFSET(::greptime::v1::DecimalTypeExtension, _internal_metadata_),
@@ -736,6 +753,16 @@ const uint32_t TableStruct_greptime_2fv1_2fcommon_2eproto::offsets[] PROTOBUF_SE
~0u, // no _inlined_string_donated_
PROTOBUF_FIELD_OFFSET(::greptime::v1::JsonNativeTypeExtension, _impl_.datatype_),
PROTOBUF_FIELD_OFFSET(::greptime::v1::JsonNativeTypeExtension, _impl_.datatype_extension_),
~0u, // no _has_bits_
PROTOBUF_FIELD_OFFSET(::greptime::v1::DictionaryTypeExtension, _internal_metadata_),
~0u, // no _extensions_
~0u, // no _oneof_case_
~0u, // no _weak_field_map_
~0u, // no _inlined_string_donated_
PROTOBUF_FIELD_OFFSET(::greptime::v1::DictionaryTypeExtension, _impl_.key_datatype_),
PROTOBUF_FIELD_OFFSET(::greptime::v1::DictionaryTypeExtension, _impl_.key_datatype_extension_),
PROTOBUF_FIELD_OFFSET(::greptime::v1::DictionaryTypeExtension, _impl_.value_datatype_),
PROTOBUF_FIELD_OFFSET(::greptime::v1::DictionaryTypeExtension, _impl_.value_datatype_extension_),
PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnOptions_OptionsEntry_DoNotUse, _has_bits_),
PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnOptions_OptionsEntry_DoNotUse, _internal_metadata_),
~0u, // no _extensions_
@@ -789,14 +816,15 @@ static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protode
{ 189, -1, -1, sizeof(::greptime::v1::Decimal128)},
{ 197, -1, -1, sizeof(::greptime::v1::StructField)},
{ 206, -1, -1, sizeof(::greptime::v1::ColumnDataTypeExtension)},
{ 219, -1, -1, sizeof(::greptime::v1::DecimalTypeExtension)},
{ 227, -1, -1, sizeof(::greptime::v1::VectorTypeExtension)},
{ 234, -1, -1, sizeof(::greptime::v1::ListTypeExtension)},
{ 242, -1, -1, sizeof(::greptime::v1::StructTypeExtension)},
{ 249, -1, -1, sizeof(::greptime::v1::JsonNativeTypeExtension)},
{ 257, 265, -1, sizeof(::greptime::v1::ColumnOptions_OptionsEntry_DoNotUse)},
{ 267, -1, -1, sizeof(::greptime::v1::ColumnOptions)},
{ 274, -1, -1, sizeof(::greptime::v1::ArrowIpc)},
{ 220, -1, -1, sizeof(::greptime::v1::DecimalTypeExtension)},
{ 228, -1, -1, sizeof(::greptime::v1::VectorTypeExtension)},
{ 235, -1, -1, sizeof(::greptime::v1::ListTypeExtension)},
{ 243, -1, -1, sizeof(::greptime::v1::StructTypeExtension)},
{ 250, -1, -1, sizeof(::greptime::v1::JsonNativeTypeExtension)},
{ 258, -1, -1, sizeof(::greptime::v1::DictionaryTypeExtension)},
{ 268, 276, -1, sizeof(::greptime::v1::ColumnOptions_OptionsEntry_DoNotUse)},
{ 278, -1, -1, sizeof(::greptime::v1::ColumnOptions)},
{ 285, -1, -1, sizeof(::greptime::v1::ArrowIpc)},
};
static const ::_pb::Message* const file_default_instances[] = {
@@ -830,6 +858,7 @@ static const ::_pb::Message* const file_default_instances[] = {
&::greptime::v1::_ListTypeExtension_default_instance_._instance,
&::greptime::v1::_StructTypeExtension_default_instance_._instance,
&::greptime::v1::_JsonNativeTypeExtension_default_instance_._instance,
&::greptime::v1::_DictionaryTypeExtension_default_instance_._instance,
&::greptime::v1::_ColumnOptions_OptionsEntry_DoNotUse_default_instance_._instance,
&::greptime::v1::_ColumnOptions_default_instance_._instance,
&::greptime::v1::_ArrowIpc_default_instance_._instance,
@@ -883,7 +912,7 @@ const char descriptor_table_protodef_greptime_2fv1_2fcommon_2eproto[] PROTOBUF_S
"\n\002lo\030\002 \001(\003\"\214\001\n\013StructField\022\014\n\004name\030\001 \001(\t"
"\022-\n\010datatype\030\002 \001(\0162\033.greptime.v1.ColumnD"
"ataType\022@\n\022datatype_extension\030\003 \001(\0132$.gr"
"eptime.v1.ColumnDataTypeExtension\"\376\002\n\027Co"
"eptime.v1.ColumnDataTypeExtension\"\277\003\n\027Co"
"lumnDataTypeExtension\0229\n\014decimal_type\030\001 "
"\001(\0132!.greptime.v1.DecimalTypeExtensionH\000"
"\0223\n\tjson_type\030\002 \001(\0162\036.greptime.v1.JsonTy"
@@ -893,48 +922,57 @@ const char descriptor_table_protodef_greptime_2fv1_2fcommon_2eproto[] PROTOBUF_S
"nH\000\0227\n\013struct_type\030\005 \001(\0132 .greptime.v1.S"
"tructTypeExtensionH\000\022@\n\020json_native_type"
"\030\006 \001(\0132$.greptime.v1.JsonNativeTypeExten"
"sionH\000B\n\n\010type_ext\"8\n\024DecimalTypeExtensi"
"on\022\021\n\tprecision\030\001 \001(\005\022\r\n\005scale\030\002 \001(\005\"\"\n\023"
"VectorTypeExtension\022\013\n\003dim\030\001 \001(\r\"\204\001\n\021Lis"
"tTypeExtension\022-\n\010datatype\030\001 \001(\0162\033.grept"
"ime.v1.ColumnDataType\022@\n\022datatype_extens"
"ion\030\002 \001(\0132$.greptime.v1.ColumnDataTypeEx"
"tension\"\?\n\023StructTypeExtension\022(\n\006fields"
"\030\001 \003(\0132\030.greptime.v1.StructField\"\212\001\n\027Jso"
"nNativeTypeExtension\022-\n\010datatype\030\001 \001(\0162\033"
".greptime.v1.ColumnDataType\022@\n\022datatype_"
"extension\030\002 \001(\0132$.greptime.v1.ColumnData"
"TypeExtension\"y\n\rColumnOptions\0228\n\007option"
"s\030\001 \003(\0132\'.greptime.v1.ColumnOptions.Opti"
"onsEntry\032.\n\014OptionsEntry\022\013\n\003key\030\001 \001(\t\022\r\n"
"\005value\030\002 \001(\t:\0028\001\"@\n\010ArrowIpc\022\016\n\006schema\030\001"
" \001(\014\022\023\n\013data_header\030\002 \001(\014\022\017\n\007payload\030\003 \001"
"(\014*1\n\014SemanticType\022\007\n\003TAG\020\000\022\t\n\005FIELD\020\001\022\r"
"\n\tTIMESTAMP\020\002*\202\004\n\016ColumnDataType\022\013\n\007BOOL"
"EAN\020\000\022\010\n\004INT8\020\001\022\t\n\005INT16\020\002\022\t\n\005INT32\020\003\022\t\n"
"\005INT64\020\004\022\t\n\005UINT8\020\005\022\n\n\006UINT16\020\006\022\n\n\006UINT3"
"2\020\007\022\n\n\006UINT64\020\010\022\013\n\007FLOAT32\020\t\022\013\n\007FLOAT64\020"
"\n\022\n\n\006BINARY\020\013\022\n\n\006STRING\020\014\022\010\n\004DATE\020\r\022\014\n\010D"
"ATETIME\020\016\022\024\n\020TIMESTAMP_SECOND\020\017\022\031\n\025TIMES"
"TAMP_MILLISECOND\020\020\022\031\n\025TIMESTAMP_MICROSEC"
"OND\020\021\022\030\n\024TIMESTAMP_NANOSECOND\020\022\022\017\n\013TIME_"
"SECOND\020\023\022\024\n\020TIME_MILLISECOND\020\024\022\024\n\020TIME_M"
"ICROSECOND\020\025\022\023\n\017TIME_NANOSECOND\020\026\022\027\n\023INT"
"ERVAL_YEAR_MONTH\020\027\022\025\n\021INTERVAL_DAY_TIME\020"
"\030\022\033\n\027INTERVAL_MONTH_DAY_NANO\020\031\022\016\n\nDECIMA"
"L128\020\036\022\010\n\004JSON\020\037\022\n\n\006VECTOR\020 \022\010\n\004LIST\020(\022\n"
"\n\006STRUCT\020)*H\n\010TimeUnit\022\017\n\013MILLISECOND\020\000\022"
"\n\n\006SECOND\020\001\022\017\n\013MICROSECOND\020\002\022\016\n\nNANOSECO"
"ND\020\003*$\n\021JsonTypeExtension\022\017\n\013JSON_BINARY"
"\020\000BO\n\016io.greptime.v1B\006CommonZ5github.com"
"/GreptimeTeam/greptime-proto/go/greptime"
"/v1b\006proto3"
"sionH\000\022\?\n\017dictionary_type\030\007 \001(\0132$.grepti"
"me.v1.DictionaryTypeExtensionH\000B\n\n\010type_"
"ext\"8\n\024DecimalTypeExtension\022\021\n\tprecision"
"\030\001 \001(\005\022\r\n\005scale\030\002 \001(\005\"\"\n\023VectorTypeExten"
"sion\022\013\n\003dim\030\001 \001(\r\"\204\001\n\021ListTypeExtension\022"
"-\n\010datatype\030\001 \001(\0162\033.greptime.v1.ColumnDa"
"taType\022@\n\022datatype_extension\030\002 \001(\0132$.gre"
"ptime.v1.ColumnDataTypeExtension\"\?\n\023Stru"
"ctTypeExtension\022(\n\006fields\030\001 \003(\0132\030.grepti"
"me.v1.StructField\"\212\001\n\027JsonNativeTypeExte"
"nsion\022-\n\010datatype\030\001 \001(\0162\033.greptime.v1.Co"
"lumnDataType\022@\n\022datatype_extension\030\002 \001(\013"
"2$.greptime.v1.ColumnDataTypeExtension\"\217"
"\002\n\027DictionaryTypeExtension\0221\n\014key_dataty"
"pe\030\001 \001(\0162\033.greptime.v1.ColumnDataType\022D\n"
"\026key_datatype_extension\030\002 \001(\0132$.greptime"
".v1.ColumnDataTypeExtension\0223\n\016value_dat"
"atype\030\003 \001(\0162\033.greptime.v1.ColumnDataType"
"\022F\n\030value_datatype_extension\030\004 \001(\0132$.gre"
"ptime.v1.ColumnDataTypeExtension\"y\n\rColu"
"mnOptions\0228\n\007options\030\001 \003(\0132\'.greptime.v1"
".ColumnOptions.OptionsEntry\032.\n\014OptionsEn"
"try\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"@\n\010A"
"rrowIpc\022\016\n\006schema\030\001 \001(\014\022\023\n\013data_header\030\002"
" \001(\014\022\017\n\007payload\030\003 \001(\014*1\n\014SemanticType\022\007\n"
"\003TAG\020\000\022\t\n\005FIELD\020\001\022\r\n\tTIMESTAMP\020\002*\222\004\n\016Col"
"umnDataType\022\013\n\007BOOLEAN\020\000\022\010\n\004INT8\020\001\022\t\n\005IN"
"T16\020\002\022\t\n\005INT32\020\003\022\t\n\005INT64\020\004\022\t\n\005UINT8\020\005\022\n"
"\n\006UINT16\020\006\022\n\n\006UINT32\020\007\022\n\n\006UINT64\020\010\022\013\n\007FL"
"OAT32\020\t\022\013\n\007FLOAT64\020\n\022\n\n\006BINARY\020\013\022\n\n\006STRI"
"NG\020\014\022\010\n\004DATE\020\r\022\014\n\010DATETIME\020\016\022\024\n\020TIMESTAM"
"P_SECOND\020\017\022\031\n\025TIMESTAMP_MILLISECOND\020\020\022\031\n"
"\025TIMESTAMP_MICROSECOND\020\021\022\030\n\024TIMESTAMP_NA"
"NOSECOND\020\022\022\017\n\013TIME_SECOND\020\023\022\024\n\020TIME_MILL"
"ISECOND\020\024\022\024\n\020TIME_MICROSECOND\020\025\022\023\n\017TIME_"
"NANOSECOND\020\026\022\027\n\023INTERVAL_YEAR_MONTH\020\027\022\025\n"
"\021INTERVAL_DAY_TIME\020\030\022\033\n\027INTERVAL_MONTH_D"
"AY_NANO\020\031\022\016\n\nDECIMAL128\020\036\022\010\n\004JSON\020\037\022\n\n\006V"
"ECTOR\020 \022\010\n\004LIST\020(\022\n\n\006STRUCT\020)\022\016\n\nDICTION"
"ARY\020**H\n\010TimeUnit\022\017\n\013MILLISECOND\020\000\022\n\n\006SE"
"COND\020\001\022\017\n\013MICROSECOND\020\002\022\016\n\nNANOSECOND\020\003*"
"$\n\021JsonTypeExtension\022\017\n\013JSON_BINARY\020\000BO\n"
"\016io.greptime.v1B\006CommonZ5github.com/Grep"
"timeTeam/greptime-proto/go/greptime/v1b\006"
"proto3"
;
static ::_pbi::once_flag descriptor_table_greptime_2fv1_2fcommon_2eproto_once;
const ::_pbi::DescriptorTable descriptor_table_greptime_2fv1_2fcommon_2eproto = {
false, false, 3691, descriptor_table_protodef_greptime_2fv1_2fcommon_2eproto,
false, false, 4046, descriptor_table_protodef_greptime_2fv1_2fcommon_2eproto,
"greptime/v1/common.proto",
&descriptor_table_greptime_2fv1_2fcommon_2eproto_once, nullptr, 0, 33,
&descriptor_table_greptime_2fv1_2fcommon_2eproto_once, nullptr, 0, 34,
schemas, file_default_instances, TableStruct_greptime_2fv1_2fcommon_2eproto::offsets,
file_level_metadata_greptime_2fv1_2fcommon_2eproto, file_level_enum_descriptors_greptime_2fv1_2fcommon_2eproto,
file_level_service_descriptors_greptime_2fv1_2fcommon_2eproto,
@@ -999,6 +1037,7 @@ bool ColumnDataType_IsValid(int value) {
case 32:
case 40:
case 41:
case 42:
return true;
default:
return false;
@@ -6089,6 +6128,7 @@ class ColumnDataTypeExtension::_Internal {
static const ::greptime::v1::ListTypeExtension& list_type(const ColumnDataTypeExtension* msg);
static const ::greptime::v1::StructTypeExtension& struct_type(const ColumnDataTypeExtension* msg);
static const ::greptime::v1::JsonNativeTypeExtension& json_native_type(const ColumnDataTypeExtension* msg);
static const ::greptime::v1::DictionaryTypeExtension& dictionary_type(const ColumnDataTypeExtension* msg);
};
const ::greptime::v1::DecimalTypeExtension&
@@ -6111,6 +6151,10 @@ const ::greptime::v1::JsonNativeTypeExtension&
ColumnDataTypeExtension::_Internal::json_native_type(const ColumnDataTypeExtension* msg) {
return *msg->_impl_.type_ext_.json_native_type_;
}
const ::greptime::v1::DictionaryTypeExtension&
ColumnDataTypeExtension::_Internal::dictionary_type(const ColumnDataTypeExtension* msg) {
return *msg->_impl_.type_ext_.dictionary_type_;
}
void ColumnDataTypeExtension::set_allocated_decimal_type(::greptime::v1::DecimalTypeExtension* decimal_type) {
::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
clear_type_ext();
@@ -6186,6 +6230,21 @@ void ColumnDataTypeExtension::set_allocated_json_native_type(::greptime::v1::Jso
}
// @@protoc_insertion_point(field_set_allocated:greptime.v1.ColumnDataTypeExtension.json_native_type)
}
void ColumnDataTypeExtension::set_allocated_dictionary_type(::greptime::v1::DictionaryTypeExtension* dictionary_type) {
::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
clear_type_ext();
if (dictionary_type) {
::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(dictionary_type);
if (message_arena != submessage_arena) {
dictionary_type = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
message_arena, dictionary_type, submessage_arena);
}
set_has_dictionary_type();
_impl_.type_ext_.dictionary_type_ = dictionary_type;
}
// @@protoc_insertion_point(field_set_allocated:greptime.v1.ColumnDataTypeExtension.dictionary_type)
}
ColumnDataTypeExtension::ColumnDataTypeExtension(::PROTOBUF_NAMESPACE_ID::Arena* arena,
bool is_message_owned)
: ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
@@ -6232,6 +6291,11 @@ ColumnDataTypeExtension::ColumnDataTypeExtension(const ColumnDataTypeExtension&
from._internal_json_native_type());
break;
}
case kDictionaryType: {
_this->_internal_mutable_dictionary_type()->::greptime::v1::DictionaryTypeExtension::MergeFrom(
from._internal_dictionary_type());
break;
}
case TYPE_EXT_NOT_SET: {
break;
}
@@ -6308,6 +6372,12 @@ void ColumnDataTypeExtension::clear_type_ext() {
}
break;
}
case kDictionaryType: {
if (GetArenaForAllocation() == nullptr) {
delete _impl_.type_ext_.dictionary_type_;
}
break;
}
case TYPE_EXT_NOT_SET: {
break;
}
@@ -6381,6 +6451,14 @@ const char* ColumnDataTypeExtension::_InternalParse(const char* ptr, ::_pbi::Par
} else
goto handle_unusual;
continue;
// .greptime.v1.DictionaryTypeExtension dictionary_type = 7;
case 7:
if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
ptr = ctx->ParseMessage(_internal_mutable_dictionary_type(), ptr);
CHK_(ptr);
} else
goto handle_unusual;
continue;
default:
goto handle_unusual;
} // switch
@@ -6452,6 +6530,13 @@ uint8_t* ColumnDataTypeExtension::_InternalSerialize(
_Internal::json_native_type(this).GetCachedSize(), target, stream);
}
// .greptime.v1.DictionaryTypeExtension dictionary_type = 7;
if (_internal_has_dictionary_type()) {
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
InternalWriteMessage(7, _Internal::dictionary_type(this),
_Internal::dictionary_type(this).GetCachedSize(), target, stream);
}
if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
_internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
@@ -6510,6 +6595,13 @@ size_t ColumnDataTypeExtension::ByteSizeLong() const {
*_impl_.type_ext_.json_native_type_);
break;
}
// .greptime.v1.DictionaryTypeExtension dictionary_type = 7;
case kDictionaryType: {
total_size += 1 +
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
*_impl_.type_ext_.dictionary_type_);
break;
}
case TYPE_EXT_NOT_SET: {
break;
}
@@ -6562,6 +6654,11 @@ void ColumnDataTypeExtension::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg
from._internal_json_native_type());
break;
}
case kDictionaryType: {
_this->_internal_mutable_dictionary_type()->::greptime::v1::DictionaryTypeExtension::MergeFrom(
from._internal_dictionary_type());
break;
}
case TYPE_EXT_NOT_SET: {
break;
}
@@ -7623,6 +7720,305 @@ void JsonNativeTypeExtension::InternalSwap(JsonNativeTypeExtension* other) {
// ===================================================================
class DictionaryTypeExtension::_Internal {
public:
static const ::greptime::v1::ColumnDataTypeExtension& key_datatype_extension(const DictionaryTypeExtension* msg);
static const ::greptime::v1::ColumnDataTypeExtension& value_datatype_extension(const DictionaryTypeExtension* msg);
};
const ::greptime::v1::ColumnDataTypeExtension&
DictionaryTypeExtension::_Internal::key_datatype_extension(const DictionaryTypeExtension* msg) {
return *msg->_impl_.key_datatype_extension_;
}
const ::greptime::v1::ColumnDataTypeExtension&
DictionaryTypeExtension::_Internal::value_datatype_extension(const DictionaryTypeExtension* msg) {
return *msg->_impl_.value_datatype_extension_;
}
DictionaryTypeExtension::DictionaryTypeExtension(::PROTOBUF_NAMESPACE_ID::Arena* arena,
bool is_message_owned)
: ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
SharedCtor(arena, is_message_owned);
// @@protoc_insertion_point(arena_constructor:greptime.v1.DictionaryTypeExtension)
}
DictionaryTypeExtension::DictionaryTypeExtension(const DictionaryTypeExtension& from)
: ::PROTOBUF_NAMESPACE_ID::Message() {
DictionaryTypeExtension* const _this = this; (void)_this;
new (&_impl_) Impl_{
decltype(_impl_.key_datatype_extension_){nullptr}
, decltype(_impl_.value_datatype_extension_){nullptr}
, decltype(_impl_.key_datatype_){}
, decltype(_impl_.value_datatype_){}
, /*decltype(_impl_._cached_size_)*/{}};
_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
if (from._internal_has_key_datatype_extension()) {
_this->_impl_.key_datatype_extension_ = new ::greptime::v1::ColumnDataTypeExtension(*from._impl_.key_datatype_extension_);
}
if (from._internal_has_value_datatype_extension()) {
_this->_impl_.value_datatype_extension_ = new ::greptime::v1::ColumnDataTypeExtension(*from._impl_.value_datatype_extension_);
}
::memcpy(&_impl_.key_datatype_, &from._impl_.key_datatype_,
static_cast<size_t>(reinterpret_cast<char*>(&_impl_.value_datatype_) -
reinterpret_cast<char*>(&_impl_.key_datatype_)) + sizeof(_impl_.value_datatype_));
// @@protoc_insertion_point(copy_constructor:greptime.v1.DictionaryTypeExtension)
}
inline void DictionaryTypeExtension::SharedCtor(
::_pb::Arena* arena, bool is_message_owned) {
(void)arena;
(void)is_message_owned;
new (&_impl_) Impl_{
decltype(_impl_.key_datatype_extension_){nullptr}
, decltype(_impl_.value_datatype_extension_){nullptr}
, decltype(_impl_.key_datatype_){0}
, decltype(_impl_.value_datatype_){0}
, /*decltype(_impl_._cached_size_)*/{}
};
}
DictionaryTypeExtension::~DictionaryTypeExtension() {
// @@protoc_insertion_point(destructor:greptime.v1.DictionaryTypeExtension)
if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
(void)arena;
return;
}
SharedDtor();
}
inline void DictionaryTypeExtension::SharedDtor() {
GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
if (this != internal_default_instance()) delete _impl_.key_datatype_extension_;
if (this != internal_default_instance()) delete _impl_.value_datatype_extension_;
}
void DictionaryTypeExtension::SetCachedSize(int size) const {
_impl_._cached_size_.Set(size);
}
void DictionaryTypeExtension::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DictionaryTypeExtension)
uint32_t cached_has_bits = 0;
// Prevent compiler warnings about cached_has_bits being unused
(void) cached_has_bits;
if (GetArenaForAllocation() == nullptr && _impl_.key_datatype_extension_ != nullptr) {
delete _impl_.key_datatype_extension_;
}
_impl_.key_datatype_extension_ = nullptr;
if (GetArenaForAllocation() == nullptr && _impl_.value_datatype_extension_ != nullptr) {
delete _impl_.value_datatype_extension_;
}
_impl_.value_datatype_extension_ = nullptr;
::memset(&_impl_.key_datatype_, 0, static_cast<size_t>(
reinterpret_cast<char*>(&_impl_.value_datatype_) -
reinterpret_cast<char*>(&_impl_.key_datatype_)) + sizeof(_impl_.value_datatype_));
_internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}
const char* DictionaryTypeExtension::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
while (!ctx->Done(&ptr)) {
uint32_t tag;
ptr = ::_pbi::ReadTag(ptr, &tag);
switch (tag >> 3) {
// .greptime.v1.ColumnDataType key_datatype = 1;
case 1:
if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
CHK_(ptr);
_internal_set_key_datatype(static_cast<::greptime::v1::ColumnDataType>(val));
} else
goto handle_unusual;
continue;
// .greptime.v1.ColumnDataTypeExtension key_datatype_extension = 2;
case 2:
if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
ptr = ctx->ParseMessage(_internal_mutable_key_datatype_extension(), ptr);
CHK_(ptr);
} else
goto handle_unusual;
continue;
// .greptime.v1.ColumnDataType value_datatype = 3;
case 3:
if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
CHK_(ptr);
_internal_set_value_datatype(static_cast<::greptime::v1::ColumnDataType>(val));
} else
goto handle_unusual;
continue;
// .greptime.v1.ColumnDataTypeExtension value_datatype_extension = 4;
case 4:
if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
ptr = ctx->ParseMessage(_internal_mutable_value_datatype_extension(), ptr);
CHK_(ptr);
} else
goto handle_unusual;
continue;
default:
goto handle_unusual;
} // switch
handle_unusual:
if ((tag == 0) || ((tag & 7) == 4)) {
CHK_(ptr);
ctx->SetLastTag(tag);
goto message_done;
}
ptr = UnknownFieldParse(
tag,
_internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
ptr, ctx);
CHK_(ptr != nullptr);
} // while
message_done:
return ptr;
failure:
ptr = nullptr;
goto message_done;
#undef CHK_
}
uint8_t* DictionaryTypeExtension::_InternalSerialize(
uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
// @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DictionaryTypeExtension)
uint32_t cached_has_bits = 0;
(void) cached_has_bits;
// .greptime.v1.ColumnDataType key_datatype = 1;
if (this->_internal_key_datatype() != 0) {
target = stream->EnsureSpace(target);
target = ::_pbi::WireFormatLite::WriteEnumToArray(
1, this->_internal_key_datatype(), target);
}
// .greptime.v1.ColumnDataTypeExtension key_datatype_extension = 2;
if (this->_internal_has_key_datatype_extension()) {
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
InternalWriteMessage(2, _Internal::key_datatype_extension(this),
_Internal::key_datatype_extension(this).GetCachedSize(), target, stream);
}
// .greptime.v1.ColumnDataType value_datatype = 3;
if (this->_internal_value_datatype() != 0) {
target = stream->EnsureSpace(target);
target = ::_pbi::WireFormatLite::WriteEnumToArray(
3, this->_internal_value_datatype(), target);
}
// .greptime.v1.ColumnDataTypeExtension value_datatype_extension = 4;
if (this->_internal_has_value_datatype_extension()) {
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
InternalWriteMessage(4, _Internal::value_datatype_extension(this),
_Internal::value_datatype_extension(this).GetCachedSize(), target, stream);
}
if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
_internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
}
// @@protoc_insertion_point(serialize_to_array_end:greptime.v1.DictionaryTypeExtension)
return target;
}
size_t DictionaryTypeExtension::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DictionaryTypeExtension)
size_t total_size = 0;
uint32_t cached_has_bits = 0;
// Prevent compiler warnings about cached_has_bits being unused
(void) cached_has_bits;
// .greptime.v1.ColumnDataTypeExtension key_datatype_extension = 2;
if (this->_internal_has_key_datatype_extension()) {
total_size += 1 +
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
*_impl_.key_datatype_extension_);
}
// .greptime.v1.ColumnDataTypeExtension value_datatype_extension = 4;
if (this->_internal_has_value_datatype_extension()) {
total_size += 1 +
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
*_impl_.value_datatype_extension_);
}
// .greptime.v1.ColumnDataType key_datatype = 1;
if (this->_internal_key_datatype() != 0) {
total_size += 1 +
::_pbi::WireFormatLite::EnumSize(this->_internal_key_datatype());
}
// .greptime.v1.ColumnDataType value_datatype = 3;
if (this->_internal_value_datatype() != 0) {
total_size += 1 +
::_pbi::WireFormatLite::EnumSize(this->_internal_value_datatype());
}
return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData DictionaryTypeExtension::_class_data_ = {
::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
DictionaryTypeExtension::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*DictionaryTypeExtension::GetClassData() const { return &_class_data_; }
void DictionaryTypeExtension::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
auto* const _this = static_cast<DictionaryTypeExtension*>(&to_msg);
auto& from = static_cast<const DictionaryTypeExtension&>(from_msg);
// @@protoc_insertion_point(class_specific_merge_from_start:greptime.v1.DictionaryTypeExtension)
GOOGLE_DCHECK_NE(&from, _this);
uint32_t cached_has_bits = 0;
(void) cached_has_bits;
if (from._internal_has_key_datatype_extension()) {
_this->_internal_mutable_key_datatype_extension()->::greptime::v1::ColumnDataTypeExtension::MergeFrom(
from._internal_key_datatype_extension());
}
if (from._internal_has_value_datatype_extension()) {
_this->_internal_mutable_value_datatype_extension()->::greptime::v1::ColumnDataTypeExtension::MergeFrom(
from._internal_value_datatype_extension());
}
if (from._internal_key_datatype() != 0) {
_this->_internal_set_key_datatype(from._internal_key_datatype());
}
if (from._internal_value_datatype() != 0) {
_this->_internal_set_value_datatype(from._internal_value_datatype());
}
_this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}
void DictionaryTypeExtension::CopyFrom(const DictionaryTypeExtension& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DictionaryTypeExtension)
if (&from == this) return;
Clear();
MergeFrom(from);
}
bool DictionaryTypeExtension::IsInitialized() const {
return true;
}
void DictionaryTypeExtension::InternalSwap(DictionaryTypeExtension* other) {
using std::swap;
_internal_metadata_.InternalSwap(&other->_internal_metadata_);
::PROTOBUF_NAMESPACE_ID::internal::memswap<
PROTOBUF_FIELD_OFFSET(DictionaryTypeExtension, _impl_.value_datatype_)
+ sizeof(DictionaryTypeExtension::_impl_.value_datatype_)
- PROTOBUF_FIELD_OFFSET(DictionaryTypeExtension, _impl_.key_datatype_extension_)>(
reinterpret_cast<char*>(&_impl_.key_datatype_extension_),
reinterpret_cast<char*>(&other->_impl_.key_datatype_extension_));
}
::PROTOBUF_NAMESPACE_ID::Metadata DictionaryTypeExtension::GetMetadata() const {
return ::_pbi::AssignDescriptors(
&descriptor_table_greptime_2fv1_2fcommon_2eproto_getter, &descriptor_table_greptime_2fv1_2fcommon_2eproto_once,
file_level_metadata_greptime_2fv1_2fcommon_2eproto[30]);
}
// ===================================================================
ColumnOptions_OptionsEntry_DoNotUse::ColumnOptions_OptionsEntry_DoNotUse() {}
ColumnOptions_OptionsEntry_DoNotUse::ColumnOptions_OptionsEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena)
: SuperType(arena) {}
@@ -7632,7 +8028,7 @@ void ColumnOptions_OptionsEntry_DoNotUse::MergeFrom(const ColumnOptions_OptionsE
::PROTOBUF_NAMESPACE_ID::Metadata ColumnOptions_OptionsEntry_DoNotUse::GetMetadata() const {
return ::_pbi::AssignDescriptors(
&descriptor_table_greptime_2fv1_2fcommon_2eproto_getter, &descriptor_table_greptime_2fv1_2fcommon_2eproto_once,
file_level_metadata_greptime_2fv1_2fcommon_2eproto[30]);
file_level_metadata_greptime_2fv1_2fcommon_2eproto[31]);
}
// ===================================================================
@@ -7851,7 +8247,7 @@ void ColumnOptions::InternalSwap(ColumnOptions* other) {
::PROTOBUF_NAMESPACE_ID::Metadata ColumnOptions::GetMetadata() const {
return ::_pbi::AssignDescriptors(
&descriptor_table_greptime_2fv1_2fcommon_2eproto_getter, &descriptor_table_greptime_2fv1_2fcommon_2eproto_once,
file_level_metadata_greptime_2fv1_2fcommon_2eproto[31]);
file_level_metadata_greptime_2fv1_2fcommon_2eproto[32]);
}
// ===================================================================
@@ -8139,7 +8535,7 @@ void ArrowIpc::InternalSwap(ArrowIpc* other) {
::PROTOBUF_NAMESPACE_ID::Metadata ArrowIpc::GetMetadata() const {
return ::_pbi::AssignDescriptors(
&descriptor_table_greptime_2fv1_2fcommon_2eproto_getter, &descriptor_table_greptime_2fv1_2fcommon_2eproto_once,
file_level_metadata_greptime_2fv1_2fcommon_2eproto[32]);
file_level_metadata_greptime_2fv1_2fcommon_2eproto[33]);
}
// @@protoc_insertion_point(namespace_scope)
@@ -8266,6 +8662,10 @@ template<> PROTOBUF_NOINLINE ::greptime::v1::JsonNativeTypeExtension*
Arena::CreateMaybeMessage< ::greptime::v1::JsonNativeTypeExtension >(Arena* arena) {
return Arena::CreateMessageInternal< ::greptime::v1::JsonNativeTypeExtension >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::DictionaryTypeExtension*
Arena::CreateMaybeMessage< ::greptime::v1::DictionaryTypeExtension >(Arena* arena) {
return Arena::CreateMessageInternal< ::greptime::v1::DictionaryTypeExtension >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::ColumnOptions_OptionsEntry_DoNotUse*
Arena::CreateMaybeMessage< ::greptime::v1::ColumnOptions_OptionsEntry_DoNotUse >(Arena* arena) {
return Arena::CreateMessageInternal< ::greptime::v1::ColumnOptions_OptionsEntry_DoNotUse >(arena);
+529 -3
View File
@@ -77,6 +77,9 @@ extern Decimal128DefaultTypeInternal _Decimal128_default_instance_;
class DecimalTypeExtension;
struct DecimalTypeExtensionDefaultTypeInternal;
extern DecimalTypeExtensionDefaultTypeInternal _DecimalTypeExtension_default_instance_;
class DictionaryTypeExtension;
struct DictionaryTypeExtensionDefaultTypeInternal;
extern DictionaryTypeExtensionDefaultTypeInternal _DictionaryTypeExtension_default_instance_;
class EvalInterval;
struct EvalIntervalDefaultTypeInternal;
extern EvalIntervalDefaultTypeInternal _EvalInterval_default_instance_;
@@ -161,6 +164,7 @@ template<> ::greptime::v1::ColumnOptions* Arena::CreateMaybeMessage<::greptime::
template<> ::greptime::v1::ColumnOptions_OptionsEntry_DoNotUse* Arena::CreateMaybeMessage<::greptime::v1::ColumnOptions_OptionsEntry_DoNotUse>(Arena*);
template<> ::greptime::v1::Decimal128* Arena::CreateMaybeMessage<::greptime::v1::Decimal128>(Arena*);
template<> ::greptime::v1::DecimalTypeExtension* Arena::CreateMaybeMessage<::greptime::v1::DecimalTypeExtension>(Arena*);
template<> ::greptime::v1::DictionaryTypeExtension* Arena::CreateMaybeMessage<::greptime::v1::DictionaryTypeExtension>(Arena*);
template<> ::greptime::v1::EvalInterval* Arena::CreateMaybeMessage<::greptime::v1::EvalInterval>(Arena*);
template<> ::greptime::v1::ExpireAfter* Arena::CreateMaybeMessage<::greptime::v1::ExpireAfter>(Arena*);
template<> ::greptime::v1::ExplainOptions* Arena::CreateMaybeMessage<::greptime::v1::ExplainOptions>(Arena*);
@@ -247,12 +251,13 @@ enum ColumnDataType : int {
VECTOR = 32,
LIST = 40,
STRUCT = 41,
DICTIONARY = 42,
ColumnDataType_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<int32_t>::min(),
ColumnDataType_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<int32_t>::max()
};
bool ColumnDataType_IsValid(int value);
constexpr ColumnDataType ColumnDataType_MIN = BOOLEAN;
constexpr ColumnDataType ColumnDataType_MAX = STRUCT;
constexpr ColumnDataType ColumnDataType_MAX = DICTIONARY;
constexpr int ColumnDataType_ARRAYSIZE = ColumnDataType_MAX + 1;
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* ColumnDataType_descriptor();
@@ -3957,6 +3962,7 @@ class ColumnDataTypeExtension final :
kListType = 4,
kStructType = 5,
kJsonNativeType = 6,
kDictionaryType = 7,
TYPE_EXT_NOT_SET = 0,
};
@@ -4044,6 +4050,7 @@ class ColumnDataTypeExtension final :
kListTypeFieldNumber = 4,
kStructTypeFieldNumber = 5,
kJsonNativeTypeFieldNumber = 6,
kDictionaryTypeFieldNumber = 7,
};
// .greptime.v1.DecimalTypeExtension decimal_type = 1;
bool has_decimal_type() const;
@@ -4148,6 +4155,24 @@ class ColumnDataTypeExtension final :
::greptime::v1::JsonNativeTypeExtension* json_native_type);
::greptime::v1::JsonNativeTypeExtension* unsafe_arena_release_json_native_type();
// .greptime.v1.DictionaryTypeExtension dictionary_type = 7;
bool has_dictionary_type() const;
private:
bool _internal_has_dictionary_type() const;
public:
void clear_dictionary_type();
const ::greptime::v1::DictionaryTypeExtension& dictionary_type() const;
PROTOBUF_NODISCARD ::greptime::v1::DictionaryTypeExtension* release_dictionary_type();
::greptime::v1::DictionaryTypeExtension* mutable_dictionary_type();
void set_allocated_dictionary_type(::greptime::v1::DictionaryTypeExtension* dictionary_type);
private:
const ::greptime::v1::DictionaryTypeExtension& _internal_dictionary_type() const;
::greptime::v1::DictionaryTypeExtension* _internal_mutable_dictionary_type();
public:
void unsafe_arena_set_allocated_dictionary_type(
::greptime::v1::DictionaryTypeExtension* dictionary_type);
::greptime::v1::DictionaryTypeExtension* unsafe_arena_release_dictionary_type();
void clear_type_ext();
TypeExtCase type_ext_case() const;
// @@protoc_insertion_point(class_scope:greptime.v1.ColumnDataTypeExtension)
@@ -4159,6 +4184,7 @@ class ColumnDataTypeExtension final :
void set_has_list_type();
void set_has_struct_type();
void set_has_json_native_type();
void set_has_dictionary_type();
inline bool has_type_ext() const;
inline void clear_has_type_ext();
@@ -4176,6 +4202,7 @@ class ColumnDataTypeExtension final :
::greptime::v1::ListTypeExtension* list_type_;
::greptime::v1::StructTypeExtension* struct_type_;
::greptime::v1::JsonNativeTypeExtension* json_native_type_;
::greptime::v1::DictionaryTypeExtension* dictionary_type_;
} type_ext_;
mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
uint32_t _oneof_case_[1];
@@ -4986,6 +5013,205 @@ class JsonNativeTypeExtension final :
};
// -------------------------------------------------------------------
class DictionaryTypeExtension final :
public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:greptime.v1.DictionaryTypeExtension) */ {
public:
inline DictionaryTypeExtension() : DictionaryTypeExtension(nullptr) {}
~DictionaryTypeExtension() override;
explicit PROTOBUF_CONSTEXPR DictionaryTypeExtension(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized);
DictionaryTypeExtension(const DictionaryTypeExtension& from);
DictionaryTypeExtension(DictionaryTypeExtension&& from) noexcept
: DictionaryTypeExtension() {
*this = ::std::move(from);
}
inline DictionaryTypeExtension& operator=(const DictionaryTypeExtension& from) {
CopyFrom(from);
return *this;
}
inline DictionaryTypeExtension& operator=(DictionaryTypeExtension&& from) noexcept {
if (this == &from) return *this;
if (GetOwningArena() == from.GetOwningArena()
#ifdef PROTOBUF_FORCE_COPY_IN_MOVE
&& GetOwningArena() != nullptr
#endif // !PROTOBUF_FORCE_COPY_IN_MOVE
) {
InternalSwap(&from);
} else {
CopyFrom(from);
}
return *this;
}
static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
return GetDescriptor();
}
static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
return default_instance().GetMetadata().descriptor;
}
static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
return default_instance().GetMetadata().reflection;
}
static const DictionaryTypeExtension& default_instance() {
return *internal_default_instance();
}
static inline const DictionaryTypeExtension* internal_default_instance() {
return reinterpret_cast<const DictionaryTypeExtension*>(
&_DictionaryTypeExtension_default_instance_);
}
static constexpr int kIndexInFileMessages =
30;
friend void swap(DictionaryTypeExtension& a, DictionaryTypeExtension& b) {
a.Swap(&b);
}
inline void Swap(DictionaryTypeExtension* other) {
if (other == this) return;
#ifdef PROTOBUF_FORCE_COPY_IN_SWAP
if (GetOwningArena() != nullptr &&
GetOwningArena() == other->GetOwningArena()) {
#else // PROTOBUF_FORCE_COPY_IN_SWAP
if (GetOwningArena() == other->GetOwningArena()) {
#endif // !PROTOBUF_FORCE_COPY_IN_SWAP
InternalSwap(other);
} else {
::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
}
}
void UnsafeArenaSwap(DictionaryTypeExtension* other) {
if (other == this) return;
GOOGLE_DCHECK(GetOwningArena() == other->GetOwningArena());
InternalSwap(other);
}
// implements Message ----------------------------------------------
DictionaryTypeExtension* New(::PROTOBUF_NAMESPACE_ID::Arena* arena = nullptr) const final {
return CreateMaybeMessage<DictionaryTypeExtension>(arena);
}
using ::PROTOBUF_NAMESPACE_ID::Message::CopyFrom;
void CopyFrom(const DictionaryTypeExtension& from);
using ::PROTOBUF_NAMESPACE_ID::Message::MergeFrom;
void MergeFrom( const DictionaryTypeExtension& from) {
DictionaryTypeExtension::MergeImpl(*this, from);
}
private:
static void MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg);
public:
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
bool IsInitialized() const final;
size_t ByteSizeLong() const final;
const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
uint8_t* _InternalSerialize(
uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
int GetCachedSize() const final { return _impl_._cached_size_.Get(); }
private:
void SharedCtor(::PROTOBUF_NAMESPACE_ID::Arena* arena, bool is_message_owned);
void SharedDtor();
void SetCachedSize(int size) const final;
void InternalSwap(DictionaryTypeExtension* other);
private:
friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
return "greptime.v1.DictionaryTypeExtension";
}
protected:
explicit DictionaryTypeExtension(::PROTOBUF_NAMESPACE_ID::Arena* arena,
bool is_message_owned = false);
public:
static const ClassData _class_data_;
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*GetClassData() const final;
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
// nested types ----------------------------------------------------
// accessors -------------------------------------------------------
enum : int {
kKeyDatatypeExtensionFieldNumber = 2,
kValueDatatypeExtensionFieldNumber = 4,
kKeyDatatypeFieldNumber = 1,
kValueDatatypeFieldNumber = 3,
};
// .greptime.v1.ColumnDataTypeExtension key_datatype_extension = 2;
bool has_key_datatype_extension() const;
private:
bool _internal_has_key_datatype_extension() const;
public:
void clear_key_datatype_extension();
const ::greptime::v1::ColumnDataTypeExtension& key_datatype_extension() const;
PROTOBUF_NODISCARD ::greptime::v1::ColumnDataTypeExtension* release_key_datatype_extension();
::greptime::v1::ColumnDataTypeExtension* mutable_key_datatype_extension();
void set_allocated_key_datatype_extension(::greptime::v1::ColumnDataTypeExtension* key_datatype_extension);
private:
const ::greptime::v1::ColumnDataTypeExtension& _internal_key_datatype_extension() const;
::greptime::v1::ColumnDataTypeExtension* _internal_mutable_key_datatype_extension();
public:
void unsafe_arena_set_allocated_key_datatype_extension(
::greptime::v1::ColumnDataTypeExtension* key_datatype_extension);
::greptime::v1::ColumnDataTypeExtension* unsafe_arena_release_key_datatype_extension();
// .greptime.v1.ColumnDataTypeExtension value_datatype_extension = 4;
bool has_value_datatype_extension() const;
private:
bool _internal_has_value_datatype_extension() const;
public:
void clear_value_datatype_extension();
const ::greptime::v1::ColumnDataTypeExtension& value_datatype_extension() const;
PROTOBUF_NODISCARD ::greptime::v1::ColumnDataTypeExtension* release_value_datatype_extension();
::greptime::v1::ColumnDataTypeExtension* mutable_value_datatype_extension();
void set_allocated_value_datatype_extension(::greptime::v1::ColumnDataTypeExtension* value_datatype_extension);
private:
const ::greptime::v1::ColumnDataTypeExtension& _internal_value_datatype_extension() const;
::greptime::v1::ColumnDataTypeExtension* _internal_mutable_value_datatype_extension();
public:
void unsafe_arena_set_allocated_value_datatype_extension(
::greptime::v1::ColumnDataTypeExtension* value_datatype_extension);
::greptime::v1::ColumnDataTypeExtension* unsafe_arena_release_value_datatype_extension();
// .greptime.v1.ColumnDataType key_datatype = 1;
void clear_key_datatype();
::greptime::v1::ColumnDataType key_datatype() const;
void set_key_datatype(::greptime::v1::ColumnDataType value);
private:
::greptime::v1::ColumnDataType _internal_key_datatype() const;
void _internal_set_key_datatype(::greptime::v1::ColumnDataType value);
public:
// .greptime.v1.ColumnDataType value_datatype = 3;
void clear_value_datatype();
::greptime::v1::ColumnDataType value_datatype() const;
void set_value_datatype(::greptime::v1::ColumnDataType value);
private:
::greptime::v1::ColumnDataType _internal_value_datatype() const;
void _internal_set_value_datatype(::greptime::v1::ColumnDataType value);
public:
// @@protoc_insertion_point(class_scope:greptime.v1.DictionaryTypeExtension)
private:
class _Internal;
template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
typedef void InternalArenaConstructable_;
typedef void DestructorSkippable_;
struct Impl_ {
::greptime::v1::ColumnDataTypeExtension* key_datatype_extension_;
::greptime::v1::ColumnDataTypeExtension* value_datatype_extension_;
int key_datatype_;
int value_datatype_;
mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
};
union { Impl_ _impl_; };
friend struct ::TableStruct_greptime_2fv1_2fcommon_2eproto;
};
// -------------------------------------------------------------------
class ColumnOptions_OptionsEntry_DoNotUse : public ::PROTOBUF_NAMESPACE_ID::internal::MapEntry<ColumnOptions_OptionsEntry_DoNotUse,
std::string, std::string,
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_STRING,
@@ -5062,7 +5288,7 @@ class ColumnOptions final :
&_ColumnOptions_default_instance_);
}
static constexpr int kIndexInFileMessages =
31;
32;
friend void swap(ColumnOptions& a, ColumnOptions& b) {
a.Swap(&b);
@@ -5225,7 +5451,7 @@ class ArrowIpc final :
&_ArrowIpc_default_instance_);
}
static constexpr int kIndexInFileMessages =
32;
33;
friend void swap(ArrowIpc& a, ArrowIpc& b) {
a.Swap(&b);
@@ -7910,6 +8136,80 @@ inline ::greptime::v1::JsonNativeTypeExtension* ColumnDataTypeExtension::mutable
return _msg;
}
// .greptime.v1.DictionaryTypeExtension dictionary_type = 7;
inline bool ColumnDataTypeExtension::_internal_has_dictionary_type() const {
return type_ext_case() == kDictionaryType;
}
inline bool ColumnDataTypeExtension::has_dictionary_type() const {
return _internal_has_dictionary_type();
}
inline void ColumnDataTypeExtension::set_has_dictionary_type() {
_impl_._oneof_case_[0] = kDictionaryType;
}
inline void ColumnDataTypeExtension::clear_dictionary_type() {
if (_internal_has_dictionary_type()) {
if (GetArenaForAllocation() == nullptr) {
delete _impl_.type_ext_.dictionary_type_;
}
clear_has_type_ext();
}
}
inline ::greptime::v1::DictionaryTypeExtension* ColumnDataTypeExtension::release_dictionary_type() {
// @@protoc_insertion_point(field_release:greptime.v1.ColumnDataTypeExtension.dictionary_type)
if (_internal_has_dictionary_type()) {
clear_has_type_ext();
::greptime::v1::DictionaryTypeExtension* temp = _impl_.type_ext_.dictionary_type_;
if (GetArenaForAllocation() != nullptr) {
temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
}
_impl_.type_ext_.dictionary_type_ = nullptr;
return temp;
} else {
return nullptr;
}
}
inline const ::greptime::v1::DictionaryTypeExtension& ColumnDataTypeExtension::_internal_dictionary_type() const {
return _internal_has_dictionary_type()
? *_impl_.type_ext_.dictionary_type_
: reinterpret_cast< ::greptime::v1::DictionaryTypeExtension&>(::greptime::v1::_DictionaryTypeExtension_default_instance_);
}
inline const ::greptime::v1::DictionaryTypeExtension& ColumnDataTypeExtension::dictionary_type() const {
// @@protoc_insertion_point(field_get:greptime.v1.ColumnDataTypeExtension.dictionary_type)
return _internal_dictionary_type();
}
inline ::greptime::v1::DictionaryTypeExtension* ColumnDataTypeExtension::unsafe_arena_release_dictionary_type() {
// @@protoc_insertion_point(field_unsafe_arena_release:greptime.v1.ColumnDataTypeExtension.dictionary_type)
if (_internal_has_dictionary_type()) {
clear_has_type_ext();
::greptime::v1::DictionaryTypeExtension* temp = _impl_.type_ext_.dictionary_type_;
_impl_.type_ext_.dictionary_type_ = nullptr;
return temp;
} else {
return nullptr;
}
}
inline void ColumnDataTypeExtension::unsafe_arena_set_allocated_dictionary_type(::greptime::v1::DictionaryTypeExtension* dictionary_type) {
clear_type_ext();
if (dictionary_type) {
set_has_dictionary_type();
_impl_.type_ext_.dictionary_type_ = dictionary_type;
}
// @@protoc_insertion_point(field_unsafe_arena_set_allocated:greptime.v1.ColumnDataTypeExtension.dictionary_type)
}
inline ::greptime::v1::DictionaryTypeExtension* ColumnDataTypeExtension::_internal_mutable_dictionary_type() {
if (!_internal_has_dictionary_type()) {
clear_type_ext();
set_has_dictionary_type();
_impl_.type_ext_.dictionary_type_ = CreateMaybeMessage< ::greptime::v1::DictionaryTypeExtension >(GetArenaForAllocation());
}
return _impl_.type_ext_.dictionary_type_;
}
inline ::greptime::v1::DictionaryTypeExtension* ColumnDataTypeExtension::mutable_dictionary_type() {
::greptime::v1::DictionaryTypeExtension* _msg = _internal_mutable_dictionary_type();
// @@protoc_insertion_point(field_mutable:greptime.v1.ColumnDataTypeExtension.dictionary_type)
return _msg;
}
inline bool ColumnDataTypeExtension::has_type_ext() const {
return type_ext_case() != TYPE_EXT_NOT_SET;
}
@@ -8261,6 +8561,230 @@ inline void JsonNativeTypeExtension::set_allocated_datatype_extension(::greptime
// -------------------------------------------------------------------
// DictionaryTypeExtension
// .greptime.v1.ColumnDataType key_datatype = 1;
inline void DictionaryTypeExtension::clear_key_datatype() {
_impl_.key_datatype_ = 0;
}
inline ::greptime::v1::ColumnDataType DictionaryTypeExtension::_internal_key_datatype() const {
return static_cast< ::greptime::v1::ColumnDataType >(_impl_.key_datatype_);
}
inline ::greptime::v1::ColumnDataType DictionaryTypeExtension::key_datatype() const {
// @@protoc_insertion_point(field_get:greptime.v1.DictionaryTypeExtension.key_datatype)
return _internal_key_datatype();
}
inline void DictionaryTypeExtension::_internal_set_key_datatype(::greptime::v1::ColumnDataType value) {
_impl_.key_datatype_ = value;
}
inline void DictionaryTypeExtension::set_key_datatype(::greptime::v1::ColumnDataType value) {
_internal_set_key_datatype(value);
// @@protoc_insertion_point(field_set:greptime.v1.DictionaryTypeExtension.key_datatype)
}
// .greptime.v1.ColumnDataTypeExtension key_datatype_extension = 2;
inline bool DictionaryTypeExtension::_internal_has_key_datatype_extension() const {
return this != internal_default_instance() && _impl_.key_datatype_extension_ != nullptr;
}
inline bool DictionaryTypeExtension::has_key_datatype_extension() const {
return _internal_has_key_datatype_extension();
}
inline void DictionaryTypeExtension::clear_key_datatype_extension() {
if (GetArenaForAllocation() == nullptr && _impl_.key_datatype_extension_ != nullptr) {
delete _impl_.key_datatype_extension_;
}
_impl_.key_datatype_extension_ = nullptr;
}
inline const ::greptime::v1::ColumnDataTypeExtension& DictionaryTypeExtension::_internal_key_datatype_extension() const {
const ::greptime::v1::ColumnDataTypeExtension* p = _impl_.key_datatype_extension_;
return p != nullptr ? *p : reinterpret_cast<const ::greptime::v1::ColumnDataTypeExtension&>(
::greptime::v1::_ColumnDataTypeExtension_default_instance_);
}
inline const ::greptime::v1::ColumnDataTypeExtension& DictionaryTypeExtension::key_datatype_extension() const {
// @@protoc_insertion_point(field_get:greptime.v1.DictionaryTypeExtension.key_datatype_extension)
return _internal_key_datatype_extension();
}
inline void DictionaryTypeExtension::unsafe_arena_set_allocated_key_datatype_extension(
::greptime::v1::ColumnDataTypeExtension* key_datatype_extension) {
if (GetArenaForAllocation() == nullptr) {
delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.key_datatype_extension_);
}
_impl_.key_datatype_extension_ = key_datatype_extension;
if (key_datatype_extension) {
} else {
}
// @@protoc_insertion_point(field_unsafe_arena_set_allocated:greptime.v1.DictionaryTypeExtension.key_datatype_extension)
}
inline ::greptime::v1::ColumnDataTypeExtension* DictionaryTypeExtension::release_key_datatype_extension() {
::greptime::v1::ColumnDataTypeExtension* temp = _impl_.key_datatype_extension_;
_impl_.key_datatype_extension_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
if (GetArenaForAllocation() == nullptr) { delete old; }
#else // PROTOBUF_FORCE_COPY_IN_RELEASE
if (GetArenaForAllocation() != nullptr) {
temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
}
#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
return temp;
}
inline ::greptime::v1::ColumnDataTypeExtension* DictionaryTypeExtension::unsafe_arena_release_key_datatype_extension() {
// @@protoc_insertion_point(field_release:greptime.v1.DictionaryTypeExtension.key_datatype_extension)
::greptime::v1::ColumnDataTypeExtension* temp = _impl_.key_datatype_extension_;
_impl_.key_datatype_extension_ = nullptr;
return temp;
}
inline ::greptime::v1::ColumnDataTypeExtension* DictionaryTypeExtension::_internal_mutable_key_datatype_extension() {
if (_impl_.key_datatype_extension_ == nullptr) {
auto* p = CreateMaybeMessage<::greptime::v1::ColumnDataTypeExtension>(GetArenaForAllocation());
_impl_.key_datatype_extension_ = p;
}
return _impl_.key_datatype_extension_;
}
inline ::greptime::v1::ColumnDataTypeExtension* DictionaryTypeExtension::mutable_key_datatype_extension() {
::greptime::v1::ColumnDataTypeExtension* _msg = _internal_mutable_key_datatype_extension();
// @@protoc_insertion_point(field_mutable:greptime.v1.DictionaryTypeExtension.key_datatype_extension)
return _msg;
}
inline void DictionaryTypeExtension::set_allocated_key_datatype_extension(::greptime::v1::ColumnDataTypeExtension* key_datatype_extension) {
::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
if (message_arena == nullptr) {
delete _impl_.key_datatype_extension_;
}
if (key_datatype_extension) {
::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(key_datatype_extension);
if (message_arena != submessage_arena) {
key_datatype_extension = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
message_arena, key_datatype_extension, submessage_arena);
}
} else {
}
_impl_.key_datatype_extension_ = key_datatype_extension;
// @@protoc_insertion_point(field_set_allocated:greptime.v1.DictionaryTypeExtension.key_datatype_extension)
}
// .greptime.v1.ColumnDataType value_datatype = 3;
inline void DictionaryTypeExtension::clear_value_datatype() {
_impl_.value_datatype_ = 0;
}
inline ::greptime::v1::ColumnDataType DictionaryTypeExtension::_internal_value_datatype() const {
return static_cast< ::greptime::v1::ColumnDataType >(_impl_.value_datatype_);
}
inline ::greptime::v1::ColumnDataType DictionaryTypeExtension::value_datatype() const {
// @@protoc_insertion_point(field_get:greptime.v1.DictionaryTypeExtension.value_datatype)
return _internal_value_datatype();
}
inline void DictionaryTypeExtension::_internal_set_value_datatype(::greptime::v1::ColumnDataType value) {
_impl_.value_datatype_ = value;
}
inline void DictionaryTypeExtension::set_value_datatype(::greptime::v1::ColumnDataType value) {
_internal_set_value_datatype(value);
// @@protoc_insertion_point(field_set:greptime.v1.DictionaryTypeExtension.value_datatype)
}
// .greptime.v1.ColumnDataTypeExtension value_datatype_extension = 4;
inline bool DictionaryTypeExtension::_internal_has_value_datatype_extension() const {
return this != internal_default_instance() && _impl_.value_datatype_extension_ != nullptr;
}
inline bool DictionaryTypeExtension::has_value_datatype_extension() const {
return _internal_has_value_datatype_extension();
}
inline void DictionaryTypeExtension::clear_value_datatype_extension() {
if (GetArenaForAllocation() == nullptr && _impl_.value_datatype_extension_ != nullptr) {
delete _impl_.value_datatype_extension_;
}
_impl_.value_datatype_extension_ = nullptr;
}
inline const ::greptime::v1::ColumnDataTypeExtension& DictionaryTypeExtension::_internal_value_datatype_extension() const {
const ::greptime::v1::ColumnDataTypeExtension* p = _impl_.value_datatype_extension_;
return p != nullptr ? *p : reinterpret_cast<const ::greptime::v1::ColumnDataTypeExtension&>(
::greptime::v1::_ColumnDataTypeExtension_default_instance_);
}
inline const ::greptime::v1::ColumnDataTypeExtension& DictionaryTypeExtension::value_datatype_extension() const {
// @@protoc_insertion_point(field_get:greptime.v1.DictionaryTypeExtension.value_datatype_extension)
return _internal_value_datatype_extension();
}
inline void DictionaryTypeExtension::unsafe_arena_set_allocated_value_datatype_extension(
::greptime::v1::ColumnDataTypeExtension* value_datatype_extension) {
if (GetArenaForAllocation() == nullptr) {
delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(_impl_.value_datatype_extension_);
}
_impl_.value_datatype_extension_ = value_datatype_extension;
if (value_datatype_extension) {
} else {
}
// @@protoc_insertion_point(field_unsafe_arena_set_allocated:greptime.v1.DictionaryTypeExtension.value_datatype_extension)
}
inline ::greptime::v1::ColumnDataTypeExtension* DictionaryTypeExtension::release_value_datatype_extension() {
::greptime::v1::ColumnDataTypeExtension* temp = _impl_.value_datatype_extension_;
_impl_.value_datatype_extension_ = nullptr;
#ifdef PROTOBUF_FORCE_COPY_IN_RELEASE
auto* old = reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(temp);
temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
if (GetArenaForAllocation() == nullptr) { delete old; }
#else // PROTOBUF_FORCE_COPY_IN_RELEASE
if (GetArenaForAllocation() != nullptr) {
temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
}
#endif // !PROTOBUF_FORCE_COPY_IN_RELEASE
return temp;
}
inline ::greptime::v1::ColumnDataTypeExtension* DictionaryTypeExtension::unsafe_arena_release_value_datatype_extension() {
// @@protoc_insertion_point(field_release:greptime.v1.DictionaryTypeExtension.value_datatype_extension)
::greptime::v1::ColumnDataTypeExtension* temp = _impl_.value_datatype_extension_;
_impl_.value_datatype_extension_ = nullptr;
return temp;
}
inline ::greptime::v1::ColumnDataTypeExtension* DictionaryTypeExtension::_internal_mutable_value_datatype_extension() {
if (_impl_.value_datatype_extension_ == nullptr) {
auto* p = CreateMaybeMessage<::greptime::v1::ColumnDataTypeExtension>(GetArenaForAllocation());
_impl_.value_datatype_extension_ = p;
}
return _impl_.value_datatype_extension_;
}
inline ::greptime::v1::ColumnDataTypeExtension* DictionaryTypeExtension::mutable_value_datatype_extension() {
::greptime::v1::ColumnDataTypeExtension* _msg = _internal_mutable_value_datatype_extension();
// @@protoc_insertion_point(field_mutable:greptime.v1.DictionaryTypeExtension.value_datatype_extension)
return _msg;
}
inline void DictionaryTypeExtension::set_allocated_value_datatype_extension(::greptime::v1::ColumnDataTypeExtension* value_datatype_extension) {
::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
if (message_arena == nullptr) {
delete _impl_.value_datatype_extension_;
}
if (value_datatype_extension) {
::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(value_datatype_extension);
if (message_arena != submessage_arena) {
value_datatype_extension = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
message_arena, value_datatype_extension, submessage_arena);
}
} else {
}
_impl_.value_datatype_extension_ = value_datatype_extension;
// @@protoc_insertion_point(field_set_allocated:greptime.v1.DictionaryTypeExtension.value_datatype_extension)
}
// -------------------------------------------------------------------
// -------------------------------------------------------------------
// ColumnOptions
@@ -8515,6 +9039,8 @@ inline void ArrowIpc::set_allocated_payload(std::string* payload) {
// -------------------------------------------------------------------
// -------------------------------------------------------------------
// @@protoc_insertion_point(namespace_scope)
+264 -129
View File
@@ -117,6 +117,7 @@ const (
ColumnDataType_VECTOR ColumnDataType = 32
ColumnDataType_LIST ColumnDataType = 40
ColumnDataType_STRUCT ColumnDataType = 41
ColumnDataType_DICTIONARY ColumnDataType = 42
)
// Enum value maps for ColumnDataType.
@@ -153,6 +154,7 @@ var (
32: "VECTOR",
40: "LIST",
41: "STRUCT",
42: "DICTIONARY",
}
ColumnDataType_value = map[string]int32{
"BOOLEAN": 0,
@@ -186,6 +188,7 @@ var (
"VECTOR": 32,
"LIST": 40,
"STRUCT": 41,
"DICTIONARY": 42,
}
)
@@ -1511,6 +1514,7 @@ type ColumnDataTypeExtension struct {
// *ColumnDataTypeExtension_ListType
// *ColumnDataTypeExtension_StructType
// *ColumnDataTypeExtension_JsonNativeType
// *ColumnDataTypeExtension_DictionaryType
TypeExt isColumnDataTypeExtension_TypeExt `protobuf_oneof:"type_ext"`
}
@@ -1595,6 +1599,13 @@ func (x *ColumnDataTypeExtension) GetJsonNativeType() *JsonNativeTypeExtension {
return nil
}
func (x *ColumnDataTypeExtension) GetDictionaryType() *DictionaryTypeExtension {
if x, ok := x.GetTypeExt().(*ColumnDataTypeExtension_DictionaryType); ok {
return x.DictionaryType
}
return nil
}
type isColumnDataTypeExtension_TypeExt interface {
isColumnDataTypeExtension_TypeExt()
}
@@ -1626,6 +1637,10 @@ type ColumnDataTypeExtension_JsonNativeType struct {
JsonNativeType *JsonNativeTypeExtension `protobuf:"bytes,6,opt,name=json_native_type,json=jsonNativeType,proto3,oneof"`
}
type ColumnDataTypeExtension_DictionaryType struct {
DictionaryType *DictionaryTypeExtension `protobuf:"bytes,7,opt,name=dictionary_type,json=dictionaryType,proto3,oneof"`
}
func (*ColumnDataTypeExtension_DecimalType) isColumnDataTypeExtension_TypeExt() {}
func (*ColumnDataTypeExtension_JsonType) isColumnDataTypeExtension_TypeExt() {}
@@ -1638,6 +1653,8 @@ func (*ColumnDataTypeExtension_StructType) isColumnDataTypeExtension_TypeExt() {
func (*ColumnDataTypeExtension_JsonNativeType) isColumnDataTypeExtension_TypeExt() {}
func (*ColumnDataTypeExtension_DictionaryType) isColumnDataTypeExtension_TypeExt() {}
type DecimalTypeExtension struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -1897,6 +1914,77 @@ func (x *JsonNativeTypeExtension) GetDatatypeExtension() *ColumnDataTypeExtensio
return nil
}
type DictionaryTypeExtension struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
KeyDatatype ColumnDataType `protobuf:"varint,1,opt,name=key_datatype,json=keyDatatype,proto3,enum=greptime.v1.ColumnDataType" json:"key_datatype,omitempty"`
KeyDatatypeExtension *ColumnDataTypeExtension `protobuf:"bytes,2,opt,name=key_datatype_extension,json=keyDatatypeExtension,proto3" json:"key_datatype_extension,omitempty"`
ValueDatatype ColumnDataType `protobuf:"varint,3,opt,name=value_datatype,json=valueDatatype,proto3,enum=greptime.v1.ColumnDataType" json:"value_datatype,omitempty"`
ValueDatatypeExtension *ColumnDataTypeExtension `protobuf:"bytes,4,opt,name=value_datatype_extension,json=valueDatatypeExtension,proto3" json:"value_datatype_extension,omitempty"`
}
func (x *DictionaryTypeExtension) Reset() {
*x = DictionaryTypeExtension{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_common_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DictionaryTypeExtension) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DictionaryTypeExtension) ProtoMessage() {}
func (x *DictionaryTypeExtension) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_common_proto_msgTypes[26]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use DictionaryTypeExtension.ProtoReflect.Descriptor instead.
func (*DictionaryTypeExtension) Descriptor() ([]byte, []int) {
return file_greptime_v1_common_proto_rawDescGZIP(), []int{26}
}
func (x *DictionaryTypeExtension) GetKeyDatatype() ColumnDataType {
if x != nil {
return x.KeyDatatype
}
return ColumnDataType_BOOLEAN
}
func (x *DictionaryTypeExtension) GetKeyDatatypeExtension() *ColumnDataTypeExtension {
if x != nil {
return x.KeyDatatypeExtension
}
return nil
}
func (x *DictionaryTypeExtension) GetValueDatatype() ColumnDataType {
if x != nil {
return x.ValueDatatype
}
return ColumnDataType_BOOLEAN
}
func (x *DictionaryTypeExtension) GetValueDatatypeExtension() *ColumnDataTypeExtension {
if x != nil {
return x.ValueDatatypeExtension
}
return nil
}
// Additional options for the column.
type ColumnOptions struct {
state protoimpl.MessageState
@@ -1929,7 +2017,7 @@ type ColumnOptions struct {
func (x *ColumnOptions) Reset() {
*x = ColumnOptions{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_common_proto_msgTypes[26]
mi := &file_greptime_v1_common_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1942,7 +2030,7 @@ func (x *ColumnOptions) String() string {
func (*ColumnOptions) ProtoMessage() {}
func (x *ColumnOptions) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_common_proto_msgTypes[26]
mi := &file_greptime_v1_common_proto_msgTypes[27]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1955,7 +2043,7 @@ func (x *ColumnOptions) ProtoReflect() protoreflect.Message {
// Deprecated: Use ColumnOptions.ProtoReflect.Descriptor instead.
func (*ColumnOptions) Descriptor() ([]byte, []int) {
return file_greptime_v1_common_proto_rawDescGZIP(), []int{26}
return file_greptime_v1_common_proto_rawDescGZIP(), []int{27}
}
func (x *ColumnOptions) GetOptions() map[string]string {
@@ -1978,7 +2066,7 @@ type ArrowIpc struct {
func (x *ArrowIpc) Reset() {
*x = ArrowIpc{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_common_proto_msgTypes[27]
mi := &file_greptime_v1_common_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1991,7 +2079,7 @@ func (x *ArrowIpc) String() string {
func (*ArrowIpc) ProtoMessage() {}
func (x *ArrowIpc) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_common_proto_msgTypes[27]
mi := &file_greptime_v1_common_proto_msgTypes[28]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -2004,7 +2092,7 @@ func (x *ArrowIpc) ProtoReflect() protoreflect.Message {
// Deprecated: Use ArrowIpc.ProtoReflect.Descriptor instead.
func (*ArrowIpc) Descriptor() ([]byte, []int) {
return file_greptime_v1_common_proto_rawDescGZIP(), []int{27}
return file_greptime_v1_common_proto_rawDescGZIP(), []int{28}
}
func (x *ArrowIpc) GetSchema() []byte {
@@ -2182,7 +2270,7 @@ var file_greptime_v1_common_proto_rawDesc = []byte{
0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74,
0x61, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x11,
0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
0x6e, 0x22, 0xc7, 0x03, 0x0a, 0x17, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61,
0x6e, 0x22, 0x98, 0x04, 0x0a, 0x17, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61,
0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a,
0x0c, 0x64, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76,
@@ -2209,104 +2297,132 @@ var file_greptime_v1_common_proto_rawDesc = []byte{
0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69,
0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4a, 0x73, 0x6f, 0x6e, 0x4e, 0x61, 0x74, 0x69, 0x76, 0x65,
0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52,
0x0e, 0x6a, 0x73, 0x6f, 0x6e, 0x4e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42,
0x0a, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x22, 0x4a, 0x0a, 0x14, 0x44,
0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73,
0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e,
0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x22, 0x27, 0x0a, 0x13, 0x56, 0x65, 0x63, 0x74, 0x6f,
0x72, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x10,
0x0a, 0x03, 0x64, 0x69, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x64, 0x69, 0x6d,
0x22, 0xa1, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74,
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79,
0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74,
0x0e, 0x6a, 0x73, 0x6f, 0x6e, 0x4e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12,
0x4f, 0x0a, 0x0f, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x74, 0x79,
0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74,
0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72,
0x79, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x00,
0x52, 0x0e, 0x64, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65,
0x42, 0x0a, 0x0a, 0x08, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x22, 0x4a, 0x0a, 0x14,
0x44, 0x65, 0x63, 0x69, 0x6d, 0x61, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e,
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f,
0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69,
0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x05, 0x52, 0x05, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x22, 0x27, 0x0a, 0x13, 0x56, 0x65, 0x63, 0x74,
0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12,
0x10, 0x0a, 0x03, 0x64, 0x69, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x64, 0x69,
0x6d, 0x22, 0xa1, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78,
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x74,
0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x65, 0x70,
0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61,
0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65,
0x12, 0x53, 0x0a, 0x12, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x65, 0x78, 0x74,
0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67,
0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d,
0x6e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69,
0x6f, 0x6e, 0x52, 0x11, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65,
0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x47, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54,
0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x06,
0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67,
0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63,
0x74, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x22, 0xa7,
0x01, 0x0a, 0x17, 0x4a, 0x73, 0x6f, 0x6e, 0x4e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x79, 0x70,
0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x08, 0x64, 0x61,
0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x67,
0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d,
0x6e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x74,
0x79, 0x70, 0x65, 0x12, 0x53, 0x0a, 0x12, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x5f,
0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x24, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f,
0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65,
0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x45,
0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xd9, 0x02, 0x0a, 0x17, 0x44, 0x69, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x61, 0x72, 0x79, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e,
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3e, 0x0a, 0x0c, 0x6b, 0x65, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61,
0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x65,
0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44,
0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6b, 0x65, 0x79, 0x44, 0x61, 0x74, 0x61,
0x74, 0x79, 0x70, 0x65, 0x12, 0x5a, 0x0a, 0x16, 0x6b, 0x65, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61,
0x74, 0x79, 0x70, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e,
0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70,
0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x6b, 0x65, 0x79, 0x44,
0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
0x12, 0x42, 0x0a, 0x0e, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79,
0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74,
0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74,
0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x12,
0x53, 0x0a, 0x12, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x65,
0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x72,
0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e,
0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f,
0x6e, 0x52, 0x11, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e,
0x73, 0x69, 0x6f, 0x6e, 0x22, 0x47, 0x0a, 0x13, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x54, 0x79,
0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x06, 0x66,
0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x72,
0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74,
0x46, 0x69, 0x65, 0x6c, 0x64, 0x52, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x22, 0xa7, 0x01,
0x0a, 0x17, 0x4a, 0x73, 0x6f, 0x6e, 0x4e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x54, 0x79, 0x70, 0x65,
0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x08, 0x64, 0x61, 0x74,
0x61, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x67, 0x72,
0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e,
0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79,
0x70, 0x65, 0x12, 0x53, 0x0a, 0x12, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x65,
0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24,
0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c,
0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e,
0x73, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x45, 0x78,
0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x8e, 0x01, 0x0a, 0x0d, 0x43, 0x6f, 0x6c, 0x75,
0x6d, 0x6e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x41, 0x0a, 0x07, 0x6f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x72, 0x65,
0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x4f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e,
0x74, 0x72, 0x79, 0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x3a, 0x0a, 0x0c,
0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14,
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x5d, 0x0a, 0x08, 0x41, 0x72, 0x72, 0x6f,
0x77, 0x49, 0x70, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1f, 0x0a, 0x0b,
0x64, 0x61, 0x74, 0x61, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
0x0c, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x18, 0x0a,
0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07,
0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x2a, 0x31, 0x0a, 0x0c, 0x53, 0x65, 0x6d, 0x61, 0x6e,
0x74, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x41, 0x47, 0x10, 0x00,
0x12, 0x09, 0x0a, 0x05, 0x46, 0x49, 0x45, 0x4c, 0x44, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x54,
0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x02, 0x2a, 0x82, 0x04, 0x0a, 0x0e, 0x43,
0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a,
0x07, 0x42, 0x4f, 0x4f, 0x4c, 0x45, 0x41, 0x4e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e,
0x54, 0x38, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x31, 0x36, 0x10, 0x02, 0x12,
0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e,
0x54, 0x36, 0x34, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x55, 0x49, 0x4e, 0x54, 0x38, 0x10, 0x05,
0x12, 0x0a, 0x0a, 0x06, 0x55, 0x49, 0x4e, 0x54, 0x31, 0x36, 0x10, 0x06, 0x12, 0x0a, 0x0a, 0x06,
0x55, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x07, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x49, 0x4e, 0x54,
0x36, 0x34, 0x10, 0x08, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x33, 0x32, 0x10,
0x09, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x36, 0x34, 0x10, 0x0a, 0x12, 0x0a,
0x0a, 0x06, 0x42, 0x49, 0x4e, 0x41, 0x52, 0x59, 0x10, 0x0b, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54,
0x52, 0x49, 0x4e, 0x47, 0x10, 0x0c, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x41, 0x54, 0x45, 0x10, 0x0d,
0x12, 0x0c, 0x0a, 0x08, 0x44, 0x41, 0x54, 0x45, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x0e, 0x12, 0x14,
0x0a, 0x10, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x5f, 0x53, 0x45, 0x43, 0x4f,
0x4e, 0x44, 0x10, 0x0f, 0x12, 0x19, 0x0a, 0x15, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d,
0x50, 0x5f, 0x4d, 0x49, 0x4c, 0x4c, 0x49, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x10, 0x12,
0x19, 0x0a, 0x15, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x5f, 0x4d, 0x49, 0x43,
0x52, 0x4f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x11, 0x12, 0x18, 0x0a, 0x14, 0x54, 0x49,
0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x5f, 0x4e, 0x41, 0x4e, 0x4f, 0x53, 0x45, 0x43, 0x4f,
0x4e, 0x44, 0x10, 0x12, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x53, 0x45, 0x43,
0x4f, 0x4e, 0x44, 0x10, 0x13, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x4d, 0x49,
0x4c, 0x4c, 0x49, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x14, 0x12, 0x14, 0x0a, 0x10, 0x54,
0x49, 0x4d, 0x45, 0x5f, 0x4d, 0x49, 0x43, 0x52, 0x4f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10,
0x15, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x4e, 0x41, 0x4e, 0x4f, 0x53, 0x45,
0x43, 0x4f, 0x4e, 0x44, 0x10, 0x16, 0x12, 0x17, 0x0a, 0x13, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x56,
0x41, 0x4c, 0x5f, 0x59, 0x45, 0x41, 0x52, 0x5f, 0x4d, 0x4f, 0x4e, 0x54, 0x48, 0x10, 0x17, 0x12,
0x15, 0x0a, 0x11, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x56, 0x41, 0x4c, 0x5f, 0x44, 0x41, 0x59, 0x5f,
0x54, 0x49, 0x4d, 0x45, 0x10, 0x18, 0x12, 0x1b, 0x0a, 0x17, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x56,
0x41, 0x4c, 0x5f, 0x4d, 0x4f, 0x4e, 0x54, 0x48, 0x5f, 0x44, 0x41, 0x59, 0x5f, 0x4e, 0x41, 0x4e,
0x4f, 0x10, 0x19, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x43, 0x49, 0x4d, 0x41, 0x4c, 0x31, 0x32,
0x38, 0x10, 0x1e, 0x12, 0x08, 0x0a, 0x04, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0x1f, 0x12, 0x0a, 0x0a,
0x06, 0x56, 0x45, 0x43, 0x54, 0x4f, 0x52, 0x10, 0x20, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x49, 0x53,
0x54, 0x10, 0x28, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x55, 0x43, 0x54, 0x10, 0x29, 0x2a,
0x48, 0x0a, 0x08, 0x54, 0x69, 0x6d, 0x65, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x0f, 0x0a, 0x0b, 0x4d,
0x49, 0x4c, 0x4c, 0x49, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06,
0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x49, 0x43, 0x52,
0x4f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x41, 0x4e,
0x4f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x03, 0x2a, 0x24, 0x0a, 0x11, 0x4a, 0x73, 0x6f,
0x6e, 0x54, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0f,
0x0a, 0x0b, 0x4a, 0x53, 0x4f, 0x4e, 0x5f, 0x42, 0x49, 0x4e, 0x41, 0x52, 0x59, 0x10, 0x00, 0x42,
0x4f, 0x0a, 0x0e, 0x69, 0x6f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76,
0x31, 0x42, 0x06, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x68, 0x75,
0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x65,
0x61, 0x6d, 0x2f, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2d, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x61, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0d, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x44, 0x61, 0x74, 0x61,
0x74, 0x79, 0x70, 0x65, 0x12, 0x5e, 0x0a, 0x18, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x64, 0x61,
0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e,
0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d,
0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x54,
0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x16, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x44, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e,
0x73, 0x69, 0x6f, 0x6e, 0x22, 0x8e, 0x01, 0x0a, 0x0d, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x4f,
0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x41, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69,
0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x4f, 0x70, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
0x52, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x3a, 0x0a, 0x0c, 0x4f, 0x70, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x5d, 0x0a, 0x08, 0x41, 0x72, 0x72, 0x6f, 0x77, 0x49, 0x70,
0x63, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0c, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x61, 0x74,
0x61, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a,
0x64, 0x61, 0x74, 0x61, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61,
0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x70, 0x61, 0x79,
0x6c, 0x6f, 0x61, 0x64, 0x2a, 0x31, 0x0a, 0x0c, 0x53, 0x65, 0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63,
0x54, 0x79, 0x70, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x41, 0x47, 0x10, 0x00, 0x12, 0x09, 0x0a,
0x05, 0x46, 0x49, 0x45, 0x4c, 0x44, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x49, 0x4d, 0x45,
0x53, 0x54, 0x41, 0x4d, 0x50, 0x10, 0x02, 0x2a, 0x92, 0x04, 0x0a, 0x0e, 0x43, 0x6f, 0x6c, 0x75,
0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x42, 0x4f,
0x4f, 0x4c, 0x45, 0x41, 0x4e, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x54, 0x38, 0x10,
0x01, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x31, 0x36, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05,
0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x36, 0x34,
0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x55, 0x49, 0x4e, 0x54, 0x38, 0x10, 0x05, 0x12, 0x0a, 0x0a,
0x06, 0x55, 0x49, 0x4e, 0x54, 0x31, 0x36, 0x10, 0x06, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x49, 0x4e,
0x54, 0x33, 0x32, 0x10, 0x07, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10,
0x08, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x33, 0x32, 0x10, 0x09, 0x12, 0x0b,
0x0a, 0x07, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x36, 0x34, 0x10, 0x0a, 0x12, 0x0a, 0x0a, 0x06, 0x42,
0x49, 0x4e, 0x41, 0x52, 0x59, 0x10, 0x0b, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x49, 0x4e,
0x47, 0x10, 0x0c, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x41, 0x54, 0x45, 0x10, 0x0d, 0x12, 0x0c, 0x0a,
0x08, 0x44, 0x41, 0x54, 0x45, 0x54, 0x49, 0x4d, 0x45, 0x10, 0x0e, 0x12, 0x14, 0x0a, 0x10, 0x54,
0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x5f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10,
0x0f, 0x12, 0x19, 0x0a, 0x15, 0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x5f, 0x4d,
0x49, 0x4c, 0x4c, 0x49, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x10, 0x12, 0x19, 0x0a, 0x15,
0x54, 0x49, 0x4d, 0x45, 0x53, 0x54, 0x41, 0x4d, 0x50, 0x5f, 0x4d, 0x49, 0x43, 0x52, 0x4f, 0x53,
0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x11, 0x12, 0x18, 0x0a, 0x14, 0x54, 0x49, 0x4d, 0x45, 0x53,
0x54, 0x41, 0x4d, 0x50, 0x5f, 0x4e, 0x41, 0x4e, 0x4f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10,
0x12, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44,
0x10, 0x13, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x4d, 0x49, 0x4c, 0x4c, 0x49,
0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x14, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x49, 0x4d, 0x45,
0x5f, 0x4d, 0x49, 0x43, 0x52, 0x4f, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x15, 0x12, 0x13,
0x0a, 0x0f, 0x54, 0x49, 0x4d, 0x45, 0x5f, 0x4e, 0x41, 0x4e, 0x4f, 0x53, 0x45, 0x43, 0x4f, 0x4e,
0x44, 0x10, 0x16, 0x12, 0x17, 0x0a, 0x13, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x56, 0x41, 0x4c, 0x5f,
0x59, 0x45, 0x41, 0x52, 0x5f, 0x4d, 0x4f, 0x4e, 0x54, 0x48, 0x10, 0x17, 0x12, 0x15, 0x0a, 0x11,
0x49, 0x4e, 0x54, 0x45, 0x52, 0x56, 0x41, 0x4c, 0x5f, 0x44, 0x41, 0x59, 0x5f, 0x54, 0x49, 0x4d,
0x45, 0x10, 0x18, 0x12, 0x1b, 0x0a, 0x17, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x56, 0x41, 0x4c, 0x5f,
0x4d, 0x4f, 0x4e, 0x54, 0x48, 0x5f, 0x44, 0x41, 0x59, 0x5f, 0x4e, 0x41, 0x4e, 0x4f, 0x10, 0x19,
0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45, 0x43, 0x49, 0x4d, 0x41, 0x4c, 0x31, 0x32, 0x38, 0x10, 0x1e,
0x12, 0x08, 0x0a, 0x04, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 0x1f, 0x12, 0x0a, 0x0a, 0x06, 0x56, 0x45,
0x43, 0x54, 0x4f, 0x52, 0x10, 0x20, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x49, 0x53, 0x54, 0x10, 0x28,
0x12, 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x52, 0x55, 0x43, 0x54, 0x10, 0x29, 0x12, 0x0e, 0x0a, 0x0a,
0x44, 0x49, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x52, 0x59, 0x10, 0x2a, 0x2a, 0x48, 0x0a, 0x08,
0x54, 0x69, 0x6d, 0x65, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x49, 0x4c, 0x4c,
0x49, 0x53, 0x45, 0x43, 0x4f, 0x4e, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x45, 0x43,
0x4f, 0x4e, 0x44, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x49, 0x43, 0x52, 0x4f, 0x53, 0x45,
0x43, 0x4f, 0x4e, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x41, 0x4e, 0x4f, 0x53, 0x45,
0x43, 0x4f, 0x4e, 0x44, 0x10, 0x03, 0x2a, 0x24, 0x0a, 0x11, 0x4a, 0x73, 0x6f, 0x6e, 0x54, 0x79,
0x70, 0x65, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x0f, 0x0a, 0x0b, 0x4a,
0x53, 0x4f, 0x4e, 0x5f, 0x42, 0x49, 0x4e, 0x41, 0x52, 0x59, 0x10, 0x00, 0x42, 0x4f, 0x0a, 0x0e,
0x69, 0x6f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x06,
0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5a, 0x35, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
0x6f, 0x6d, 0x2f, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x2f,
0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67,
0x6f, 0x2f, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x06, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -2322,7 +2438,7 @@ func file_greptime_v1_common_proto_rawDescGZIP() []byte {
}
var file_greptime_v1_common_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
var file_greptime_v1_common_proto_msgTypes = make([]protoimpl.MessageInfo, 33)
var file_greptime_v1_common_proto_msgTypes = make([]protoimpl.MessageInfo, 34)
var file_greptime_v1_common_proto_goTypes = []interface{}{
(SemanticType)(0), // 0: greptime.v1.SemanticType
(ColumnDataType)(0), // 1: greptime.v1.ColumnDataType
@@ -2354,22 +2470,23 @@ var file_greptime_v1_common_proto_goTypes = []interface{}{
(*ListTypeExtension)(nil), // 27: greptime.v1.ListTypeExtension
(*StructTypeExtension)(nil), // 28: greptime.v1.StructTypeExtension
(*JsonNativeTypeExtension)(nil), // 29: greptime.v1.JsonNativeTypeExtension
(*ColumnOptions)(nil), // 30: greptime.v1.ColumnOptions
(*ArrowIpc)(nil), // 31: greptime.v1.ArrowIpc
nil, // 32: greptime.v1.QueryContext.ExtensionsEntry
nil, // 33: greptime.v1.SnapshotSequences.SstMinSequencesEntry
nil, // 34: greptime.v1.SnapshotSequences.SnapshotSeqsEntry
nil, // 35: greptime.v1.RequestHeader.TracingContextEntry
nil, // 36: greptime.v1.ColumnOptions.OptionsEntry
(*DictionaryTypeExtension)(nil), // 30: greptime.v1.DictionaryTypeExtension
(*ColumnOptions)(nil), // 31: greptime.v1.ColumnOptions
(*ArrowIpc)(nil), // 32: greptime.v1.ArrowIpc
nil, // 33: greptime.v1.QueryContext.ExtensionsEntry
nil, // 34: greptime.v1.SnapshotSequences.SstMinSequencesEntry
nil, // 35: greptime.v1.SnapshotSequences.SnapshotSeqsEntry
nil, // 36: greptime.v1.RequestHeader.TracingContextEntry
nil, // 37: greptime.v1.ColumnOptions.OptionsEntry
}
var file_greptime_v1_common_proto_depIdxs = []int32{
32, // 0: greptime.v1.QueryContext.extensions:type_name -> greptime.v1.QueryContext.ExtensionsEntry
33, // 0: greptime.v1.QueryContext.extensions:type_name -> greptime.v1.QueryContext.ExtensionsEntry
5, // 1: greptime.v1.QueryContext.snapshot_seqs:type_name -> greptime.v1.SnapshotSequences
6, // 2: greptime.v1.QueryContext.explain:type_name -> greptime.v1.ExplainOptions
33, // 3: greptime.v1.SnapshotSequences.sst_min_sequences:type_name -> greptime.v1.SnapshotSequences.SstMinSequencesEntry
34, // 4: greptime.v1.SnapshotSequences.snapshot_seqs:type_name -> greptime.v1.SnapshotSequences.SnapshotSeqsEntry
34, // 3: greptime.v1.SnapshotSequences.sst_min_sequences:type_name -> greptime.v1.SnapshotSequences.SstMinSequencesEntry
35, // 4: greptime.v1.SnapshotSequences.snapshot_seqs:type_name -> greptime.v1.SnapshotSequences.SnapshotSeqsEntry
10, // 5: greptime.v1.RequestHeader.authorization:type_name -> greptime.v1.AuthHeader
35, // 6: greptime.v1.RequestHeader.tracing_context:type_name -> greptime.v1.RequestHeader.TracingContextEntry
36, // 6: greptime.v1.RequestHeader.tracing_context:type_name -> greptime.v1.RequestHeader.TracingContextEntry
9, // 7: greptime.v1.ResponseHeader.status:type_name -> greptime.v1.Status
11, // 8: greptime.v1.AuthHeader.basic:type_name -> greptime.v1.Basic
12, // 9: greptime.v1.AuthHeader.token:type_name -> greptime.v1.Token
@@ -2385,17 +2502,22 @@ var file_greptime_v1_common_proto_depIdxs = []int32{
27, // 19: greptime.v1.ColumnDataTypeExtension.list_type:type_name -> greptime.v1.ListTypeExtension
28, // 20: greptime.v1.ColumnDataTypeExtension.struct_type:type_name -> greptime.v1.StructTypeExtension
29, // 21: greptime.v1.ColumnDataTypeExtension.json_native_type:type_name -> greptime.v1.JsonNativeTypeExtension
1, // 22: greptime.v1.ListTypeExtension.datatype:type_name -> greptime.v1.ColumnDataType
24, // 23: greptime.v1.ListTypeExtension.datatype_extension:type_name -> greptime.v1.ColumnDataTypeExtension
23, // 24: greptime.v1.StructTypeExtension.fields:type_name -> greptime.v1.StructField
1, // 25: greptime.v1.JsonNativeTypeExtension.datatype:type_name -> greptime.v1.ColumnDataType
24, // 26: greptime.v1.JsonNativeTypeExtension.datatype_extension:type_name -> greptime.v1.ColumnDataTypeExtension
36, // 27: greptime.v1.ColumnOptions.options:type_name -> greptime.v1.ColumnOptions.OptionsEntry
28, // [28:28] is the sub-list for method output_type
28, // [28:28] is the sub-list for method input_type
28, // [28:28] is the sub-list for extension type_name
28, // [28:28] is the sub-list for extension extendee
0, // [0:28] is the sub-list for field type_name
30, // 22: greptime.v1.ColumnDataTypeExtension.dictionary_type:type_name -> greptime.v1.DictionaryTypeExtension
1, // 23: greptime.v1.ListTypeExtension.datatype:type_name -> greptime.v1.ColumnDataType
24, // 24: greptime.v1.ListTypeExtension.datatype_extension:type_name -> greptime.v1.ColumnDataTypeExtension
23, // 25: greptime.v1.StructTypeExtension.fields:type_name -> greptime.v1.StructField
1, // 26: greptime.v1.JsonNativeTypeExtension.datatype:type_name -> greptime.v1.ColumnDataType
24, // 27: greptime.v1.JsonNativeTypeExtension.datatype_extension:type_name -> greptime.v1.ColumnDataTypeExtension
1, // 28: greptime.v1.DictionaryTypeExtension.key_datatype:type_name -> greptime.v1.ColumnDataType
24, // 29: greptime.v1.DictionaryTypeExtension.key_datatype_extension:type_name -> greptime.v1.ColumnDataTypeExtension
1, // 30: greptime.v1.DictionaryTypeExtension.value_datatype:type_name -> greptime.v1.ColumnDataType
24, // 31: greptime.v1.DictionaryTypeExtension.value_datatype_extension:type_name -> greptime.v1.ColumnDataTypeExtension
37, // 32: greptime.v1.ColumnOptions.options:type_name -> greptime.v1.ColumnOptions.OptionsEntry
33, // [33:33] is the sub-list for method output_type
33, // [33:33] is the sub-list for method input_type
33, // [33:33] is the sub-list for extension type_name
33, // [33:33] is the sub-list for extension extendee
0, // [0:33] is the sub-list for field type_name
}
func init() { file_greptime_v1_common_proto_init() }
@@ -2717,7 +2839,7 @@ func file_greptime_v1_common_proto_init() {
}
}
file_greptime_v1_common_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ColumnOptions); i {
switch v := v.(*DictionaryTypeExtension); i {
case 0:
return &v.state
case 1:
@@ -2729,6 +2851,18 @@ func file_greptime_v1_common_proto_init() {
}
}
file_greptime_v1_common_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ColumnOptions); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_greptime_v1_common_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ArrowIpc); i {
case 0:
return &v.state
@@ -2752,6 +2886,7 @@ func file_greptime_v1_common_proto_init() {
(*ColumnDataTypeExtension_ListType)(nil),
(*ColumnDataTypeExtension_StructType)(nil),
(*ColumnDataTypeExtension_JsonNativeType)(nil),
(*ColumnDataTypeExtension_DictionaryType)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
@@ -2759,7 +2894,7 @@ func file_greptime_v1_common_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_greptime_v1_common_proto_rawDesc,
NumEnums: 4,
NumMessages: 33,
NumMessages: 34,
NumExtensions: 0,
NumServices: 0,
},
File diff suppressed because it is too large Load Diff
+9
View File
@@ -153,6 +153,7 @@ enum ColumnDataType {
VECTOR = 32;
LIST = 40;
STRUCT = 41;
DICTIONARY = 42;
}
message IntervalMonthDayNano {
@@ -205,6 +206,7 @@ message ColumnDataTypeExtension {
StructTypeExtension struct_type = 5;
// Marks the data type is a logical json data
JsonNativeTypeExtension json_native_type = 6;
DictionaryTypeExtension dictionary_type = 7;
}
}
@@ -236,6 +238,13 @@ message JsonNativeTypeExtension {
ColumnDataTypeExtension datatype_extension = 2;
}
message DictionaryTypeExtension {
ColumnDataType key_datatype = 1;
ColumnDataTypeExtension key_datatype_extension = 2;
ColumnDataType value_datatype = 3;
ColumnDataTypeExtension value_datatype_extension = 4;
}
// Additional options for the column.
message ColumnOptions {
// Supported keys: