Add ShardsNum when create collection (#5245)

Updata PhysicalChannelNames and VirtualChannelNames based
on ShardsNum when create collection, and update collVChan2Chan
map.

Resolves: #5240 

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
This commit is contained in:
Cai Yudong 2021-05-17 19:15:01 +08:00 committed by GitHub
parent 5d0aab05b9
commit e8ceb37f81
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 1648 additions and 856 deletions

View File

@ -286,6 +286,8 @@ const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_etcd_5fmeta_2eproto::offsets[]
PROTOBUF_FIELD_OFFSET(::milvus::proto::etcd::CollectionInfo, create_time_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::etcd::CollectionInfo, partitionids_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::etcd::CollectionInfo, field_indexes_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::etcd::CollectionInfo, virtual_channel_names_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::etcd::CollectionInfo, physical_channel_names_),
~0u, // no _has_bits_
PROTOBUF_FIELD_OFFSET(::milvus::proto::etcd::SegmentIndexInfo, _internal_metadata_),
~0u, // no _extensions_
@ -348,11 +350,11 @@ static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOB
{ 25, -1, sizeof(::milvus::proto::etcd::IndexInfo)},
{ 33, -1, sizeof(::milvus::proto::etcd::FieldIndexInfo)},
{ 40, -1, sizeof(::milvus::proto::etcd::CollectionInfo)},
{ 50, -1, sizeof(::milvus::proto::etcd::SegmentIndexInfo)},
{ 60, -1, sizeof(::milvus::proto::etcd::CollectionMeta)},
{ 71, -1, sizeof(::milvus::proto::etcd::FieldBinlogFiles)},
{ 78, -1, sizeof(::milvus::proto::etcd::SegmentMeta)},
{ 93, -1, sizeof(::milvus::proto::etcd::FieldIndexMeta)},
{ 52, -1, sizeof(::milvus::proto::etcd::SegmentIndexInfo)},
{ 62, -1, sizeof(::milvus::proto::etcd::CollectionMeta)},
{ 73, -1, sizeof(::milvus::proto::etcd::FieldBinlogFiles)},
{ 80, -1, sizeof(::milvus::proto::etcd::SegmentMeta)},
{ 95, -1, sizeof(::milvus::proto::etcd::FieldIndexMeta)},
};
static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = {
@ -382,34 +384,35 @@ const char descriptor_table_protodef_etcd_5fmeta_2eproto[] PROTOBUF_SECTION_VARI
"o\022\022\n\nindex_name\030\001 \001(\t\022\017\n\007indexID\030\002 \001(\003\0227"
"\n\014index_params\030\003 \003(\0132!.milvus.proto.comm"
"on.KeyValuePair\"2\n\016FieldIndexInfo\022\017\n\007fil"
"edID\030\001 \001(\003\022\017\n\007indexID\030\002 \001(\003\"\270\001\n\016Collecti"
"edID\030\001 \001(\003\022\017\n\007indexID\030\002 \001(\003\"\367\001\n\016Collecti"
"onInfo\022\n\n\002ID\030\001 \001(\003\0225\n\006schema\030\002 \001(\0132%.mil"
"vus.proto.schema.CollectionSchema\022\023\n\013cre"
"ate_time\030\003 \001(\004\022\024\n\014partitionIDs\030\004 \003(\003\0228\n\r"
"field_indexes\030\005 \003(\0132!.milvus.proto.etcd."
"FieldIndexInfo\"n\n\020SegmentIndexInfo\022\021\n\tse"
"gmentID\030\001 \001(\003\022\017\n\007fieldID\030\002 \001(\003\022\017\n\007indexI"
"D\030\003 \001(\003\022\017\n\007buildID\030\004 \001(\003\022\024\n\014enable_index"
"\030\005 \001(\010\"\252\001\n\016CollectionMeta\022\n\n\002ID\030\001 \001(\003\0225\n"
"\006schema\030\002 \001(\0132%.milvus.proto.schema.Coll"
"ectionSchema\022\023\n\013create_time\030\003 \001(\004\022\022\n\nseg"
"mentIDs\030\004 \003(\003\022\026\n\016partition_tags\030\005 \003(\t\022\024\n"
"\014partitionIDs\030\006 \003(\003\"9\n\020FieldBinlogFiles\022"
"\017\n\007fieldID\030\001 \001(\003\022\024\n\014binlog_files\030\002 \003(\t\"\204"
"\002\n\013SegmentMeta\022\021\n\tsegmentID\030\001 \001(\003\022\024\n\014col"
"lectionID\030\002 \001(\003\022\025\n\rpartition_tag\030\003 \001(\t\022\025"
"\n\rchannel_start\030\004 \001(\005\022\023\n\013channel_end\030\005 \001"
"(\005\022\021\n\topen_time\030\006 \001(\004\022\022\n\nclose_time\030\007 \001("
"\004\022\020\n\010num_rows\030\010 \001(\003\022\020\n\010mem_size\030\t \001(\003\022>\n"
"\021binlog_file_paths\030\n \003(\0132#.milvus.proto."
"etcd.FieldBinlogFiles\"\310\001\n\016FieldIndexMeta"
"\022\021\n\tsegmentID\030\001 \001(\003\022\017\n\007fieldID\030\002 \001(\003\022\017\n\007"
"indexID\030\003 \001(\003\0227\n\014index_params\030\004 \003(\0132!.mi"
"lvus.proto.common.KeyValuePair\022.\n\005state\030"
"\005 \001(\0162\037.milvus.proto.common.IndexState\022\030"
"\n\020index_file_paths\030\006 \003(\tB3Z1github.com/m"
"ilvus-io/milvus/internal/proto/etcdpbb\006p"
"roto3"
"FieldIndexInfo\022\035\n\025virtual_channel_names\030"
"\006 \003(\t\022\036\n\026physical_channel_names\030\007 \003(\t\"n\n"
"\020SegmentIndexInfo\022\021\n\tsegmentID\030\001 \001(\003\022\017\n\007"
"fieldID\030\002 \001(\003\022\017\n\007indexID\030\003 \001(\003\022\017\n\007buildI"
"D\030\004 \001(\003\022\024\n\014enable_index\030\005 \001(\010\"\252\001\n\016Collec"
"tionMeta\022\n\n\002ID\030\001 \001(\003\0225\n\006schema\030\002 \001(\0132%.m"
"ilvus.proto.schema.CollectionSchema\022\023\n\013c"
"reate_time\030\003 \001(\004\022\022\n\nsegmentIDs\030\004 \003(\003\022\026\n\016"
"partition_tags\030\005 \003(\t\022\024\n\014partitionIDs\030\006 \003"
"(\003\"9\n\020FieldBinlogFiles\022\017\n\007fieldID\030\001 \001(\003\022"
"\024\n\014binlog_files\030\002 \003(\t\"\204\002\n\013SegmentMeta\022\021\n"
"\tsegmentID\030\001 \001(\003\022\024\n\014collectionID\030\002 \001(\003\022\025"
"\n\rpartition_tag\030\003 \001(\t\022\025\n\rchannel_start\030\004"
" \001(\005\022\023\n\013channel_end\030\005 \001(\005\022\021\n\topen_time\030\006"
" \001(\004\022\022\n\nclose_time\030\007 \001(\004\022\020\n\010num_rows\030\010 \001"
"(\003\022\020\n\010mem_size\030\t \001(\003\022>\n\021binlog_file_path"
"s\030\n \003(\0132#.milvus.proto.etcd.FieldBinlogF"
"iles\"\310\001\n\016FieldIndexMeta\022\021\n\tsegmentID\030\001 \001"
"(\003\022\017\n\007fieldID\030\002 \001(\003\022\017\n\007indexID\030\003 \001(\003\0227\n\014"
"index_params\030\004 \003(\0132!.milvus.proto.common"
".KeyValuePair\022.\n\005state\030\005 \001(\0162\037.milvus.pr"
"oto.common.IndexState\022\030\n\020index_file_path"
"s\030\006 \003(\tB3Z1github.com/milvus-io/milvus/i"
"nternal/proto/etcdpbb\006proto3"
;
static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_etcd_5fmeta_2eproto_deps[2] = {
&::descriptor_table_common_2eproto,
@ -431,7 +434,7 @@ static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_etc
static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_etcd_5fmeta_2eproto_once;
static bool descriptor_table_etcd_5fmeta_2eproto_initialized = false;
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_etcd_5fmeta_2eproto = {
&descriptor_table_etcd_5fmeta_2eproto_initialized, descriptor_table_protodef_etcd_5fmeta_2eproto, "etcd_meta.proto", 1565,
&descriptor_table_etcd_5fmeta_2eproto_initialized, descriptor_table_protodef_etcd_5fmeta_2eproto, "etcd_meta.proto", 1628,
&descriptor_table_etcd_5fmeta_2eproto_once, descriptor_table_etcd_5fmeta_2eproto_sccs, descriptor_table_etcd_5fmeta_2eproto_deps, 11, 2,
schemas, file_default_instances, TableStruct_etcd_5fmeta_2eproto::offsets,
file_level_metadata_etcd_5fmeta_2eproto, 11, file_level_enum_descriptors_etcd_5fmeta_2eproto, file_level_service_descriptors_etcd_5fmeta_2eproto,
@ -2319,7 +2322,9 @@ CollectionInfo::CollectionInfo(const CollectionInfo& from)
: ::PROTOBUF_NAMESPACE_ID::Message(),
_internal_metadata_(nullptr),
partitionids_(from.partitionids_),
field_indexes_(from.field_indexes_) {
field_indexes_(from.field_indexes_),
virtual_channel_names_(from.virtual_channel_names_),
physical_channel_names_(from.physical_channel_names_) {
_internal_metadata_.MergeFrom(from._internal_metadata_);
if (from.has_schema()) {
schema_ = new ::milvus::proto::schema::CollectionSchema(*from.schema_);
@ -2365,6 +2370,8 @@ void CollectionInfo::Clear() {
partitionids_.Clear();
field_indexes_.Clear();
virtual_channel_names_.Clear();
physical_channel_names_.Clear();
if (GetArenaNoVirtual() == nullptr && schema_ != nullptr) {
delete schema_;
}
@ -2426,6 +2433,30 @@ const char* CollectionInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE
} while (::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint8>(ptr) == 42);
} else goto handle_unusual;
continue;
// repeated string virtual_channel_names = 6;
case 6:
if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
ptr -= 1;
do {
ptr += 1;
ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(add_virtual_channel_names(), ptr, ctx, "milvus.proto.etcd.CollectionInfo.virtual_channel_names");
CHK_(ptr);
if (!ctx->DataAvailable(ptr)) break;
} while (::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint8>(ptr) == 50);
} else goto handle_unusual;
continue;
// repeated string physical_channel_names = 7;
case 7:
if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
ptr -= 1;
do {
ptr += 1;
ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(add_physical_channel_names(), ptr, ctx, "milvus.proto.etcd.CollectionInfo.physical_channel_names");
CHK_(ptr);
if (!ctx->DataAvailable(ptr)) break;
} while (::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint8>(ptr) == 58);
} else goto handle_unusual;
continue;
default: {
handle_unusual:
if ((tag & 7) == 4 || tag == 0) {
@ -2520,6 +2551,38 @@ bool CollectionInfo::MergePartialFromCodedStream(
break;
}
// repeated string virtual_channel_names = 6;
case 6: {
if (static_cast< ::PROTOBUF_NAMESPACE_ID::uint8>(tag) == (50 & 0xFF)) {
DO_(::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::ReadString(
input, this->add_virtual_channel_names()));
DO_(::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->virtual_channel_names(this->virtual_channel_names_size() - 1).data(),
static_cast<int>(this->virtual_channel_names(this->virtual_channel_names_size() - 1).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::PARSE,
"milvus.proto.etcd.CollectionInfo.virtual_channel_names"));
} else {
goto handle_unusual;
}
break;
}
// repeated string physical_channel_names = 7;
case 7: {
if (static_cast< ::PROTOBUF_NAMESPACE_ID::uint8>(tag) == (58 & 0xFF)) {
DO_(::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::ReadString(
input, this->add_physical_channel_names()));
DO_(::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->physical_channel_names(this->physical_channel_names_size() - 1).data(),
static_cast<int>(this->physical_channel_names(this->physical_channel_names_size() - 1).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::PARSE,
"milvus.proto.etcd.CollectionInfo.physical_channel_names"));
} else {
goto handle_unusual;
}
break;
}
default: {
handle_unusual:
if (tag == 0) {
@ -2583,6 +2646,26 @@ void CollectionInfo::SerializeWithCachedSizes(
output);
}
// repeated string virtual_channel_names = 6;
for (int i = 0, n = this->virtual_channel_names_size(); i < n; i++) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->virtual_channel_names(i).data(), static_cast<int>(this->virtual_channel_names(i).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
"milvus.proto.etcd.CollectionInfo.virtual_channel_names");
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteString(
6, this->virtual_channel_names(i), output);
}
// repeated string physical_channel_names = 7;
for (int i = 0, n = this->physical_channel_names_size(); i < n; i++) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->physical_channel_names(i).data(), static_cast<int>(this->physical_channel_names(i).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
"milvus.proto.etcd.CollectionInfo.physical_channel_names");
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteString(
7, this->physical_channel_names(i), output);
}
if (_internal_metadata_.have_unknown_fields()) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFields(
_internal_metadata_.unknown_fields(), output);
@ -2634,6 +2717,26 @@ void CollectionInfo::SerializeWithCachedSizes(
5, this->field_indexes(static_cast<int>(i)), target);
}
// repeated string virtual_channel_names = 6;
for (int i = 0, n = this->virtual_channel_names_size(); i < n; i++) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->virtual_channel_names(i).data(), static_cast<int>(this->virtual_channel_names(i).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
"milvus.proto.etcd.CollectionInfo.virtual_channel_names");
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
WriteStringToArray(6, this->virtual_channel_names(i), target);
}
// repeated string physical_channel_names = 7;
for (int i = 0, n = this->physical_channel_names_size(); i < n; i++) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->physical_channel_names(i).data(), static_cast<int>(this->physical_channel_names(i).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
"milvus.proto.etcd.CollectionInfo.physical_channel_names");
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
WriteStringToArray(7, this->physical_channel_names(i), target);
}
if (_internal_metadata_.have_unknown_fields()) {
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFieldsToArray(
_internal_metadata_.unknown_fields(), target);
@ -2681,6 +2784,22 @@ size_t CollectionInfo::ByteSizeLong() const {
}
}
// repeated string virtual_channel_names = 6;
total_size += 1 *
::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->virtual_channel_names_size());
for (int i = 0, n = this->virtual_channel_names_size(); i < n; i++) {
total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
this->virtual_channel_names(i));
}
// repeated string physical_channel_names = 7;
total_size += 1 *
::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->physical_channel_names_size());
for (int i = 0, n = this->physical_channel_names_size(); i < n; i++) {
total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
this->physical_channel_names(i));
}
// .milvus.proto.schema.CollectionSchema schema = 2;
if (this->has_schema()) {
total_size += 1 +
@ -2731,6 +2850,8 @@ void CollectionInfo::MergeFrom(const CollectionInfo& from) {
partitionids_.MergeFrom(from.partitionids_);
field_indexes_.MergeFrom(from.field_indexes_);
virtual_channel_names_.MergeFrom(from.virtual_channel_names_);
physical_channel_names_.MergeFrom(from.physical_channel_names_);
if (from.has_schema()) {
mutable_schema()->::milvus::proto::schema::CollectionSchema::MergeFrom(from.schema());
}
@ -2765,6 +2886,8 @@ void CollectionInfo::InternalSwap(CollectionInfo* other) {
_internal_metadata_.Swap(&other->_internal_metadata_);
partitionids_.InternalSwap(&other->partitionids_);
CastToBase(&field_indexes_)->InternalSwap(CastToBase(&other->field_indexes_));
virtual_channel_names_.InternalSwap(CastToBase(&other->virtual_channel_names_));
physical_channel_names_.InternalSwap(CastToBase(&other->physical_channel_names_));
swap(schema_, other->schema_);
swap(id_, other->id_);
swap(create_time_, other->create_time_);

View File

@ -1012,6 +1012,8 @@ class CollectionInfo :
enum : int {
kPartitionIDsFieldNumber = 4,
kFieldIndexesFieldNumber = 5,
kVirtualChannelNamesFieldNumber = 6,
kPhysicalChannelNamesFieldNumber = 7,
kSchemaFieldNumber = 2,
kIDFieldNumber = 1,
kCreateTimeFieldNumber = 3,
@ -1038,6 +1040,40 @@ class CollectionInfo :
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::etcd::FieldIndexInfo >&
field_indexes() const;
// repeated string virtual_channel_names = 6;
int virtual_channel_names_size() const;
void clear_virtual_channel_names();
const std::string& virtual_channel_names(int index) const;
std::string* mutable_virtual_channel_names(int index);
void set_virtual_channel_names(int index, const std::string& value);
void set_virtual_channel_names(int index, std::string&& value);
void set_virtual_channel_names(int index, const char* value);
void set_virtual_channel_names(int index, const char* value, size_t size);
std::string* add_virtual_channel_names();
void add_virtual_channel_names(const std::string& value);
void add_virtual_channel_names(std::string&& value);
void add_virtual_channel_names(const char* value);
void add_virtual_channel_names(const char* value, size_t size);
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& virtual_channel_names() const;
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_virtual_channel_names();
// repeated string physical_channel_names = 7;
int physical_channel_names_size() const;
void clear_physical_channel_names();
const std::string& physical_channel_names(int index) const;
std::string* mutable_physical_channel_names(int index);
void set_physical_channel_names(int index, const std::string& value);
void set_physical_channel_names(int index, std::string&& value);
void set_physical_channel_names(int index, const char* value);
void set_physical_channel_names(int index, const char* value, size_t size);
std::string* add_physical_channel_names();
void add_physical_channel_names(const std::string& value);
void add_physical_channel_names(std::string&& value);
void add_physical_channel_names(const char* value);
void add_physical_channel_names(const char* value, size_t size);
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& physical_channel_names() const;
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_physical_channel_names();
// .milvus.proto.schema.CollectionSchema schema = 2;
bool has_schema() const;
void clear_schema();
@ -1064,6 +1100,8 @@ class CollectionInfo :
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > partitionids_;
mutable std::atomic<int> _partitionids_cached_byte_size_;
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::etcd::FieldIndexInfo > field_indexes_;
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> virtual_channel_names_;
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> physical_channel_names_;
::milvus::proto::schema::CollectionSchema* schema_;
::PROTOBUF_NAMESPACE_ID::int64 id_;
::PROTOBUF_NAMESPACE_ID::uint64 create_time_;
@ -2611,6 +2649,136 @@ CollectionInfo::field_indexes() const {
return field_indexes_;
}
// repeated string virtual_channel_names = 6;
inline int CollectionInfo::virtual_channel_names_size() const {
return virtual_channel_names_.size();
}
inline void CollectionInfo::clear_virtual_channel_names() {
virtual_channel_names_.Clear();
}
inline const std::string& CollectionInfo::virtual_channel_names(int index) const {
// @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
return virtual_channel_names_.Get(index);
}
inline std::string* CollectionInfo::mutable_virtual_channel_names(int index) {
// @@protoc_insertion_point(field_mutable:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
return virtual_channel_names_.Mutable(index);
}
inline void CollectionInfo::set_virtual_channel_names(int index, const std::string& value) {
// @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
virtual_channel_names_.Mutable(index)->assign(value);
}
inline void CollectionInfo::set_virtual_channel_names(int index, std::string&& value) {
// @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
virtual_channel_names_.Mutable(index)->assign(std::move(value));
}
inline void CollectionInfo::set_virtual_channel_names(int index, const char* value) {
GOOGLE_DCHECK(value != nullptr);
virtual_channel_names_.Mutable(index)->assign(value);
// @@protoc_insertion_point(field_set_char:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline void CollectionInfo::set_virtual_channel_names(int index, const char* value, size_t size) {
virtual_channel_names_.Mutable(index)->assign(
reinterpret_cast<const char*>(value), size);
// @@protoc_insertion_point(field_set_pointer:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline std::string* CollectionInfo::add_virtual_channel_names() {
// @@protoc_insertion_point(field_add_mutable:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
return virtual_channel_names_.Add();
}
inline void CollectionInfo::add_virtual_channel_names(const std::string& value) {
virtual_channel_names_.Add()->assign(value);
// @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline void CollectionInfo::add_virtual_channel_names(std::string&& value) {
virtual_channel_names_.Add(std::move(value));
// @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline void CollectionInfo::add_virtual_channel_names(const char* value) {
GOOGLE_DCHECK(value != nullptr);
virtual_channel_names_.Add()->assign(value);
// @@protoc_insertion_point(field_add_char:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline void CollectionInfo::add_virtual_channel_names(const char* value, size_t size) {
virtual_channel_names_.Add()->assign(reinterpret_cast<const char*>(value), size);
// @@protoc_insertion_point(field_add_pointer:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
CollectionInfo::virtual_channel_names() const {
// @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
return virtual_channel_names_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
CollectionInfo::mutable_virtual_channel_names() {
// @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
return &virtual_channel_names_;
}
// repeated string physical_channel_names = 7;
inline int CollectionInfo::physical_channel_names_size() const {
return physical_channel_names_.size();
}
inline void CollectionInfo::clear_physical_channel_names() {
physical_channel_names_.Clear();
}
inline const std::string& CollectionInfo::physical_channel_names(int index) const {
// @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.physical_channel_names)
return physical_channel_names_.Get(index);
}
inline std::string* CollectionInfo::mutable_physical_channel_names(int index) {
// @@protoc_insertion_point(field_mutable:milvus.proto.etcd.CollectionInfo.physical_channel_names)
return physical_channel_names_.Mutable(index);
}
inline void CollectionInfo::set_physical_channel_names(int index, const std::string& value) {
// @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.physical_channel_names)
physical_channel_names_.Mutable(index)->assign(value);
}
inline void CollectionInfo::set_physical_channel_names(int index, std::string&& value) {
// @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.physical_channel_names)
physical_channel_names_.Mutable(index)->assign(std::move(value));
}
inline void CollectionInfo::set_physical_channel_names(int index, const char* value) {
GOOGLE_DCHECK(value != nullptr);
physical_channel_names_.Mutable(index)->assign(value);
// @@protoc_insertion_point(field_set_char:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline void CollectionInfo::set_physical_channel_names(int index, const char* value, size_t size) {
physical_channel_names_.Mutable(index)->assign(
reinterpret_cast<const char*>(value), size);
// @@protoc_insertion_point(field_set_pointer:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline std::string* CollectionInfo::add_physical_channel_names() {
// @@protoc_insertion_point(field_add_mutable:milvus.proto.etcd.CollectionInfo.physical_channel_names)
return physical_channel_names_.Add();
}
inline void CollectionInfo::add_physical_channel_names(const std::string& value) {
physical_channel_names_.Add()->assign(value);
// @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline void CollectionInfo::add_physical_channel_names(std::string&& value) {
physical_channel_names_.Add(std::move(value));
// @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline void CollectionInfo::add_physical_channel_names(const char* value) {
GOOGLE_DCHECK(value != nullptr);
physical_channel_names_.Add()->assign(value);
// @@protoc_insertion_point(field_add_char:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline void CollectionInfo::add_physical_channel_names(const char* value, size_t size) {
physical_channel_names_.Add()->assign(reinterpret_cast<const char*>(value), size);
// @@protoc_insertion_point(field_add_pointer:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
CollectionInfo::physical_channel_names() const {
// @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionInfo.physical_channel_names)
return physical_channel_names_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
CollectionInfo::mutable_physical_channel_names() {
// @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionInfo.physical_channel_names)
return &physical_channel_names_;
}
// -------------------------------------------------------------------
// SegmentIndexInfo

View File

@ -1019,6 +1019,7 @@ const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_milvus_2eproto::offsets[] PROT
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::CreateCollectionRequest, db_name_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::CreateCollectionRequest, collection_name_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::CreateCollectionRequest, schema_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::CreateCollectionRequest, shards_num_),
~0u, // no _has_bits_
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DropCollectionRequest, _internal_metadata_),
~0u, // no _extensions_
@ -1066,6 +1067,8 @@ const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_milvus_2eproto::offsets[] PROT
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DescribeCollectionResponse, status_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DescribeCollectionResponse, schema_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DescribeCollectionResponse, collectionid_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DescribeCollectionResponse, virtual_channel_names_),
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::DescribeCollectionResponse, physical_channel_names_),
~0u, // no _has_bits_
PROTOBUF_FIELD_OFFSET(::milvus::proto::milvus::LoadCollectionRequest, _internal_metadata_),
~0u, // no _extensions_
@ -1442,56 +1445,56 @@ const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_milvus_2eproto::offsets[] PROT
};
static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
{ 0, -1, sizeof(::milvus::proto::milvus::CreateCollectionRequest)},
{ 9, -1, sizeof(::milvus::proto::milvus::DropCollectionRequest)},
{ 17, -1, sizeof(::milvus::proto::milvus::HasCollectionRequest)},
{ 25, -1, sizeof(::milvus::proto::milvus::BoolResponse)},
{ 32, -1, sizeof(::milvus::proto::milvus::StringResponse)},
{ 39, -1, sizeof(::milvus::proto::milvus::DescribeCollectionRequest)},
{ 48, -1, sizeof(::milvus::proto::milvus::DescribeCollectionResponse)},
{ 56, -1, sizeof(::milvus::proto::milvus::LoadCollectionRequest)},
{ 64, -1, sizeof(::milvus::proto::milvus::ReleaseCollectionRequest)},
{ 72, -1, sizeof(::milvus::proto::milvus::GetCollectionStatisticsRequest)},
{ 80, -1, sizeof(::milvus::proto::milvus::GetCollectionStatisticsResponse)},
{ 87, -1, sizeof(::milvus::proto::milvus::ShowCollectionsRequest)},
{ 94, -1, sizeof(::milvus::proto::milvus::ShowCollectionsResponse)},
{ 101, -1, sizeof(::milvus::proto::milvus::CreatePartitionRequest)},
{ 110, -1, sizeof(::milvus::proto::milvus::DropPartitionRequest)},
{ 119, -1, sizeof(::milvus::proto::milvus::HasPartitionRequest)},
{ 128, -1, sizeof(::milvus::proto::milvus::LoadPartitionsRequest)},
{ 137, -1, sizeof(::milvus::proto::milvus::ReleasePartitionsRequest)},
{ 146, -1, sizeof(::milvus::proto::milvus::GetPartitionStatisticsRequest)},
{ 155, -1, sizeof(::milvus::proto::milvus::GetPartitionStatisticsResponse)},
{ 162, -1, sizeof(::milvus::proto::milvus::ShowPartitionsRequest)},
{ 171, -1, sizeof(::milvus::proto::milvus::ShowPartitionsResponse)},
{ 179, -1, sizeof(::milvus::proto::milvus::DescribeSegmentRequest)},
{ 187, -1, sizeof(::milvus::proto::milvus::DescribeSegmentResponse)},
{ 196, -1, sizeof(::milvus::proto::milvus::ShowSegmentsRequest)},
{ 204, -1, sizeof(::milvus::proto::milvus::ShowSegmentsResponse)},
{ 211, -1, sizeof(::milvus::proto::milvus::CreateIndexRequest)},
{ 221, -1, sizeof(::milvus::proto::milvus::DescribeIndexRequest)},
{ 231, -1, sizeof(::milvus::proto::milvus::IndexDescription)},
{ 240, -1, sizeof(::milvus::proto::milvus::DescribeIndexResponse)},
{ 247, -1, sizeof(::milvus::proto::milvus::GetIndexBuildProgressRequest)},
{ 257, -1, sizeof(::milvus::proto::milvus::GetIndexBuildProgressResponse)},
{ 265, -1, sizeof(::milvus::proto::milvus::GetIndexStateRequest)},
{ 275, -1, sizeof(::milvus::proto::milvus::GetIndexStateResponse)},
{ 282, -1, sizeof(::milvus::proto::milvus::DropIndexRequest)},
{ 292, -1, sizeof(::milvus::proto::milvus::InsertRequest)},
{ 303, -1, sizeof(::milvus::proto::milvus::InsertResponse)},
{ 311, -1, sizeof(::milvus::proto::milvus::PlaceholderValue)},
{ 319, -1, sizeof(::milvus::proto::milvus::PlaceholderGroup)},
{ 325, -1, sizeof(::milvus::proto::milvus::SearchRequest)},
{ 338, -1, sizeof(::milvus::proto::milvus::Hits)},
{ 346, -1, sizeof(::milvus::proto::milvus::SearchResults)},
{ 353, -1, sizeof(::milvus::proto::milvus::FlushRequest)},
{ 361, -1, sizeof(::milvus::proto::milvus::PersistentSegmentInfo)},
{ 375, -1, sizeof(::milvus::proto::milvus::GetPersistentSegmentInfoRequest)},
{ 383, -1, sizeof(::milvus::proto::milvus::GetPersistentSegmentInfoResponse)},
{ 390, -1, sizeof(::milvus::proto::milvus::QuerySegmentInfo)},
{ 402, -1, sizeof(::milvus::proto::milvus::GetQuerySegmentInfoRequest)},
{ 410, -1, sizeof(::milvus::proto::milvus::GetQuerySegmentInfoResponse)},
{ 417, -1, sizeof(::milvus::proto::milvus::RegisterLinkRequest)},
{ 422, -1, sizeof(::milvus::proto::milvus::RegisterLinkResponse)},
{ 10, -1, sizeof(::milvus::proto::milvus::DropCollectionRequest)},
{ 18, -1, sizeof(::milvus::proto::milvus::HasCollectionRequest)},
{ 26, -1, sizeof(::milvus::proto::milvus::BoolResponse)},
{ 33, -1, sizeof(::milvus::proto::milvus::StringResponse)},
{ 40, -1, sizeof(::milvus::proto::milvus::DescribeCollectionRequest)},
{ 49, -1, sizeof(::milvus::proto::milvus::DescribeCollectionResponse)},
{ 59, -1, sizeof(::milvus::proto::milvus::LoadCollectionRequest)},
{ 67, -1, sizeof(::milvus::proto::milvus::ReleaseCollectionRequest)},
{ 75, -1, sizeof(::milvus::proto::milvus::GetCollectionStatisticsRequest)},
{ 83, -1, sizeof(::milvus::proto::milvus::GetCollectionStatisticsResponse)},
{ 90, -1, sizeof(::milvus::proto::milvus::ShowCollectionsRequest)},
{ 97, -1, sizeof(::milvus::proto::milvus::ShowCollectionsResponse)},
{ 104, -1, sizeof(::milvus::proto::milvus::CreatePartitionRequest)},
{ 113, -1, sizeof(::milvus::proto::milvus::DropPartitionRequest)},
{ 122, -1, sizeof(::milvus::proto::milvus::HasPartitionRequest)},
{ 131, -1, sizeof(::milvus::proto::milvus::LoadPartitionsRequest)},
{ 140, -1, sizeof(::milvus::proto::milvus::ReleasePartitionsRequest)},
{ 149, -1, sizeof(::milvus::proto::milvus::GetPartitionStatisticsRequest)},
{ 158, -1, sizeof(::milvus::proto::milvus::GetPartitionStatisticsResponse)},
{ 165, -1, sizeof(::milvus::proto::milvus::ShowPartitionsRequest)},
{ 174, -1, sizeof(::milvus::proto::milvus::ShowPartitionsResponse)},
{ 182, -1, sizeof(::milvus::proto::milvus::DescribeSegmentRequest)},
{ 190, -1, sizeof(::milvus::proto::milvus::DescribeSegmentResponse)},
{ 199, -1, sizeof(::milvus::proto::milvus::ShowSegmentsRequest)},
{ 207, -1, sizeof(::milvus::proto::milvus::ShowSegmentsResponse)},
{ 214, -1, sizeof(::milvus::proto::milvus::CreateIndexRequest)},
{ 224, -1, sizeof(::milvus::proto::milvus::DescribeIndexRequest)},
{ 234, -1, sizeof(::milvus::proto::milvus::IndexDescription)},
{ 243, -1, sizeof(::milvus::proto::milvus::DescribeIndexResponse)},
{ 250, -1, sizeof(::milvus::proto::milvus::GetIndexBuildProgressRequest)},
{ 260, -1, sizeof(::milvus::proto::milvus::GetIndexBuildProgressResponse)},
{ 268, -1, sizeof(::milvus::proto::milvus::GetIndexStateRequest)},
{ 278, -1, sizeof(::milvus::proto::milvus::GetIndexStateResponse)},
{ 285, -1, sizeof(::milvus::proto::milvus::DropIndexRequest)},
{ 295, -1, sizeof(::milvus::proto::milvus::InsertRequest)},
{ 306, -1, sizeof(::milvus::proto::milvus::InsertResponse)},
{ 314, -1, sizeof(::milvus::proto::milvus::PlaceholderValue)},
{ 322, -1, sizeof(::milvus::proto::milvus::PlaceholderGroup)},
{ 328, -1, sizeof(::milvus::proto::milvus::SearchRequest)},
{ 341, -1, sizeof(::milvus::proto::milvus::Hits)},
{ 349, -1, sizeof(::milvus::proto::milvus::SearchResults)},
{ 356, -1, sizeof(::milvus::proto::milvus::FlushRequest)},
{ 364, -1, sizeof(::milvus::proto::milvus::PersistentSegmentInfo)},
{ 378, -1, sizeof(::milvus::proto::milvus::GetPersistentSegmentInfoRequest)},
{ 386, -1, sizeof(::milvus::proto::milvus::GetPersistentSegmentInfoResponse)},
{ 393, -1, sizeof(::milvus::proto::milvus::QuerySegmentInfo)},
{ 405, -1, sizeof(::milvus::proto::milvus::GetQuerySegmentInfoRequest)},
{ 413, -1, sizeof(::milvus::proto::milvus::GetQuerySegmentInfoResponse)},
{ 420, -1, sizeof(::milvus::proto::milvus::RegisterLinkRequest)},
{ 425, -1, sizeof(::milvus::proto::milvus::RegisterLinkResponse)},
};
static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = {
@ -1550,241 +1553,244 @@ static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] =
const char descriptor_table_protodef_milvus_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
"\n\014milvus.proto\022\023milvus.proto.milvus\032\014com"
"mon.proto\032\014schema.proto\"\177\n\027CreateCollect"
"ionRequest\022*\n\004base\030\001 \001(\0132\034.milvus.proto."
"common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017colle"
"ction_name\030\003 \001(\t\022\016\n\006schema\030\004 \001(\014\"m\n\025Drop"
"CollectionRequest\022*\n\004base\030\001 \001(\0132\034.milvus"
".proto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027"
"\n\017collection_name\030\003 \001(\t\"l\n\024HasCollection"
"Request\022*\n\004base\030\001 \001(\0132\034.milvus.proto.com"
"mon.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collecti"
"on_name\030\003 \001(\t\"J\n\014BoolResponse\022+\n\006status\030"
"\001 \001(\0132\033.milvus.proto.common.Status\022\r\n\005va"
"lue\030\002 \001(\010\"L\n\016StringResponse\022+\n\006status\030\001 "
"\001(\0132\033.milvus.proto.common.Status\022\r\n\005valu"
"e\030\002 \001(\t\"\207\001\n\031DescribeCollectionRequest\022*\n"
"\004base\030\001 \001(\0132\034.milvus.proto.common.MsgBas"
"e\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 "
"\001(\t\022\024\n\014collectionID\030\004 \001(\003\"\226\001\n\032DescribeCo"
"llectionResponse\022+\n\006status\030\001 \001(\0132\033.milvu"
"s.proto.common.Status\0225\n\006schema\030\002 \001(\0132%."
"milvus.proto.schema.CollectionSchema\022\024\n\014"
"collectionID\030\003 \001(\003\"m\n\025LoadCollectionRequ"
"est\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common."
"MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_n"
"ame\030\003 \001(\t\"p\n\030ReleaseCollectionRequest\022*\n"
"\004base\030\001 \001(\0132\034.milvus.proto.common.MsgBas"
"e\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 "
"\001(\t\"v\n\036GetCollectionStatisticsRequest\022*\n"
"\004base\030\001 \001(\0132\034.milvus.proto.common.MsgBas"
"e\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 "
"\001(\t\"\200\001\n\037GetCollectionStatisticsResponse\022"
"+\n\006status\030\001 \001(\0132\033.milvus.proto.common.St"
"atus\0220\n\005stats\030\002 \003(\0132!.milvus.proto.commo"
"n.KeyValuePair\"U\n\026ShowCollectionsRequest"
"\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Msg"
"Base\022\017\n\007db_name\030\002 \001(\t\"`\n\027ShowCollections"
"Response\022+\n\006status\030\001 \001(\0132\033.milvus.proto."
"common.Status\022\030\n\020collection_names\030\002 \003(\t\""
"\206\001\n\026CreatePartitionRequest\022*\n\004base\030\001 \001(\013"
"2\034.milvus.proto.common.MsgBase\022\017\n\007db_nam"
"e\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\026\n\016part"
"ition_name\030\004 \001(\t\"\204\001\n\024DropPartitionReques"
"t\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Ms"
"gBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_nam"
"e\030\003 \001(\t\022\026\n\016partition_name\030\004 \001(\t\"\203\001\n\023HasP"
"artitionRequest\022*\n\004base\030\001 \001(\0132\034.milvus.p"
"roto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017"
"collection_name\030\003 \001(\t\022\026\n\016partition_name\030"
"\004 \001(\t\"\206\001\n\025LoadPartitionsRequest\022*\n\004base\030"
"\001 \001(\0132\034.milvus.proto.common.MsgBase\022\017\n\007d"
"b_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\027\n"
"\017partition_names\030\004 \003(\t\"\211\001\n\030ReleasePartit"
"ionsRequest\022*\n\004base\030\001 \001(\0132\034.milvus.proto"
"mon.proto\032\014schema.proto\"\223\001\n\027CreateCollec"
"tionRequest\022*\n\004base\030\001 \001(\0132\034.milvus.proto"
".common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017coll"
"ection_name\030\003 \001(\t\022\027\n\017partition_names\030\004 \003"
"(\t\"\215\001\n\035GetPartitionStatisticsRequest\022*\n\004"
"base\030\001 \001(\0132\034.milvus.proto.common.MsgBase"
"\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001"
"(\t\022\026\n\016partition_name\030\004 \001(\t\"\177\n\036GetPartiti"
"onStatisticsResponse\022+\n\006status\030\001 \001(\0132\033.m"
"ilvus.proto.common.Status\0220\n\005stats\030\002 \003(\013"
"2!.milvus.proto.common.KeyValuePair\"\203\001\n\025"
"ShowPartitionsRequest\022*\n\004base\030\001 \001(\0132\034.mi"
"lvus.proto.common.MsgBase\022\017\n\007db_name\030\002 \001"
"(\t\022\027\n\017collection_name\030\003 \001(\t\022\024\n\014collectio"
"nID\030\004 \001(\003\"t\n\026ShowPartitionsResponse\022+\n\006s"
"tatus\030\001 \001(\0132\033.milvus.proto.common.Status"
"\022\027\n\017partition_names\030\002 \003(\t\022\024\n\014partitionID"
"s\030\003 \003(\003\"m\n\026DescribeSegmentRequest\022*\n\004bas"
"e\030\001 \001(\0132\034.milvus.proto.common.MsgBase\022\024\n"
"\014collectionID\030\002 \001(\003\022\021\n\tsegmentID\030\003 \001(\003\"~"
"\n\027DescribeSegmentResponse\022+\n\006status\030\001 \001("
"\0132\033.milvus.proto.common.Status\022\017\n\007indexI"
"D\030\002 \001(\003\022\017\n\007buildID\030\003 \001(\003\022\024\n\014enable_index"
"\030\004 \001(\010\"l\n\023ShowSegmentsRequest\022*\n\004base\030\001 "
"\001(\0132\034.milvus.proto.common.MsgBase\022\024\n\014col"
"lectionID\030\002 \001(\003\022\023\n\013partitionID\030\003 \001(\003\"W\n\024"
"ShowSegmentsResponse\022+\n\006status\030\001 \001(\0132\033.m"
"ilvus.proto.common.Status\022\022\n\nsegmentIDs\030"
"\002 \003(\003\"\267\001\n\022CreateIndexRequest\022*\n\004base\030\001 \001"
"(\0132\034.milvus.proto.common.MsgBase\022\017\n\007db_n"
"ame\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\022\n\nfi"
"eld_name\030\004 \001(\t\0227\n\014extra_params\030\005 \003(\0132!.m"
"ilvus.proto.common.KeyValuePair\"\224\001\n\024Desc"
"ribeIndexRequest\022*\n\004base\030\001 \001(\0132\034.milvus."
"proto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n"
"\017collection_name\030\003 \001(\t\022\022\n\nfield_name\030\004 \001"
"(\t\022\022\n\nindex_name\030\005 \001(\t\"~\n\020IndexDescripti"
"on\022\022\n\nindex_name\030\001 \001(\t\022\017\n\007indexID\030\002 \001(\003\022"
"1\n\006params\030\003 \003(\0132!.milvus.proto.common.Ke"
"yValuePair\022\022\n\nfield_name\030\004 \001(\t\"\207\001\n\025Descr"
"ibeIndexResponse\022+\n\006status\030\001 \001(\0132\033.milvu"
"s.proto.common.Status\022A\n\022index_descripti"
"ons\030\002 \003(\0132%.milvus.proto.milvus.IndexDes"
"cription\"\234\001\n\034GetIndexBuildProgressReques"
"t\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Ms"
"gBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_nam"
"e\030\003 \001(\t\022\022\n\nfield_name\030\004 \001(\t\022\022\n\nindex_nam"
"e\030\005 \001(\t\"v\n\035GetIndexBuildProgressResponse"
"\022+\n\006status\030\001 \001(\0132\033.milvus.proto.common.S"
"tatus\022\024\n\014indexed_rows\030\002 \001(\003\022\022\n\ntotal_row"
"s\030\003 \001(\003\"\224\001\n\024GetIndexStateRequest\022*\n\004base"
"\030\001 \001(\0132\034.milvus.proto.common.MsgBase\022\017\n\007"
"db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\022"
"\n\nfield_name\030\004 \001(\t\022\022\n\nindex_name\030\005 \001(\t\"t"
"\n\025GetIndexStateResponse\022+\n\006status\030\001 \001(\0132"
"\033.milvus.proto.common.Status\022.\n\005state\030\002 "
"\001(\0162\037.milvus.proto.common.IndexState\"\220\001\n"
"\020DropIndexRequest\022*\n\004base\030\001 \001(\0132\034.milvus"
".proto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027"
"\n\017collection_name\030\003 \001(\t\022\022\n\nfield_name\030\004 "
"\001(\t\022\022\n\nindex_name\030\005 \001(\t\"\275\001\n\rInsertReques"
"t\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Ms"
"gBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_nam"
"e\030\003 \001(\t\022\026\n\016partition_name\030\004 \001(\t\022+\n\010row_d"
"ata\030\005 \003(\0132\031.milvus.proto.common.Blob\022\021\n\t"
"hash_keys\030\006 \003(\r\"e\n\016InsertResponse\022+\n\006sta"
"tus\030\001 \001(\0132\033.milvus.proto.common.Status\022\023"
"\n\013rowID_begin\030\002 \001(\003\022\021\n\trowID_end\030\003 \001(\003\"c"
"\n\020PlaceholderValue\022\013\n\003tag\030\001 \001(\t\0222\n\004type\030"
"\002 \001(\0162$.milvus.proto.milvus.PlaceholderT"
"ype\022\016\n\006values\030\003 \003(\014\"O\n\020PlaceholderGroup\022"
";\n\014placeholders\030\001 \003(\0132%.milvus.proto.mil"
"vus.PlaceholderValue\"\220\002\n\rSearchRequest\022*"
"ection_name\030\003 \001(\t\022\016\n\006schema\030\004 \001(\014\022\022\n\nsha"
"rds_num\030\005 \001(\005\"m\n\025DropCollectionRequest\022*"
"\n\004base\030\001 \001(\0132\034.milvus.proto.common.MsgBa"
"se\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003"
" \001(\t\022\027\n\017partition_names\030\004 \003(\t\022\013\n\003dsl\030\005 \001"
"(\t\022\031\n\021placeholder_group\030\006 \001(\014\022.\n\010dsl_typ"
"e\030\007 \001(\0162\034.milvus.proto.common.DslType\0228\n"
"\rsearch_params\030\010 \003(\0132!.milvus.proto.comm"
"on.KeyValuePair\"5\n\004Hits\022\013\n\003IDs\030\001 \003(\003\022\020\n\010"
"row_data\030\002 \003(\014\022\016\n\006scores\030\003 \003(\002\"J\n\rSearch"
"Results\022+\n\006status\030\001 \001(\0132\033.milvus.proto.c"
"ommon.Status\022\014\n\004hits\030\002 \003(\014\"e\n\014FlushReque"
"st\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.M"
"sgBase\022\017\n\007db_name\030\002 \001(\t\022\030\n\020collection_na"
"mes\030\003 \003(\t\"\351\001\n\025PersistentSegmentInfo\022\021\n\ts"
"egmentID\030\001 \001(\003\022\024\n\014collectionID\030\002 \001(\003\022\023\n\013"
"partitionID\030\003 \001(\003\022\021\n\topen_time\030\004 \001(\004\022\023\n\013"
"sealed_time\030\005 \001(\004\022\024\n\014flushed_time\030\006 \001(\004\022"
"\020\n\010num_rows\030\007 \001(\003\022\020\n\010mem_size\030\010 \001(\003\0220\n\005s"
"tate\030\t \001(\0162!.milvus.proto.common.Segment"
"State\"u\n\037GetPersistentSegmentInfoRequest"
" \001(\t\"l\n\024HasCollectionRequest\022*\n\004base\030\001 \001"
"(\0132\034.milvus.proto.common.MsgBase\022\017\n\007db_n"
"ame\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\"J\n\014Bo"
"olResponse\022+\n\006status\030\001 \001(\0132\033.milvus.prot"
"o.common.Status\022\r\n\005value\030\002 \001(\010\"L\n\016String"
"Response\022+\n\006status\030\001 \001(\0132\033.milvus.proto."
"common.Status\022\r\n\005value\030\002 \001(\t\"\207\001\n\031Describ"
"eCollectionRequest\022*\n\004base\030\001 \001(\0132\034.milvu"
"s.proto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022"
"\027\n\017collection_name\030\003 \001(\t\022\024\n\014collectionID"
"\030\004 \001(\003\"\325\001\n\032DescribeCollectionResponse\022+\n"
"\006status\030\001 \001(\0132\033.milvus.proto.common.Stat"
"us\0225\n\006schema\030\002 \001(\0132%.milvus.proto.schema"
".CollectionSchema\022\024\n\014collectionID\030\003 \001(\003\022"
"\035\n\025virtual_channel_names\030\004 \003(\t\022\036\n\026physic"
"al_channel_names\030\005 \003(\t\"m\n\025LoadCollection"
"Request\022*\n\004base\030\001 \001(\0132\034.milvus.proto.com"
"mon.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collecti"
"on_name\030\003 \001(\t\"p\n\030ReleaseCollectionReques"
"t\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Ms"
"gBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_nam"
"e\030\003 \001(\t\"v\n\036GetCollectionStatisticsReques"
"t\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Ms"
"gBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_nam"
"e\030\003 \001(\t\"\200\001\n\037GetCollectionStatisticsRespo"
"nse\022+\n\006status\030\001 \001(\0132\033.milvus.proto.commo"
"n.Status\0220\n\005stats\030\002 \003(\0132!.milvus.proto.c"
"ommon.KeyValuePair\"U\n\026ShowCollectionsReq"
"uest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common"
".MsgBase\022\017\n\007db_name\030\002 \001(\t\"`\n\027ShowCollect"
"ionsResponse\022+\n\006status\030\001 \001(\0132\033.milvus.pr"
"oto.common.Status\022\030\n\020collection_names\030\002 "
"\003(\t\"\206\001\n\026CreatePartitionRequest\022*\n\004base\030\001"
" \001(\0132\034.milvus.proto.common.MsgBase\022\017\n\007db"
"_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\026\n\016"
"partition_name\030\004 \001(\t\"\204\001\n\024DropPartitionRe"
"quest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.commo"
"n.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection"
"_name\030\003 \001(\t\022\026\n\016partition_name\030\004 \001(\t\"\203\001\n\023"
"HasPartitionRequest\022*\n\004base\030\001 \001(\0132\034.milv"
"us.proto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t"
"\022\027\n\017collection_name\030\003 \001(\t\022\026\n\016partition_n"
"ame\030\004 \001(\t\"\206\001\n\025LoadPartitionsRequest\022*\n\004b"
"ase\030\001 \001(\0132\034.milvus.proto.common.MsgBase\022"
"\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001("
"\t\022\027\n\017partition_names\030\004 \003(\t\"\211\001\n\030ReleasePa"
"rtitionsRequest\022*\n\004base\030\001 \001(\0132\034.milvus.p"
"roto.common.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017"
"collection_name\030\003 \001(\t\022\027\n\017partition_names"
"\030\004 \003(\t\"\215\001\n\035GetPartitionStatisticsRequest"
"\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.Msg"
"Base\022\016\n\006dbName\030\002 \001(\t\022\026\n\016collectionName\030\003"
" \001(\t\"\212\001\n GetPersistentSegmentInfoRespons"
"e\022+\n\006status\030\001 \001(\0132\033.milvus.proto.common."
"Status\0229\n\005infos\030\002 \003(\0132*.milvus.proto.mil"
"vus.PersistentSegmentInfo\"\231\001\n\020QuerySegme"
"ntInfo\022\021\n\tsegmentID\030\001 \001(\003\022\024\n\014collectionI"
"D\030\002 \001(\003\022\023\n\013partitionID\030\003 \001(\003\022\020\n\010mem_size"
"\030\004 \001(\003\022\020\n\010num_rows\030\005 \001(\003\022\022\n\nindex_name\030\006"
" \001(\t\022\017\n\007indexID\030\007 \001(\003\"p\n\032GetQuerySegment"
"InfoRequest\022*\n\004base\030\001 \001(\0132\034.milvus.proto"
".common.MsgBase\022\016\n\006dbName\030\002 \001(\t\022\026\n\016colle"
"ctionName\030\003 \001(\t\"\200\001\n\033GetQuerySegmentInfoR"
"esponse\022+\n\006status\030\001 \001(\0132\033.milvus.proto.c"
"ommon.Status\0224\n\005infos\030\002 \003(\0132%.milvus.pro"
"to.milvus.QuerySegmentInfo\"\025\n\023RegisterLi"
"nkRequest\"r\n\024RegisterLinkResponse\022-\n\007add"
"ress\030\001 \001(\0132\034.milvus.proto.common.Address"
"\022+\n\006status\030\002 \001(\0132\033.milvus.proto.common.S"
"tatus*>\n\017PlaceholderType\022\010\n\004None\020\000\022\020\n\014Bi"
"naryVector\020d\022\017\n\013FloatVector\020e2\220\025\n\rMilvus"
"Service\022_\n\020CreateCollection\022,.milvus.pro"
"to.milvus.CreateCollectionRequest\032\033.milv"
"us.proto.common.Status\"\000\022[\n\016DropCollecti"
"on\022*.milvus.proto.milvus.DropCollectionR"
"equest\032\033.milvus.proto.common.Status\"\000\022_\n"
"\rHasCollection\022).milvus.proto.milvus.Has"
"CollectionRequest\032!.milvus.proto.milvus."
"BoolResponse\"\000\022[\n\016LoadCollection\022*.milvu"
"s.proto.milvus.LoadCollectionRequest\032\033.m"
"ilvus.proto.common.Status\"\000\022a\n\021ReleaseCo"
"llection\022-.milvus.proto.milvus.ReleaseCo"
"llectionRequest\032\033.milvus.proto.common.St"
"atus\"\000\022w\n\022DescribeCollection\022..milvus.pr"
"oto.milvus.DescribeCollectionRequest\032/.m"
"ilvus.proto.milvus.DescribeCollectionRes"
"ponse\"\000\022\206\001\n\027GetCollectionStatistics\0223.mi"
"lvus.proto.milvus.GetCollectionStatistic"
"sRequest\0324.milvus.proto.milvus.GetCollec"
"tionStatisticsResponse\"\000\022n\n\017ShowCollecti"
"ons\022+.milvus.proto.milvus.ShowCollection"
"sRequest\032,.milvus.proto.milvus.ShowColle"
"ctionsResponse\"\000\022]\n\017CreatePartition\022+.mi"
"lvus.proto.milvus.CreatePartitionRequest"
"\032\033.milvus.proto.common.Status\"\000\022Y\n\rDropP"
"artition\022).milvus.proto.milvus.DropParti"
"tionRequest\032\033.milvus.proto.common.Status"
"\"\000\022]\n\014HasPartition\022(.milvus.proto.milvus"
".HasPartitionRequest\032!.milvus.proto.milv"
"us.BoolResponse\"\000\022[\n\016LoadPartitions\022*.mi"
"lvus.proto.milvus.LoadPartitionsRequest\032"
"\033.milvus.proto.common.Status\"\000\022a\n\021Releas"
"ePartitions\022-.milvus.proto.milvus.Releas"
"ePartitionsRequest\032\033.milvus.proto.common"
".Status\"\000\022\203\001\n\026GetPartitionStatistics\0222.m"
"ilvus.proto.milvus.GetPartitionStatistic"
"sRequest\0323.milvus.proto.milvus.GetPartit"
"ionStatisticsResponse\"\000\022k\n\016ShowPartition"
"s\022*.milvus.proto.milvus.ShowPartitionsRe"
"quest\032+.milvus.proto.milvus.ShowPartitio"
"nsResponse\"\000\022U\n\013CreateIndex\022\'.milvus.pro"
"to.milvus.CreateIndexRequest\032\033.milvus.pr"
"oto.common.Status\"\000\022h\n\rDescribeIndex\022).m"
"ilvus.proto.milvus.DescribeIndexRequest\032"
"*.milvus.proto.milvus.DescribeIndexRespo"
"nse\"\000\022h\n\rGetIndexState\022).milvus.proto.mi"
"lvus.GetIndexStateRequest\032*.milvus.proto"
".milvus.GetIndexStateResponse\"\000\022\200\001\n\025GetI"
"ndexBuildProgress\0221.milvus.proto.milvus."
"GetIndexBuildProgressRequest\0322.milvus.pr"
"oto.milvus.GetIndexBuildProgressResponse"
"\"\000\022Q\n\tDropIndex\022%.milvus.proto.milvus.Dr"
"opIndexRequest\032\033.milvus.proto.common.Sta"
"tus\"\000\022S\n\006Insert\022\".milvus.proto.milvus.In"
"sertRequest\032#.milvus.proto.milvus.Insert"
"Response\"\000\022R\n\006Search\022\".milvus.proto.milv"
"us.SearchRequest\032\".milvus.proto.milvus.S"
"earchResults\"\000\022I\n\005Flush\022!.milvus.proto.m"
"ilvus.FlushRequest\032\033.milvus.proto.common"
".Status\"\000\022\211\001\n\030GetPersistentSegmentInfo\0224"
".milvus.proto.milvus.GetPersistentSegmen"
"tInfoRequest\0325.milvus.proto.milvus.GetPe"
"rsistentSegmentInfoResponse\"\000\022z\n\023GetQuer"
"ySegmentInfo\022/.milvus.proto.milvus.GetQu"
"erySegmentInfoRequest\0320.milvus.proto.mil"
"vus.GetQuerySegmentInfoResponse\"\000\022e\n\014Reg"
"isterLink\022(.milvus.proto.milvus.Register"
"LinkRequest\032).milvus.proto.milvus.Regist"
"erLinkResponse\"\0002u\n\014ProxyService\022e\n\014Regi"
"sterLink\022(.milvus.proto.milvus.RegisterL"
"inkRequest\032).milvus.proto.milvus.Registe"
"rLinkResponse\"\000B5Z3github.com/milvus-io/"
"milvus/internal/proto/milvuspbb\006proto3"
"Base\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name"
"\030\003 \001(\t\022\026\n\016partition_name\030\004 \001(\t\"\177\n\036GetPar"
"titionStatisticsResponse\022+\n\006status\030\001 \001(\013"
"2\033.milvus.proto.common.Status\0220\n\005stats\030\002"
" \003(\0132!.milvus.proto.common.KeyValuePair\""
"\203\001\n\025ShowPartitionsRequest\022*\n\004base\030\001 \001(\0132"
"\034.milvus.proto.common.MsgBase\022\017\n\007db_name"
"\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\024\n\014colle"
"ctionID\030\004 \001(\003\"t\n\026ShowPartitionsResponse\022"
"+\n\006status\030\001 \001(\0132\033.milvus.proto.common.St"
"atus\022\027\n\017partition_names\030\002 \003(\t\022\024\n\014partiti"
"onIDs\030\003 \003(\003\"m\n\026DescribeSegmentRequest\022*\n"
"\004base\030\001 \001(\0132\034.milvus.proto.common.MsgBas"
"e\022\024\n\014collectionID\030\002 \001(\003\022\021\n\tsegmentID\030\003 \001"
"(\003\"~\n\027DescribeSegmentResponse\022+\n\006status\030"
"\001 \001(\0132\033.milvus.proto.common.Status\022\017\n\007in"
"dexID\030\002 \001(\003\022\017\n\007buildID\030\003 \001(\003\022\024\n\014enable_i"
"ndex\030\004 \001(\010\"l\n\023ShowSegmentsRequest\022*\n\004bas"
"e\030\001 \001(\0132\034.milvus.proto.common.MsgBase\022\024\n"
"\014collectionID\030\002 \001(\003\022\023\n\013partitionID\030\003 \001(\003"
"\"W\n\024ShowSegmentsResponse\022+\n\006status\030\001 \001(\013"
"2\033.milvus.proto.common.Status\022\022\n\nsegment"
"IDs\030\002 \003(\003\"\267\001\n\022CreateIndexRequest\022*\n\004base"
"\030\001 \001(\0132\034.milvus.proto.common.MsgBase\022\017\n\007"
"db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001(\t\022\022"
"\n\nfield_name\030\004 \001(\t\0227\n\014extra_params\030\005 \003(\013"
"2!.milvus.proto.common.KeyValuePair\"\224\001\n\024"
"DescribeIndexRequest\022*\n\004base\030\001 \001(\0132\034.mil"
"vus.proto.common.MsgBase\022\017\n\007db_name\030\002 \001("
"\t\022\027\n\017collection_name\030\003 \001(\t\022\022\n\nfield_name"
"\030\004 \001(\t\022\022\n\nindex_name\030\005 \001(\t\"~\n\020IndexDescr"
"iption\022\022\n\nindex_name\030\001 \001(\t\022\017\n\007indexID\030\002 "
"\001(\003\0221\n\006params\030\003 \003(\0132!.milvus.proto.commo"
"n.KeyValuePair\022\022\n\nfield_name\030\004 \001(\t\"\207\001\n\025D"
"escribeIndexResponse\022+\n\006status\030\001 \001(\0132\033.m"
"ilvus.proto.common.Status\022A\n\022index_descr"
"iptions\030\002 \003(\0132%.milvus.proto.milvus.Inde"
"xDescription\"\234\001\n\034GetIndexBuildProgressRe"
"quest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.commo"
"n.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection"
"_name\030\003 \001(\t\022\022\n\nfield_name\030\004 \001(\t\022\022\n\nindex"
"_name\030\005 \001(\t\"v\n\035GetIndexBuildProgressResp"
"onse\022+\n\006status\030\001 \001(\0132\033.milvus.proto.comm"
"on.Status\022\024\n\014indexed_rows\030\002 \001(\003\022\022\n\ntotal"
"_rows\030\003 \001(\003\"\224\001\n\024GetIndexStateRequest\022*\n\004"
"base\030\001 \001(\0132\034.milvus.proto.common.MsgBase"
"\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_name\030\003 \001"
"(\t\022\022\n\nfield_name\030\004 \001(\t\022\022\n\nindex_name\030\005 \001"
"(\t\"t\n\025GetIndexStateResponse\022+\n\006status\030\001 "
"\001(\0132\033.milvus.proto.common.Status\022.\n\005stat"
"e\030\002 \001(\0162\037.milvus.proto.common.IndexState"
"\"\220\001\n\020DropIndexRequest\022*\n\004base\030\001 \001(\0132\034.mi"
"lvus.proto.common.MsgBase\022\017\n\007db_name\030\002 \001"
"(\t\022\027\n\017collection_name\030\003 \001(\t\022\022\n\nfield_nam"
"e\030\004 \001(\t\022\022\n\nindex_name\030\005 \001(\t\"\275\001\n\rInsertRe"
"quest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.commo"
"n.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection"
"_name\030\003 \001(\t\022\026\n\016partition_name\030\004 \001(\t\022+\n\010r"
"ow_data\030\005 \003(\0132\031.milvus.proto.common.Blob"
"\022\021\n\thash_keys\030\006 \003(\r\"e\n\016InsertResponse\022+\n"
"\006status\030\001 \001(\0132\033.milvus.proto.common.Stat"
"us\022\023\n\013rowID_begin\030\002 \001(\003\022\021\n\trowID_end\030\003 \001"
"(\003\"c\n\020PlaceholderValue\022\013\n\003tag\030\001 \001(\t\0222\n\004t"
"ype\030\002 \001(\0162$.milvus.proto.milvus.Placehol"
"derType\022\016\n\006values\030\003 \003(\014\"O\n\020PlaceholderGr"
"oup\022;\n\014placeholders\030\001 \003(\0132%.milvus.proto"
".milvus.PlaceholderValue\"\220\002\n\rSearchReque"
"st\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common.M"
"sgBase\022\017\n\007db_name\030\002 \001(\t\022\027\n\017collection_na"
"me\030\003 \001(\t\022\027\n\017partition_names\030\004 \003(\t\022\013\n\003dsl"
"\030\005 \001(\t\022\031\n\021placeholder_group\030\006 \001(\014\022.\n\010dsl"
"_type\030\007 \001(\0162\034.milvus.proto.common.DslTyp"
"e\0228\n\rsearch_params\030\010 \003(\0132!.milvus.proto."
"common.KeyValuePair\"5\n\004Hits\022\013\n\003IDs\030\001 \003(\003"
"\022\020\n\010row_data\030\002 \003(\014\022\016\n\006scores\030\003 \003(\002\"J\n\rSe"
"archResults\022+\n\006status\030\001 \001(\0132\033.milvus.pro"
"to.common.Status\022\014\n\004hits\030\002 \003(\014\"e\n\014FlushR"
"equest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.comm"
"on.MsgBase\022\017\n\007db_name\030\002 \001(\t\022\030\n\020collectio"
"n_names\030\003 \003(\t\"\351\001\n\025PersistentSegmentInfo\022"
"\021\n\tsegmentID\030\001 \001(\003\022\024\n\014collectionID\030\002 \001(\003"
"\022\023\n\013partitionID\030\003 \001(\003\022\021\n\topen_time\030\004 \001(\004"
"\022\023\n\013sealed_time\030\005 \001(\004\022\024\n\014flushed_time\030\006 "
"\001(\004\022\020\n\010num_rows\030\007 \001(\003\022\020\n\010mem_size\030\010 \001(\003\022"
"0\n\005state\030\t \001(\0162!.milvus.proto.common.Seg"
"mentState\"u\n\037GetPersistentSegmentInfoReq"
"uest\022*\n\004base\030\001 \001(\0132\034.milvus.proto.common"
".MsgBase\022\016\n\006dbName\030\002 \001(\t\022\026\n\016collectionNa"
"me\030\003 \001(\t\"\212\001\n GetPersistentSegmentInfoRes"
"ponse\022+\n\006status\030\001 \001(\0132\033.milvus.proto.com"
"mon.Status\0229\n\005infos\030\002 \003(\0132*.milvus.proto"
".milvus.PersistentSegmentInfo\"\231\001\n\020QueryS"
"egmentInfo\022\021\n\tsegmentID\030\001 \001(\003\022\024\n\014collect"
"ionID\030\002 \001(\003\022\023\n\013partitionID\030\003 \001(\003\022\020\n\010mem_"
"size\030\004 \001(\003\022\020\n\010num_rows\030\005 \001(\003\022\022\n\nindex_na"
"me\030\006 \001(\t\022\017\n\007indexID\030\007 \001(\003\"p\n\032GetQuerySeg"
"mentInfoRequest\022*\n\004base\030\001 \001(\0132\034.milvus.p"
"roto.common.MsgBase\022\016\n\006dbName\030\002 \001(\t\022\026\n\016c"
"ollectionName\030\003 \001(\t\"\200\001\n\033GetQuerySegmentI"
"nfoResponse\022+\n\006status\030\001 \001(\0132\033.milvus.pro"
"to.common.Status\0224\n\005infos\030\002 \003(\0132%.milvus"
".proto.milvus.QuerySegmentInfo\"\025\n\023Regist"
"erLinkRequest\"r\n\024RegisterLinkResponse\022-\n"
"\007address\030\001 \001(\0132\034.milvus.proto.common.Add"
"ress\022+\n\006status\030\002 \001(\0132\033.milvus.proto.comm"
"on.Status*>\n\017PlaceholderType\022\010\n\004None\020\000\022\020"
"\n\014BinaryVector\020d\022\017\n\013FloatVector\020e2\220\025\n\rMi"
"lvusService\022_\n\020CreateCollection\022,.milvus"
".proto.milvus.CreateCollectionRequest\032\033."
"milvus.proto.common.Status\"\000\022[\n\016DropColl"
"ection\022*.milvus.proto.milvus.DropCollect"
"ionRequest\032\033.milvus.proto.common.Status\""
"\000\022_\n\rHasCollection\022).milvus.proto.milvus"
".HasCollectionRequest\032!.milvus.proto.mil"
"vus.BoolResponse\"\000\022[\n\016LoadCollection\022*.m"
"ilvus.proto.milvus.LoadCollectionRequest"
"\032\033.milvus.proto.common.Status\"\000\022a\n\021Relea"
"seCollection\022-.milvus.proto.milvus.Relea"
"seCollectionRequest\032\033.milvus.proto.commo"
"n.Status\"\000\022w\n\022DescribeCollection\022..milvu"
"s.proto.milvus.DescribeCollectionRequest"
"\032/.milvus.proto.milvus.DescribeCollectio"
"nResponse\"\000\022\206\001\n\027GetCollectionStatistics\022"
"3.milvus.proto.milvus.GetCollectionStati"
"sticsRequest\0324.milvus.proto.milvus.GetCo"
"llectionStatisticsResponse\"\000\022n\n\017ShowColl"
"ections\022+.milvus.proto.milvus.ShowCollec"
"tionsRequest\032,.milvus.proto.milvus.ShowC"
"ollectionsResponse\"\000\022]\n\017CreatePartition\022"
"+.milvus.proto.milvus.CreatePartitionReq"
"uest\032\033.milvus.proto.common.Status\"\000\022Y\n\rD"
"ropPartition\022).milvus.proto.milvus.DropP"
"artitionRequest\032\033.milvus.proto.common.St"
"atus\"\000\022]\n\014HasPartition\022(.milvus.proto.mi"
"lvus.HasPartitionRequest\032!.milvus.proto."
"milvus.BoolResponse\"\000\022[\n\016LoadPartitions\022"
"*.milvus.proto.milvus.LoadPartitionsRequ"
"est\032\033.milvus.proto.common.Status\"\000\022a\n\021Re"
"leasePartitions\022-.milvus.proto.milvus.Re"
"leasePartitionsRequest\032\033.milvus.proto.co"
"mmon.Status\"\000\022\203\001\n\026GetPartitionStatistics"
"\0222.milvus.proto.milvus.GetPartitionStati"
"sticsRequest\0323.milvus.proto.milvus.GetPa"
"rtitionStatisticsResponse\"\000\022k\n\016ShowParti"
"tions\022*.milvus.proto.milvus.ShowPartitio"
"nsRequest\032+.milvus.proto.milvus.ShowPart"
"itionsResponse\"\000\022U\n\013CreateIndex\022\'.milvus"
".proto.milvus.CreateIndexRequest\032\033.milvu"
"s.proto.common.Status\"\000\022h\n\rDescribeIndex"
"\022).milvus.proto.milvus.DescribeIndexRequ"
"est\032*.milvus.proto.milvus.DescribeIndexR"
"esponse\"\000\022h\n\rGetIndexState\022).milvus.prot"
"o.milvus.GetIndexStateRequest\032*.milvus.p"
"roto.milvus.GetIndexStateResponse\"\000\022\200\001\n\025"
"GetIndexBuildProgress\0221.milvus.proto.mil"
"vus.GetIndexBuildProgressRequest\0322.milvu"
"s.proto.milvus.GetIndexBuildProgressResp"
"onse\"\000\022Q\n\tDropIndex\022%.milvus.proto.milvu"
"s.DropIndexRequest\032\033.milvus.proto.common"
".Status\"\000\022S\n\006Insert\022\".milvus.proto.milvu"
"s.InsertRequest\032#.milvus.proto.milvus.In"
"sertResponse\"\000\022R\n\006Search\022\".milvus.proto."
"milvus.SearchRequest\032\".milvus.proto.milv"
"us.SearchResults\"\000\022I\n\005Flush\022!.milvus.pro"
"to.milvus.FlushRequest\032\033.milvus.proto.co"
"mmon.Status\"\000\022\211\001\n\030GetPersistentSegmentIn"
"fo\0224.milvus.proto.milvus.GetPersistentSe"
"gmentInfoRequest\0325.milvus.proto.milvus.G"
"etPersistentSegmentInfoResponse\"\000\022z\n\023Get"
"QuerySegmentInfo\022/.milvus.proto.milvus.G"
"etQuerySegmentInfoRequest\0320.milvus.proto"
".milvus.GetQuerySegmentInfoResponse\"\000\022e\n"
"\014RegisterLink\022(.milvus.proto.milvus.Regi"
"sterLinkRequest\032).milvus.proto.milvus.Re"
"gisterLinkResponse\"\0002u\n\014ProxyService\022e\n\014"
"RegisterLink\022(.milvus.proto.milvus.Regis"
"terLinkRequest\032).milvus.proto.milvus.Reg"
"isterLinkResponse\"\000B5Z3github.com/milvus"
"-io/milvus/internal/proto/milvuspbb\006prot"
"o3"
;
static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_milvus_2eproto_deps[2] = {
&::descriptor_table_common_2eproto,
@ -1846,7 +1852,7 @@ static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_mil
static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_milvus_2eproto_once;
static bool descriptor_table_milvus_2eproto_initialized = false;
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_milvus_2eproto = {
&descriptor_table_milvus_2eproto_initialized, descriptor_table_protodef_milvus_2eproto, "milvus.proto", 9438,
&descriptor_table_milvus_2eproto_initialized, descriptor_table_protodef_milvus_2eproto, "milvus.proto", 9522,
&descriptor_table_milvus_2eproto_once, descriptor_table_milvus_2eproto_sccs, descriptor_table_milvus_2eproto_deps, 51, 2,
schemas, file_default_instances, TableStruct_milvus_2eproto::offsets,
file_level_metadata_milvus_2eproto, 51, file_level_enum_descriptors_milvus_2eproto, file_level_service_descriptors_milvus_2eproto,
@ -1920,6 +1926,7 @@ CreateCollectionRequest::CreateCollectionRequest(const CreateCollectionRequest&
} else {
base_ = nullptr;
}
shards_num_ = from.shards_num_;
// @@protoc_insertion_point(copy_constructor:milvus.proto.milvus.CreateCollectionRequest)
}
@ -1928,7 +1935,9 @@ void CreateCollectionRequest::SharedCtor() {
db_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
collection_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
schema_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
base_ = nullptr;
::memset(&base_, 0, static_cast<size_t>(
reinterpret_cast<char*>(&shards_num_) -
reinterpret_cast<char*>(&base_)) + sizeof(shards_num_));
}
CreateCollectionRequest::~CreateCollectionRequest() {
@ -1965,6 +1974,7 @@ void CreateCollectionRequest::Clear() {
delete base_;
}
base_ = nullptr;
shards_num_ = 0;
_internal_metadata_.Clear();
}
@ -2004,6 +2014,13 @@ const char* CreateCollectionRequest::_InternalParse(const char* ptr, ::PROTOBUF_
CHK_(ptr);
} else goto handle_unusual;
continue;
// int32 shards_num = 5;
case 5:
if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
shards_num_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint(&ptr);
CHK_(ptr);
} else goto handle_unusual;
continue;
default: {
handle_unusual:
if ((tag & 7) == 4 || tag == 0) {
@ -2086,6 +2103,19 @@ bool CreateCollectionRequest::MergePartialFromCodedStream(
break;
}
// int32 shards_num = 5;
case 5: {
if (static_cast< ::PROTOBUF_NAMESPACE_ID::uint8>(tag) == (40 & 0xFF)) {
DO_((::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::ReadPrimitive<
::PROTOBUF_NAMESPACE_ID::int32, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32>(
input, &shards_num_)));
} else {
goto handle_unusual;
}
break;
}
default: {
handle_unusual:
if (tag == 0) {
@ -2145,6 +2175,11 @@ void CreateCollectionRequest::SerializeWithCachedSizes(
4, this->schema(), output);
}
// int32 shards_num = 5;
if (this->shards_num() != 0) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32(5, this->shards_num(), output);
}
if (_internal_metadata_.have_unknown_fields()) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFields(
_internal_metadata_.unknown_fields(), output);
@ -2194,6 +2229,11 @@ void CreateCollectionRequest::SerializeWithCachedSizes(
4, this->schema(), target);
}
// int32 shards_num = 5;
if (this->shards_num() != 0) {
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(5, this->shards_num(), target);
}
if (_internal_metadata_.have_unknown_fields()) {
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFieldsToArray(
_internal_metadata_.unknown_fields(), target);
@ -2243,6 +2283,13 @@ size_t CreateCollectionRequest::ByteSizeLong() const {
*base_);
}
// int32 shards_num = 5;
if (this->shards_num() != 0) {
total_size += 1 +
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
this->shards_num());
}
int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(total_size);
SetCachedSize(cached_size);
return total_size;
@ -2285,6 +2332,9 @@ void CreateCollectionRequest::MergeFrom(const CreateCollectionRequest& from) {
if (from.has_base()) {
mutable_base()->::milvus::proto::common::MsgBase::MergeFrom(from.base());
}
if (from.shards_num() != 0) {
set_shards_num(from.shards_num());
}
}
void CreateCollectionRequest::CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) {
@ -2315,6 +2365,7 @@ void CreateCollectionRequest::InternalSwap(CreateCollectionRequest* other) {
schema_.Swap(&other->schema_, &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
GetArenaNoVirtual());
swap(base_, other->base_);
swap(shards_num_, other->shards_num_);
}
::PROTOBUF_NAMESPACE_ID::Metadata CreateCollectionRequest::GetMetadata() const {
@ -4252,7 +4303,9 @@ DescribeCollectionResponse::DescribeCollectionResponse()
}
DescribeCollectionResponse::DescribeCollectionResponse(const DescribeCollectionResponse& from)
: ::PROTOBUF_NAMESPACE_ID::Message(),
_internal_metadata_(nullptr) {
_internal_metadata_(nullptr),
virtual_channel_names_(from.virtual_channel_names_),
physical_channel_names_(from.physical_channel_names_) {
_internal_metadata_.MergeFrom(from._internal_metadata_);
if (from.has_status()) {
status_ = new ::milvus::proto::common::Status(*from.status_);
@ -4300,6 +4353,8 @@ void DescribeCollectionResponse::Clear() {
// Prevent compiler warnings about cached_has_bits being unused
(void) cached_has_bits;
virtual_channel_names_.Clear();
physical_channel_names_.Clear();
if (GetArenaNoVirtual() == nullptr && status_ != nullptr) {
delete status_;
}
@ -4341,6 +4396,30 @@ const char* DescribeCollectionResponse::_InternalParse(const char* ptr, ::PROTOB
CHK_(ptr);
} else goto handle_unusual;
continue;
// repeated string virtual_channel_names = 4;
case 4:
if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
ptr -= 1;
do {
ptr += 1;
ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(add_virtual_channel_names(), ptr, ctx, "milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names");
CHK_(ptr);
if (!ctx->DataAvailable(ptr)) break;
} while (::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint8>(ptr) == 34);
} else goto handle_unusual;
continue;
// repeated string physical_channel_names = 5;
case 5:
if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
ptr -= 1;
do {
ptr += 1;
ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParserUTF8(add_physical_channel_names(), ptr, ctx, "milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names");
CHK_(ptr);
if (!ctx->DataAvailable(ptr)) break;
} while (::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<::PROTOBUF_NAMESPACE_ID::uint8>(ptr) == 42);
} else goto handle_unusual;
continue;
default: {
handle_unusual:
if ((tag & 7) == 4 || tag == 0) {
@ -4406,6 +4485,38 @@ bool DescribeCollectionResponse::MergePartialFromCodedStream(
break;
}
// repeated string virtual_channel_names = 4;
case 4: {
if (static_cast< ::PROTOBUF_NAMESPACE_ID::uint8>(tag) == (34 & 0xFF)) {
DO_(::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::ReadString(
input, this->add_virtual_channel_names()));
DO_(::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->virtual_channel_names(this->virtual_channel_names_size() - 1).data(),
static_cast<int>(this->virtual_channel_names(this->virtual_channel_names_size() - 1).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::PARSE,
"milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names"));
} else {
goto handle_unusual;
}
break;
}
// repeated string physical_channel_names = 5;
case 5: {
if (static_cast< ::PROTOBUF_NAMESPACE_ID::uint8>(tag) == (42 & 0xFF)) {
DO_(::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::ReadString(
input, this->add_physical_channel_names()));
DO_(::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->physical_channel_names(this->physical_channel_names_size() - 1).data(),
static_cast<int>(this->physical_channel_names(this->physical_channel_names_size() - 1).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::PARSE,
"milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names"));
} else {
goto handle_unusual;
}
break;
}
default: {
handle_unusual:
if (tag == 0) {
@ -4450,6 +4561,26 @@ void DescribeCollectionResponse::SerializeWithCachedSizes(
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64(3, this->collectionid(), output);
}
// repeated string virtual_channel_names = 4;
for (int i = 0, n = this->virtual_channel_names_size(); i < n; i++) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->virtual_channel_names(i).data(), static_cast<int>(this->virtual_channel_names(i).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
"milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names");
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteString(
4, this->virtual_channel_names(i), output);
}
// repeated string physical_channel_names = 5;
for (int i = 0, n = this->physical_channel_names_size(); i < n; i++) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->physical_channel_names(i).data(), static_cast<int>(this->physical_channel_names(i).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
"milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names");
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteString(
5, this->physical_channel_names(i), output);
}
if (_internal_metadata_.have_unknown_fields()) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFields(
_internal_metadata_.unknown_fields(), output);
@ -4482,6 +4613,26 @@ void DescribeCollectionResponse::SerializeWithCachedSizes(
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->collectionid(), target);
}
// repeated string virtual_channel_names = 4;
for (int i = 0, n = this->virtual_channel_names_size(); i < n; i++) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->virtual_channel_names(i).data(), static_cast<int>(this->virtual_channel_names(i).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
"milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names");
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
WriteStringToArray(4, this->virtual_channel_names(i), target);
}
// repeated string physical_channel_names = 5;
for (int i = 0, n = this->physical_channel_names_size(); i < n; i++) {
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
this->physical_channel_names(i).data(), static_cast<int>(this->physical_channel_names(i).length()),
::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
"milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names");
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
WriteStringToArray(5, this->physical_channel_names(i), target);
}
if (_internal_metadata_.have_unknown_fields()) {
target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SerializeUnknownFieldsToArray(
_internal_metadata_.unknown_fields(), target);
@ -4503,6 +4654,22 @@ size_t DescribeCollectionResponse::ByteSizeLong() const {
// Prevent compiler warnings about cached_has_bits being unused
(void) cached_has_bits;
// repeated string virtual_channel_names = 4;
total_size += 1 *
::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->virtual_channel_names_size());
for (int i = 0, n = this->virtual_channel_names_size(); i < n; i++) {
total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
this->virtual_channel_names(i));
}
// repeated string physical_channel_names = 5;
total_size += 1 *
::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->physical_channel_names_size());
for (int i = 0, n = this->physical_channel_names_size(); i < n; i++) {
total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
this->physical_channel_names(i));
}
// .milvus.proto.common.Status status = 1;
if (this->has_status()) {
total_size += 1 +
@ -4551,6 +4718,8 @@ void DescribeCollectionResponse::MergeFrom(const DescribeCollectionResponse& fro
::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
(void) cached_has_bits;
virtual_channel_names_.MergeFrom(from.virtual_channel_names_);
physical_channel_names_.MergeFrom(from.physical_channel_names_);
if (from.has_status()) {
mutable_status()->::milvus::proto::common::Status::MergeFrom(from.status());
}
@ -4583,6 +4752,8 @@ bool DescribeCollectionResponse::IsInitialized() const {
void DescribeCollectionResponse::InternalSwap(DescribeCollectionResponse* other) {
using std::swap;
_internal_metadata_.Swap(&other->_internal_metadata_);
virtual_channel_names_.InternalSwap(CastToBase(&other->virtual_channel_names_));
physical_channel_names_.InternalSwap(CastToBase(&other->physical_channel_names_));
swap(status_, other->status_);
swap(schema_, other->schema_);
swap(collectionid_, other->collectionid_);

View File

@ -418,6 +418,7 @@ class CreateCollectionRequest :
kCollectionNameFieldNumber = 3,
kSchemaFieldNumber = 4,
kBaseFieldNumber = 1,
kShardsNumFieldNumber = 5,
};
// string db_name = 2;
void clear_db_name();
@ -460,6 +461,11 @@ class CreateCollectionRequest :
::milvus::proto::common::MsgBase* mutable_base();
void set_allocated_base(::milvus::proto::common::MsgBase* base);
// int32 shards_num = 5;
void clear_shards_num();
::PROTOBUF_NAMESPACE_ID::int32 shards_num() const;
void set_shards_num(::PROTOBUF_NAMESPACE_ID::int32 value);
// @@protoc_insertion_point(class_scope:milvus.proto.milvus.CreateCollectionRequest)
private:
class _Internal;
@ -469,6 +475,7 @@ class CreateCollectionRequest :
::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr collection_name_;
::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr schema_;
::milvus::proto::common::MsgBase* base_;
::PROTOBUF_NAMESPACE_ID::int32 shards_num_;
mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
friend struct ::TableStruct_milvus_2eproto;
};
@ -1362,10 +1369,46 @@ class DescribeCollectionResponse :
// accessors -------------------------------------------------------
enum : int {
kVirtualChannelNamesFieldNumber = 4,
kPhysicalChannelNamesFieldNumber = 5,
kStatusFieldNumber = 1,
kSchemaFieldNumber = 2,
kCollectionIDFieldNumber = 3,
};
// repeated string virtual_channel_names = 4;
int virtual_channel_names_size() const;
void clear_virtual_channel_names();
const std::string& virtual_channel_names(int index) const;
std::string* mutable_virtual_channel_names(int index);
void set_virtual_channel_names(int index, const std::string& value);
void set_virtual_channel_names(int index, std::string&& value);
void set_virtual_channel_names(int index, const char* value);
void set_virtual_channel_names(int index, const char* value, size_t size);
std::string* add_virtual_channel_names();
void add_virtual_channel_names(const std::string& value);
void add_virtual_channel_names(std::string&& value);
void add_virtual_channel_names(const char* value);
void add_virtual_channel_names(const char* value, size_t size);
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& virtual_channel_names() const;
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_virtual_channel_names();
// repeated string physical_channel_names = 5;
int physical_channel_names_size() const;
void clear_physical_channel_names();
const std::string& physical_channel_names(int index) const;
std::string* mutable_physical_channel_names(int index);
void set_physical_channel_names(int index, const std::string& value);
void set_physical_channel_names(int index, std::string&& value);
void set_physical_channel_names(int index, const char* value);
void set_physical_channel_names(int index, const char* value, size_t size);
std::string* add_physical_channel_names();
void add_physical_channel_names(const std::string& value);
void add_physical_channel_names(std::string&& value);
void add_physical_channel_names(const char* value);
void add_physical_channel_names(const char* value, size_t size);
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& physical_channel_names() const;
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_physical_channel_names();
// .milvus.proto.common.Status status = 1;
bool has_status() const;
void clear_status();
@ -1392,6 +1435,8 @@ class DescribeCollectionResponse :
class _Internal;
::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> virtual_channel_names_;
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> physical_channel_names_;
::milvus::proto::common::Status* status_;
::milvus::proto::schema::CollectionSchema* schema_;
::PROTOBUF_NAMESPACE_ID::int64 collectionid_;
@ -8809,6 +8854,20 @@ inline void CreateCollectionRequest::set_allocated_schema(std::string* schema) {
// @@protoc_insertion_point(field_set_allocated:milvus.proto.milvus.CreateCollectionRequest.schema)
}
// int32 shards_num = 5;
inline void CreateCollectionRequest::clear_shards_num() {
shards_num_ = 0;
}
inline ::PROTOBUF_NAMESPACE_ID::int32 CreateCollectionRequest::shards_num() const {
// @@protoc_insertion_point(field_get:milvus.proto.milvus.CreateCollectionRequest.shards_num)
return shards_num_;
}
inline void CreateCollectionRequest::set_shards_num(::PROTOBUF_NAMESPACE_ID::int32 value) {
shards_num_ = value;
// @@protoc_insertion_point(field_set:milvus.proto.milvus.CreateCollectionRequest.shards_num)
}
// -------------------------------------------------------------------
// DropCollectionRequest
@ -9547,6 +9606,136 @@ inline void DescribeCollectionResponse::set_collectionid(::PROTOBUF_NAMESPACE_ID
// @@protoc_insertion_point(field_set:milvus.proto.milvus.DescribeCollectionResponse.collectionID)
}
// repeated string virtual_channel_names = 4;
inline int DescribeCollectionResponse::virtual_channel_names_size() const {
return virtual_channel_names_.size();
}
inline void DescribeCollectionResponse::clear_virtual_channel_names() {
virtual_channel_names_.Clear();
}
inline const std::string& DescribeCollectionResponse::virtual_channel_names(int index) const {
// @@protoc_insertion_point(field_get:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
return virtual_channel_names_.Get(index);
}
inline std::string* DescribeCollectionResponse::mutable_virtual_channel_names(int index) {
// @@protoc_insertion_point(field_mutable:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
return virtual_channel_names_.Mutable(index);
}
inline void DescribeCollectionResponse::set_virtual_channel_names(int index, const std::string& value) {
// @@protoc_insertion_point(field_set:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
virtual_channel_names_.Mutable(index)->assign(value);
}
inline void DescribeCollectionResponse::set_virtual_channel_names(int index, std::string&& value) {
// @@protoc_insertion_point(field_set:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
virtual_channel_names_.Mutable(index)->assign(std::move(value));
}
inline void DescribeCollectionResponse::set_virtual_channel_names(int index, const char* value) {
GOOGLE_DCHECK(value != nullptr);
virtual_channel_names_.Mutable(index)->assign(value);
// @@protoc_insertion_point(field_set_char:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
}
inline void DescribeCollectionResponse::set_virtual_channel_names(int index, const char* value, size_t size) {
virtual_channel_names_.Mutable(index)->assign(
reinterpret_cast<const char*>(value), size);
// @@protoc_insertion_point(field_set_pointer:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
}
inline std::string* DescribeCollectionResponse::add_virtual_channel_names() {
// @@protoc_insertion_point(field_add_mutable:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
return virtual_channel_names_.Add();
}
inline void DescribeCollectionResponse::add_virtual_channel_names(const std::string& value) {
virtual_channel_names_.Add()->assign(value);
// @@protoc_insertion_point(field_add:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
}
inline void DescribeCollectionResponse::add_virtual_channel_names(std::string&& value) {
virtual_channel_names_.Add(std::move(value));
// @@protoc_insertion_point(field_add:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
}
inline void DescribeCollectionResponse::add_virtual_channel_names(const char* value) {
GOOGLE_DCHECK(value != nullptr);
virtual_channel_names_.Add()->assign(value);
// @@protoc_insertion_point(field_add_char:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
}
inline void DescribeCollectionResponse::add_virtual_channel_names(const char* value, size_t size) {
virtual_channel_names_.Add()->assign(reinterpret_cast<const char*>(value), size);
// @@protoc_insertion_point(field_add_pointer:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
DescribeCollectionResponse::virtual_channel_names() const {
// @@protoc_insertion_point(field_list:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
return virtual_channel_names_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
DescribeCollectionResponse::mutable_virtual_channel_names() {
// @@protoc_insertion_point(field_mutable_list:milvus.proto.milvus.DescribeCollectionResponse.virtual_channel_names)
return &virtual_channel_names_;
}
// repeated string physical_channel_names = 5;
inline int DescribeCollectionResponse::physical_channel_names_size() const {
return physical_channel_names_.size();
}
inline void DescribeCollectionResponse::clear_physical_channel_names() {
physical_channel_names_.Clear();
}
inline const std::string& DescribeCollectionResponse::physical_channel_names(int index) const {
// @@protoc_insertion_point(field_get:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
return physical_channel_names_.Get(index);
}
inline std::string* DescribeCollectionResponse::mutable_physical_channel_names(int index) {
// @@protoc_insertion_point(field_mutable:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
return physical_channel_names_.Mutable(index);
}
inline void DescribeCollectionResponse::set_physical_channel_names(int index, const std::string& value) {
// @@protoc_insertion_point(field_set:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
physical_channel_names_.Mutable(index)->assign(value);
}
inline void DescribeCollectionResponse::set_physical_channel_names(int index, std::string&& value) {
// @@protoc_insertion_point(field_set:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
physical_channel_names_.Mutable(index)->assign(std::move(value));
}
inline void DescribeCollectionResponse::set_physical_channel_names(int index, const char* value) {
GOOGLE_DCHECK(value != nullptr);
physical_channel_names_.Mutable(index)->assign(value);
// @@protoc_insertion_point(field_set_char:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
}
inline void DescribeCollectionResponse::set_physical_channel_names(int index, const char* value, size_t size) {
physical_channel_names_.Mutable(index)->assign(
reinterpret_cast<const char*>(value), size);
// @@protoc_insertion_point(field_set_pointer:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
}
inline std::string* DescribeCollectionResponse::add_physical_channel_names() {
// @@protoc_insertion_point(field_add_mutable:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
return physical_channel_names_.Add();
}
inline void DescribeCollectionResponse::add_physical_channel_names(const std::string& value) {
physical_channel_names_.Add()->assign(value);
// @@protoc_insertion_point(field_add:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
}
inline void DescribeCollectionResponse::add_physical_channel_names(std::string&& value) {
physical_channel_names_.Add(std::move(value));
// @@protoc_insertion_point(field_add:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
}
inline void DescribeCollectionResponse::add_physical_channel_names(const char* value) {
GOOGLE_DCHECK(value != nullptr);
physical_channel_names_.Add()->assign(value);
// @@protoc_insertion_point(field_add_char:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
}
inline void DescribeCollectionResponse::add_physical_channel_names(const char* value, size_t size) {
physical_channel_names_.Add()->assign(reinterpret_cast<const char*>(value), size);
// @@protoc_insertion_point(field_add_pointer:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
DescribeCollectionResponse::physical_channel_names() const {
// @@protoc_insertion_point(field_list:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
return physical_channel_names_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
DescribeCollectionResponse::mutable_physical_channel_names() {
// @@protoc_insertion_point(field_mutable_list:milvus.proto.milvus.DescribeCollectionResponse.physical_channel_names)
return &physical_channel_names_;
}
// -------------------------------------------------------------------
// LoadCollectionRequest

File diff suppressed because it is too large Load Diff

View File

@ -61,6 +61,7 @@ type metaTable struct {
segID2PartitionID map[typeutil.UniqueID]typeutil.UniqueID // segment id -> partition id
flushedSegID map[typeutil.UniqueID]bool // flushed segment id
partitionID2CollID map[typeutil.UniqueID]typeutil.UniqueID // partition id -> collection id
vChan2Chan map[string]string // virtual channel name to physical channel name
tenantLock sync.RWMutex
proxyLock sync.RWMutex
@ -94,6 +95,7 @@ func (mt *metaTable) reloadFromKV() error {
mt.segID2CollID = make(map[typeutil.UniqueID]typeutil.UniqueID)
mt.segID2PartitionID = make(map[typeutil.UniqueID]typeutil.UniqueID)
mt.flushedSegID = make(map[typeutil.UniqueID]bool)
mt.vChan2Chan = make(map[string]string)
_, values, err := mt.client.LoadWithPrefix(TenantMetaPrefix)
if err != nil {
@ -129,15 +131,19 @@ func (mt *metaTable) reloadFromKV() error {
}
for _, value := range values {
collectionInfo := pb.CollectionInfo{}
err = proto.UnmarshalText(value, &collectionInfo)
collInfo := pb.CollectionInfo{}
err = proto.UnmarshalText(value, &collInfo)
if err != nil {
return fmt.Errorf("MasterService UnmarshalText pb.CollectionInfo err:%w", err)
}
mt.collID2Meta[collectionInfo.ID] = collectionInfo
mt.collName2ID[collectionInfo.Schema.Name] = collectionInfo.ID
for _, partID := range collectionInfo.PartitionIDs {
mt.partitionID2CollID[partID] = collectionInfo.ID
mt.collID2Meta[collInfo.ID] = collInfo
mt.collName2ID[collInfo.Schema.Name] = collInfo.ID
for _, partID := range collInfo.PartitionIDs {
mt.partitionID2CollID[partID] = collInfo.ID
}
shardsNum := len(collInfo.VirtualChannelNames)
for i := 0; i < shardsNum; i++ {
mt.vChan2Chan[collInfo.VirtualChannelNames[i]] = collInfo.PhysicalChannelNames[i]
}
}
@ -266,6 +272,11 @@ func (mt *metaTable) AddCollection(coll *pb.CollectionInfo, part *pb.PartitionIn
meta[k] = v
}
shardsNum := len(coll.VirtualChannelNames)
for i := 0; i < shardsNum; i++ {
mt.vChan2Chan[coll.VirtualChannelNames[i]] = coll.PhysicalChannelNames[i]
}
// save ddOpStr into etcd
meta[DDOperationPrefix] = ddOpStr
meta[DDMsgSendPrefix] = "false"
@ -317,6 +328,12 @@ func (mt *metaTable) DeleteCollection(collID typeutil.UniqueID, ddOpStr string)
}
delete(mt.indexID2Meta, idxInfo.IndexID)
}
shardsNum := len(collMeta.VirtualChannelNames)
for i := 0; i < shardsNum; i++ {
delete(mt.vChan2Chan, collMeta.VirtualChannelNames[i])
}
delMetakeys := []string{
fmt.Sprintf("%s/%d", CollectionMetaPrefix, collID),
fmt.Sprintf("%s/%d", PartitionMetaPrefix, collID),
@ -749,7 +766,7 @@ func (mt *metaTable) GetSegmentIndexInfoByID(segID typeutil.UniqueID, filedID in
_, ok := mt.flushedSegID[segID]
if !ok {
return pb.SegmentIndexInfo{}, fmt.Errorf("segment id %d hasn't flused, there is no index meta", segID)
return pb.SegmentIndexInfo{}, fmt.Errorf("segment id %d hasn't flushed, there is no index meta", segID)
}
segIdxMap, ok := mt.segID2IndexMeta[segID]
@ -1006,3 +1023,15 @@ func (mt *metaTable) AddFlushedSegment(segID typeutil.UniqueID) error {
mt.flushedSegID[segID] = true
return nil
}
// GetChanNameByVirtualChan return physical channel name corresponding the virtual channel
func (mt *metaTable) GetChanNameByVirtualChan(vname string) (string, error) {
mt.ddLock.RLock()
defer mt.ddLock.RUnlock()
chanName, ok := mt.vChan2Chan[vname]
if !ok {
return "", fmt.Errorf("cannot find virtual channel %s", vname)
}
return chanName, nil
}

View File

@ -147,14 +147,20 @@ func Test_MockKV(t *testing.T) {
}
func TestMetaTable(t *testing.T) {
const collID = typeutil.UniqueID(1)
const collIDInvalid = typeutil.UniqueID(2)
const partIDDefault = typeutil.UniqueID(10)
const partID = typeutil.UniqueID(20)
const partIDInvalid = typeutil.UniqueID(21)
const segID = typeutil.UniqueID(100)
const segID2 = typeutil.UniqueID(101)
const fieldID = typeutil.UniqueID(110)
const (
collID = typeutil.UniqueID(1)
collIDInvalid = typeutil.UniqueID(2)
partIDDefault = typeutil.UniqueID(10)
partID = typeutil.UniqueID(20)
partIDInvalid = typeutil.UniqueID(21)
segID = typeutil.UniqueID(100)
segID2 = typeutil.UniqueID(101)
fieldID = typeutil.UniqueID(110)
fieldID2 = typeutil.UniqueID(111)
indexID = typeutil.UniqueID(10000)
indexID2 = typeutil.UniqueID(10001)
buildID = typeutil.UniqueID(201)
)
rand.Seed(time.Now().UnixNano())
randVal := rand.Int()
@ -208,7 +214,7 @@ func TestMetaTable(t *testing.T) {
FieldIndexes: []*pb.FieldIndexInfo{
{
FiledID: fieldID,
IndexID: 10000,
IndexID: indexID,
},
},
CreateTime: 0,
@ -227,7 +233,7 @@ func TestMetaTable(t *testing.T) {
idxInfo := []*pb.IndexInfo{
{
IndexName: "testColl_index_110",
IndexID: 10000,
IndexID: indexID,
IndexParams: []*commonpb.KeyValuePair{
{
Key: "field110-i1",
@ -260,13 +266,13 @@ func TestMetaTable(t *testing.T) {
collMeta, err := mt.GetCollectionByName("testColl")
assert.Nil(t, err)
assert.Equal(t, collMeta.PartitionIDs[0], partIDDefault)
assert.Equal(t, len(collMeta.PartitionIDs), 1)
assert.Equal(t, partIDDefault, collMeta.PartitionIDs[0])
assert.Equal(t, 1, len(collMeta.PartitionIDs))
assert.True(t, mt.HasCollection(collInfo.ID))
field, err := mt.GetFieldSchema("testColl", "field110")
assert.Nil(t, err)
assert.Equal(t, field.FieldID, collInfo.Schema.Fields[0].FieldID)
assert.Equal(t, collInfo.Schema.Fields[0].FieldID, field.FieldID)
// check DD operation flag
flag, err := mt.client.Load(DDMsgSendPrefix)
@ -305,8 +311,8 @@ func TestMetaTable(t *testing.T) {
segIdxInfo := pb.SegmentIndexInfo{
SegmentID: segID,
FieldID: fieldID,
IndexID: 10000,
BuildID: 201,
IndexID: indexID,
BuildID: buildID,
}
err := mt.AddIndex(&segIdxInfo)
assert.Nil(t, err)
@ -353,8 +359,8 @@ func TestMetaTable(t *testing.T) {
assert.NotNil(t, err)
seg, field, err := mt.GetNotIndexedSegments("testColl", "field110", idxInfo)
assert.Nil(t, err)
assert.Equal(t, len(seg), 1)
assert.Equal(t, seg[0], segID2)
assert.Equal(t, 1, len(seg))
assert.Equal(t, segID2, seg[0])
assert.True(t, EqualKeyPairArray(field.TypeParams, tparams))
params = []*commonpb.KeyValuePair{
@ -369,9 +375,9 @@ func TestMetaTable(t *testing.T) {
seg, field, err = mt.GetNotIndexedSegments("testColl", "field110", idxInfo)
assert.Nil(t, err)
assert.Equal(t, len(seg), 2)
assert.Equal(t, seg[0], segID)
assert.Equal(t, seg[1], segID2)
assert.Equal(t, 2, len(seg))
assert.Equal(t, segID, seg[0])
assert.Equal(t, segID2, seg[1])
assert.True(t, EqualKeyPairArray(field.TypeParams, tparams))
})
@ -379,8 +385,8 @@ func TestMetaTable(t *testing.T) {
t.Run("get index by name", func(t *testing.T) {
_, idx, err := mt.GetIndexByName("testColl", "field110")
assert.Nil(t, err)
assert.Equal(t, len(idx), 1)
assert.Equal(t, idx[0].IndexID, int64(10000))
assert.Equal(t, 1, len(idx))
assert.Equal(t, indexID, idx[0].IndexID)
params := []*commonpb.KeyValuePair{
{
Key: "field110-i1",
@ -418,7 +424,7 @@ func TestMetaTable(t *testing.T) {
idx, ok, err := mt.DropIndex("testColl", "field110", "field110")
assert.Nil(t, err)
assert.True(t, ok)
assert.Equal(t, idx, int64(10000))
assert.Equal(t, indexID, idx)
_, ok, err = mt.DropIndex("testColl", "field110", "field110-error")
assert.Nil(t, err)
@ -449,7 +455,7 @@ func TestMetaTable(t *testing.T) {
})
t.Run("drop collection", func(t *testing.T) {
err := mt.DeleteCollection(collIDInvalid, "")
err = mt.DeleteCollection(collIDInvalid, "")
assert.NotNil(t, err)
err = mt.DeleteCollection(collID, "")
assert.Nil(t, err)
@ -706,10 +712,10 @@ func TestMetaTable(t *testing.T) {
assert.Nil(t, mt.AddSegment(seg))
segIdxInfo := &pb.SegmentIndexInfo{
SegmentID: 100,
FieldID: 110,
IndexID: 10001,
BuildID: 201,
SegmentID: segID,
FieldID: fieldID,
IndexID: indexID2,
BuildID: buildID,
}
err = mt.AddIndex(segIdxInfo)
assert.NotNil(t, err)
@ -738,7 +744,7 @@ func TestMetaTable(t *testing.T) {
assert.Nil(t, err)
assert.Nil(t, mt.AddSegment(seg))
segIdxInfo.IndexID = 10000
segIdxInfo.IndexID = indexID
mockKV.save = func(key, value string) error {
return fmt.Errorf("save error")
}
@ -780,12 +786,12 @@ func TestMetaTable(t *testing.T) {
coll := mt.collID2Meta[collInfo.ID]
coll.FieldIndexes = []*pb.FieldIndexInfo{
{
FiledID: 109,
IndexID: 10001,
FiledID: fieldID2,
IndexID: indexID2,
},
{
FiledID: 110,
IndexID: 10000,
FiledID: fieldID,
IndexID: indexID,
},
}
mt.collID2Meta[coll.ID] = coll
@ -826,21 +832,17 @@ func TestMetaTable(t *testing.T) {
err = mt.AddCollection(collInfo, partInfo, idxInfo, "")
assert.Nil(t, err)
_, err = mt.GetSegmentIndexInfoByID(101, 101, "abc")
_, err = mt.GetSegmentIndexInfoByID(segID2, fieldID, "abc")
assert.NotNil(t, err)
assert.EqualError(t, err, "segment id 101 hasn't flused, there is no index meta")
assert.EqualError(t, err, "segment id 101 hasn't flushed, there is no index meta")
err = mt.AddFlushedSegment(101)
err = mt.AddFlushedSegment(segID2)
assert.Nil(t, err)
seg, err := mt.GetSegmentIndexInfoByID(101, 101, "abc")
seg, err := mt.GetSegmentIndexInfoByID(segID2, fieldID, "abc")
assert.Nil(t, err)
assert.Equal(t, seg, pb.SegmentIndexInfo{
SegmentID: 101,
FieldID: 101,
IndexID: 0,
BuildID: 0,
EnableIndex: false,
})
assert.Equal(t, segID2, seg.SegmentID)
assert.Equal(t, fieldID, seg.FieldID)
assert.Equal(t, false, seg.EnableIndex)
segInfo := &datapb.SegmentInfo{
ID: 100,
@ -849,10 +851,10 @@ func TestMetaTable(t *testing.T) {
}
assert.Nil(t, mt.AddSegment(segInfo))
segIdx := &pb.SegmentIndexInfo{
SegmentID: 100,
FieldID: 110,
IndexID: 10000,
BuildID: 201,
SegmentID: segID,
FieldID: fieldID,
IndexID: indexID,
BuildID: buildID,
}
assert.Nil(t, mt.AddIndex(segIdx))
idx, err := mt.GetSegmentIndexInfoByID(segIdx.SegmentID, segIdx.FieldID, idxInfo[0].IndexName)
@ -1050,5 +1052,4 @@ func TestMetaTable(t *testing.T) {
assert.NotNil(t, err)
assert.EqualError(t, err, "segment id = 222 exist")
})
}

View File

@ -82,6 +82,8 @@ func (t *CreateCollectionReqTask) IgnoreTimeStamp() bool {
}
func (t *CreateCollectionReqTask) Execute(ctx context.Context) error {
const defaultShardsNum = 2
if t.Type() != commonpb.MsgType_CreateCollection {
return fmt.Errorf("create collection, msg type = %s", commonpb.MsgType_name[int32(t.Type())])
}
@ -95,6 +97,12 @@ func (t *CreateCollectionReqTask) Execute(ctx context.Context) error {
return fmt.Errorf("collection name = %s, schema.Name=%s", t.Req.CollectionName, schema.Name)
}
if t.Req.ShardsNum <= 0 {
log.Debug("Set ShardsNum to default", zap.String("collection name", t.Req.CollectionName),
zap.Int32("defaultShardsNum", defaultShardsNum))
t.Req.ShardsNum = defaultShardsNum
}
for idx, field := range schema.Fields {
field.FieldID = int64(idx + StartOfUserFieldID)
}
@ -126,12 +134,22 @@ func (t *CreateCollectionReqTask) Execute(ctx context.Context) error {
if err != nil {
return err
}
vchanNames := make([]string, t.Req.ShardsNum)
chanNames := make([]string, t.Req.ShardsNum)
for i := int32(0); i < t.Req.ShardsNum; i++ {
vchanNames[i] = fmt.Sprintf("%s_%d_v%d", t.Req.CollectionName, collID, i)
chanNames[i] = fmt.Sprintf("%s_%d_c%d", t.Req.CollectionName, collID, i)
}
collInfo := etcdpb.CollectionInfo{
ID: collID,
Schema: &schema,
CreateTime: collTs,
PartitionIDs: make([]typeutil.UniqueID, 0, 16),
FieldIndexes: make([]*etcdpb.FieldIndexInfo, 0, 16),
ID: collID,
Schema: &schema,
CreateTime: collTs,
PartitionIDs: make([]typeutil.UniqueID, 0, 16),
FieldIndexes: make([]*etcdpb.FieldIndexInfo, 0, 16),
VirtualChannelNames: vchanNames,
PhysicalChannelNames: chanNames,
}
// every collection has _default partition
@ -172,12 +190,14 @@ func (t *CreateCollectionReqTask) Execute(ctx context.Context) error {
}
ddCollReq := internalpb.CreateCollectionRequest{
Base: t.Req.Base,
DbName: t.Req.DbName,
CollectionName: t.Req.CollectionName,
DbID: 0, //TODO,not used
CollectionID: collID,
Schema: schemaBytes,
Base: t.Req.Base,
DbName: t.Req.DbName,
CollectionName: t.Req.CollectionName,
DbID: 0, //TODO,not used
CollectionID: collID,
Schema: schemaBytes,
VirtualChannelNames: vchanNames,
PhysicalChannelNames: chanNames,
}
ddPartReq := internalpb.CreatePartitionRequest{
@ -351,23 +371,23 @@ func (t *DescribeCollectionReqTask) Execute(ctx context.Context) error {
if t.Type() != commonpb.MsgType_DescribeCollection {
return fmt.Errorf("describe collection, msg type = %s", commonpb.MsgType_name[int32(t.Type())])
}
var coll *etcdpb.CollectionInfo
var collInfo *etcdpb.CollectionInfo
var err error
if t.Req.CollectionName != "" {
coll, err = t.core.MetaTable.GetCollectionByName(t.Req.CollectionName)
collInfo, err = t.core.MetaTable.GetCollectionByName(t.Req.CollectionName)
if err != nil {
return err
}
} else {
coll, err = t.core.MetaTable.GetCollectionByID(t.Req.CollectionID)
collInfo, err = t.core.MetaTable.GetCollectionByID(t.Req.CollectionID)
if err != nil {
return err
}
}
t.Rsp.Schema = proto.Clone(coll.Schema).(*schemapb.CollectionSchema)
t.Rsp.CollectionID = coll.ID
t.Rsp.Schema = proto.Clone(collInfo.Schema).(*schemapb.CollectionSchema)
t.Rsp.CollectionID = collInfo.ID
var newField []*schemapb.FieldSchema
for _, field := range t.Rsp.Schema.Fields {
if field.FieldID >= StartOfUserFieldID {
@ -375,6 +395,9 @@ func (t *DescribeCollectionReqTask) Execute(ctx context.Context) error {
}
}
t.Rsp.Schema.Fields = newField
t.Rsp.VirtualChannelNames = collInfo.VirtualChannelNames
t.Rsp.PhysicalChannelNames = collInfo.PhysicalChannelNames
return nil
}

View File

@ -41,6 +41,8 @@ message CollectionInfo {
uint64 create_time = 3;
repeated int64 partitionIDs = 4;
repeated FieldIndexInfo field_indexes = 5;
repeated string virtual_channel_names = 6;
repeated string physical_channel_names = 7;
}
message SegmentIndexInfo {

View File

@ -303,6 +303,8 @@ type CollectionInfo struct {
CreateTime uint64 `protobuf:"varint,3,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
PartitionIDs []int64 `protobuf:"varint,4,rep,packed,name=partitionIDs,proto3" json:"partitionIDs,omitempty"`
FieldIndexes []*FieldIndexInfo `protobuf:"bytes,5,rep,name=field_indexes,json=fieldIndexes,proto3" json:"field_indexes,omitempty"`
VirtualChannelNames []string `protobuf:"bytes,6,rep,name=virtual_channel_names,json=virtualChannelNames,proto3" json:"virtual_channel_names,omitempty"`
PhysicalChannelNames []string `protobuf:"bytes,7,rep,name=physical_channel_names,json=physicalChannelNames,proto3" json:"physical_channel_names,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -368,6 +370,20 @@ func (m *CollectionInfo) GetFieldIndexes() []*FieldIndexInfo {
return nil
}
func (m *CollectionInfo) GetVirtualChannelNames() []string {
if m != nil {
return m.VirtualChannelNames
}
return nil
}
func (m *CollectionInfo) GetPhysicalChannelNames() []string {
if m != nil {
return m.PhysicalChannelNames
}
return nil
}
type SegmentIndexInfo struct {
SegmentID int64 `protobuf:"varint,1,opt,name=segmentID,proto3" json:"segmentID,omitempty"`
FieldID int64 `protobuf:"varint,2,opt,name=fieldID,proto3" json:"fieldID,omitempty"`
@ -772,59 +788,62 @@ func init() {
func init() { proto.RegisterFile("etcd_meta.proto", fileDescriptor_975d306d62b73e88) }
var fileDescriptor_975d306d62b73e88 = []byte{
// 853 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x55, 0xcd, 0x8e, 0xe3, 0x44,
0x10, 0x96, 0xf3, 0x3b, 0xae, 0x38, 0x99, 0x99, 0x3e, 0x99, 0x65, 0x97, 0xcd, 0x78, 0xb5, 0x10,
0x09, 0x31, 0x23, 0x66, 0x05, 0x37, 0x0e, 0xec, 0x86, 0x91, 0x22, 0xc4, 0x6e, 0x70, 0x46, 0x1c,
0xb8, 0x58, 0x9d, 0xb8, 0x26, 0x69, 0xc9, 0xdd, 0x0e, 0xee, 0x36, 0x3b, 0xb3, 0x27, 0xae, 0xf0,
0x08, 0xdc, 0x78, 0x3e, 0x78, 0x05, 0x24, 0xd4, 0x3f, 0x71, 0xec, 0xd9, 0x2c, 0x42, 0x2b, 0x71,
0x73, 0x7d, 0x55, 0xd5, 0x55, 0xf5, 0x7d, 0x5d, 0x6d, 0x38, 0x46, 0xb5, 0x4a, 0x13, 0x8e, 0x8a,
0x9e, 0x6f, 0x8b, 0x5c, 0xe5, 0xe4, 0x94, 0xb3, 0xec, 0xe7, 0x52, 0x5a, 0xeb, 0x5c, 0x7b, 0x1f,
0x04, 0xab, 0x9c, 0xf3, 0x5c, 0x58, 0xe8, 0x41, 0x20, 0x57, 0x1b, 0xe4, 0x2e, 0x3c, 0xfa, 0xdd,
0x03, 0xb8, 0x46, 0x41, 0x85, 0xfa, 0x0e, 0x15, 0x25, 0x23, 0x68, 0xcd, 0xa6, 0xa1, 0x37, 0xf6,
0x26, 0xed, 0xb8, 0x35, 0x9b, 0x92, 0x8f, 0xe1, 0x58, 0x94, 0x3c, 0xf9, 0xa9, 0xc4, 0xe2, 0x2e,
0x11, 0x79, 0x8a, 0x32, 0x6c, 0x19, 0xe7, 0x50, 0x94, 0xfc, 0x7b, 0x8d, 0xbe, 0xd4, 0x20, 0xf9,
0x14, 0x4e, 0x99, 0x90, 0x58, 0xa8, 0x64, 0xb5, 0xa1, 0x42, 0x60, 0x36, 0x9b, 0xca, 0xb0, 0x3d,
0x6e, 0x4f, 0xfc, 0xf8, 0xc4, 0x3a, 0x5e, 0x54, 0x38, 0xf9, 0x04, 0x8e, 0xed, 0x81, 0x55, 0x6c,
0xd8, 0x19, 0x7b, 0x13, 0x3f, 0x1e, 0x19, 0xb8, 0x8a, 0x8c, 0x7e, 0xf1, 0xc0, 0x9f, 0x17, 0xf9,
0xed, 0xdd, 0xc1, 0xde, 0xbe, 0x84, 0x3e, 0x4d, 0xd3, 0x02, 0xa5, 0xed, 0x69, 0x70, 0xf9, 0xf0,
0xbc, 0x31, 0xbb, 0x9b, 0xfa, 0x6b, 0x1b, 0x13, 0xef, 0x82, 0x75, 0xaf, 0x05, 0xca, 0x32, 0x3b,
0xd4, 0xab, 0x75, 0xec, 0x7b, 0x8d, 0x6e, 0x61, 0x38, 0xa7, 0x85, 0x62, 0x8a, 0xe5, 0x62, 0x26,
0x6e, 0x72, 0xf2, 0x14, 0x46, 0xdb, 0x1d, 0x90, 0x08, 0xca, 0xd1, 0x74, 0xe4, 0xc7, 0xc3, 0x0a,
0x7d, 0x49, 0x39, 0x92, 0x31, 0x0c, 0x2a, 0x60, 0x36, 0x75, 0xa4, 0xd5, 0x21, 0xf2, 0x11, 0x80,
0xc4, 0x35, 0x47, 0xa1, 0x76, 0xf5, 0xdb, 0x71, 0x0d, 0x89, 0x7e, 0xf3, 0xc0, 0x9f, 0x89, 0x14,
0x6f, 0x4d, 0xd9, 0x47, 0x00, 0x4c, 0x1b, 0xf5, 0x92, 0xbe, 0x41, 0x4c, 0xb9, 0x10, 0xfa, 0xc6,
0xa8, 0x4a, 0xed, 0x4c, 0x32, 0x85, 0xc0, 0x26, 0x6e, 0x69, 0x41, 0xb9, 0x2d, 0x34, 0xb8, 0x3c,
0x3b, 0x48, 0xd5, 0xb7, 0x78, 0xf7, 0x03, 0xcd, 0x4a, 0x9c, 0x53, 0x56, 0xc4, 0x03, 0x93, 0x36,
0x37, 0x59, 0xd1, 0x14, 0x46, 0x57, 0x0c, 0xb3, 0x74, 0xdf, 0x50, 0x08, 0xfd, 0x1b, 0x96, 0x61,
0x5a, 0x49, 0xb2, 0x33, 0xdf, 0xdd, 0x4b, 0xf4, 0x97, 0x07, 0xa3, 0x17, 0x79, 0x96, 0xe1, 0xaa,
0xa2, 0xf3, 0xbe, 0xa8, 0x5f, 0x41, 0xcf, 0xde, 0x4f, 0xa7, 0xe9, 0xd3, 0x66, 0xa3, 0xee, 0xee,
0xee, 0x0f, 0x59, 0x18, 0x20, 0x76, 0x49, 0xe4, 0x31, 0x0c, 0x56, 0x05, 0x52, 0x85, 0x89, 0x62,
0x1c, 0xc3, 0xf6, 0xd8, 0x9b, 0x74, 0x62, 0xb0, 0xd0, 0x35, 0xe3, 0x48, 0x22, 0x08, 0x6a, 0x22,
0xc8, 0xb0, 0x63, 0x78, 0x6f, 0x60, 0xe4, 0x0a, 0x86, 0x37, 0x7a, 0xd8, 0xc4, 0xf4, 0x8d, 0x32,
0xec, 0x1e, 0xe2, 0x4c, 0xaf, 0xd6, 0x79, 0x93, 0x94, 0x38, 0xb8, 0xa9, 0x6c, 0x94, 0xd1, 0x1f,
0x1e, 0x9c, 0x2c, 0x9c, 0xa0, 0x15, 0x6f, 0x0f, 0xc1, 0xaf, 0x44, 0x76, 0x73, 0xef, 0x01, 0xcb,
0xaa, 0x3e, 0xa2, 0xe2, 0xce, 0x99, 0x75, 0x56, 0xdb, 0x4d, 0x85, 0x43, 0xe8, 0x2f, 0x4b, 0x66,
0x72, 0x3a, 0xd6, 0xe3, 0x4c, 0x72, 0x06, 0x01, 0x0a, 0xba, 0xcc, 0xd0, 0x4e, 0x12, 0x76, 0xc7,
0xde, 0xe4, 0x28, 0x1e, 0x58, 0xcc, 0xb4, 0x14, 0xfd, 0xd9, 0x90, 0xe4, 0xe0, 0x9e, 0xfd, 0xdf,
0x92, 0x34, 0x17, 0xa1, 0x73, 0x7f, 0x11, 0x9a, 0x1b, 0xa7, 0xe8, 0xda, 0xea, 0x51, 0xdf, 0xb8,
0x6b, 0xba, 0x96, 0x6f, 0x29, 0xdb, 0x7b, 0x5b, 0xd9, 0xe8, 0x15, 0x9c, 0x18, 0xc5, 0x9e, 0x33,
0x91, 0xe5, 0xeb, 0x2b, 0x96, 0xa1, 0xac, 0x53, 0xee, 0x35, 0x29, 0x3f, 0x83, 0x60, 0x69, 0x02,
0x13, 0x7d, 0xb5, 0xf5, 0x2b, 0xa3, 0xcb, 0x0e, 0x96, 0xfb, 0xe4, 0xe8, 0xef, 0x16, 0x0c, 0x9c,
0xc4, 0x86, 0xbb, 0x7f, 0x57, 0x37, 0x82, 0x60, 0xb5, 0xbf, 0xfe, 0x3b, 0x89, 0x1b, 0x18, 0x79,
0x02, 0xc3, 0xc6, 0xb4, 0x86, 0x30, 0xbf, 0x36, 0xc7, 0x35, 0x5d, 0xeb, 0x20, 0xf7, 0x76, 0x25,
0x52, 0xd1, 0x42, 0x19, 0xe1, 0xbb, 0x71, 0xe0, 0xc0, 0x85, 0xc6, 0x0c, 0xf1, 0x2e, 0x08, 0x45,
0x6a, 0xc4, 0xef, 0xc6, 0xe0, 0xa0, 0x6f, 0x44, 0x4a, 0x3e, 0x04, 0x3f, 0xdf, 0xa2, 0xb0, 0xba,
0xf4, 0x8c, 0x2e, 0x47, 0x1a, 0x30, 0xaa, 0x3c, 0x02, 0x58, 0x65, 0xb9, 0x74, 0xaa, 0xf5, 0x8d,
0xd7, 0x37, 0x88, 0x71, 0x7f, 0x00, 0x47, 0xfa, 0xc7, 0x50, 0xe4, 0xaf, 0x65, 0x78, 0x64, 0x69,
0x13, 0x25, 0x8f, 0xf3, 0xd7, 0x52, 0xbb, 0x38, 0xf2, 0x44, 0xb2, 0x37, 0x18, 0xfa, 0xd6, 0xc5,
0x91, 0x2f, 0xd8, 0x1b, 0x24, 0xaf, 0xe0, 0xb4, 0xc6, 0x68, 0xb2, 0xa5, 0x6a, 0x23, 0x43, 0x30,
0xdb, 0xf5, 0xe4, 0x5d, 0xdb, 0x55, 0xd3, 0x2a, 0x3e, 0xde, 0x73, 0x3f, 0xd7, 0xb9, 0xd1, 0xaf,
0xad, 0xfa, 0xc3, 0xf4, 0x1f, 0x24, 0x78, 0x9f, 0x05, 0xbb, 0xff, 0x84, 0x76, 0xde, 0xe7, 0x09,
0x25, 0x5f, 0x40, 0x57, 0x2a, 0xaa, 0xd0, 0x08, 0x31, 0xba, 0x7c, 0x7c, 0x30, 0xdd, 0x8c, 0xb1,
0xd0, 0x61, 0xb1, 0x8d, 0x26, 0x13, 0x38, 0xb1, 0xc5, 0x6b, 0x8c, 0xf5, 0xcc, 0x45, 0x1c, 0x19,
0xbc, 0xe2, 0xe2, 0xf9, 0xb3, 0x1f, 0x3f, 0x5f, 0x33, 0xb5, 0x29, 0x97, 0xfa, 0xb0, 0x0b, 0x7b,
0xfa, 0x67, 0x2c, 0x77, 0x5f, 0x17, 0x4c, 0x28, 0x2c, 0x04, 0xcd, 0x2e, 0x4c, 0xc1, 0x0b, 0x4d,
0xf0, 0x76, 0xb9, 0xec, 0x19, 0xeb, 0xd9, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x7c, 0xf0, 0x38,
0xe7, 0x48, 0x08, 0x00, 0x00,
// 899 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x55, 0xcd, 0x8e, 0x1b, 0x45,
0x10, 0xd6, 0xf8, 0x77, 0xa7, 0xfc, 0xb3, 0xbb, 0xcd, 0x8f, 0x86, 0x90, 0x10, 0xef, 0x44, 0x01,
0x4b, 0x88, 0x5d, 0xb1, 0x01, 0x6e, 0x1c, 0x48, 0xcc, 0x4a, 0x16, 0x22, 0x31, 0xe3, 0x15, 0x07,
0x2e, 0xa3, 0xb6, 0x5d, 0x6b, 0xb7, 0x34, 0xdd, 0x63, 0xa6, 0x7b, 0x92, 0xdd, 0x9c, 0xb8, 0xc2,
0x23, 0x70, 0xe3, 0xa5, 0x78, 0x09, 0x9e, 0x01, 0x09, 0xf5, 0xcf, 0x8c, 0x67, 0x76, 0x1d, 0x84,
0x22, 0x71, 0x73, 0x7d, 0x55, 0x35, 0x55, 0xf5, 0x7d, 0x55, 0x6d, 0x38, 0x44, 0xb5, 0x5c, 0xc5,
0x1c, 0x15, 0x3d, 0xdd, 0x66, 0xa9, 0x4a, 0xc9, 0x31, 0x67, 0xc9, 0xcb, 0x5c, 0x5a, 0xeb, 0x54,
0x7b, 0xef, 0xf5, 0x97, 0x29, 0xe7, 0xa9, 0xb0, 0xd0, 0xbd, 0xbe, 0x5c, 0x6e, 0x90, 0xbb, 0xf0,
0xf0, 0x77, 0x0f, 0xe0, 0x12, 0x05, 0x15, 0xea, 0x7b, 0x54, 0x94, 0x0c, 0xa1, 0x31, 0x9d, 0x04,
0xde, 0xc8, 0x1b, 0x37, 0xa3, 0xc6, 0x74, 0x42, 0x3e, 0x86, 0x43, 0x91, 0xf3, 0xf8, 0xe7, 0x1c,
0xb3, 0x9b, 0x58, 0xa4, 0x2b, 0x94, 0x41, 0xc3, 0x38, 0x07, 0x22, 0xe7, 0x3f, 0x68, 0xf4, 0xb9,
0x06, 0xc9, 0xa7, 0x70, 0xcc, 0x84, 0xc4, 0x4c, 0xc5, 0xcb, 0x0d, 0x15, 0x02, 0x93, 0xe9, 0x44,
0x06, 0xcd, 0x51, 0x73, 0xec, 0x47, 0x47, 0xd6, 0xf1, 0xac, 0xc4, 0xc9, 0x27, 0x70, 0x68, 0x3f,
0x58, 0xc6, 0x06, 0xad, 0x91, 0x37, 0xf6, 0xa3, 0xa1, 0x81, 0xcb, 0xc8, 0xf0, 0x17, 0x0f, 0xfc,
0x59, 0x96, 0x5e, 0xdf, 0xec, 0xed, 0xed, 0x2b, 0xe8, 0xd2, 0xd5, 0x2a, 0x43, 0x69, 0x7b, 0xea,
0x9d, 0xdf, 0x3f, 0xad, 0xcd, 0xee, 0xa6, 0xfe, 0xc6, 0xc6, 0x44, 0x45, 0xb0, 0xee, 0x35, 0x43,
0x99, 0x27, 0xfb, 0x7a, 0xb5, 0x8e, 0x5d, 0xaf, 0xe1, 0x35, 0x0c, 0x66, 0x34, 0x53, 0x4c, 0xb1,
0x54, 0x4c, 0xc5, 0x55, 0x4a, 0x1e, 0xc3, 0x70, 0x5b, 0x00, 0xb1, 0xa0, 0x1c, 0x4d, 0x47, 0x7e,
0x34, 0x28, 0xd1, 0xe7, 0x94, 0x23, 0x19, 0x41, 0xaf, 0x04, 0xa6, 0x13, 0x47, 0x5a, 0x15, 0x22,
0x1f, 0x01, 0x48, 0x5c, 0x73, 0x14, 0xaa, 0xa8, 0xdf, 0x8c, 0x2a, 0x48, 0xf8, 0x9b, 0x07, 0xfe,
0x54, 0xac, 0xf0, 0xda, 0x94, 0x7d, 0x00, 0xc0, 0xb4, 0x51, 0x2d, 0xe9, 0x1b, 0xc4, 0x94, 0x0b,
0xa0, 0x6b, 0x8c, 0xb2, 0x54, 0x61, 0x92, 0x09, 0xf4, 0x6d, 0xe2, 0x96, 0x66, 0x94, 0xdb, 0x42,
0xbd, 0xf3, 0x93, 0xbd, 0x54, 0x7d, 0x87, 0x37, 0x3f, 0xd2, 0x24, 0xc7, 0x19, 0x65, 0x59, 0xd4,
0x33, 0x69, 0x33, 0x93, 0x15, 0x4e, 0x60, 0x78, 0xc1, 0x30, 0x59, 0xed, 0x1a, 0x0a, 0xa0, 0x7b,
0xc5, 0x12, 0x5c, 0x95, 0x92, 0x14, 0xe6, 0x9b, 0x7b, 0x09, 0xff, 0x6c, 0xc0, 0xf0, 0x59, 0x9a,
0x24, 0xb8, 0x2c, 0xe9, 0xbc, 0x2d, 0xea, 0xd7, 0xd0, 0xb1, 0xfb, 0xe9, 0x34, 0x7d, 0x5c, 0x6f,
0xd4, 0xed, 0xee, 0xee, 0x23, 0x73, 0x03, 0x44, 0x2e, 0x89, 0x3c, 0x84, 0xde, 0x32, 0x43, 0xaa,
0x30, 0x56, 0x8c, 0x63, 0xd0, 0x1c, 0x79, 0xe3, 0x56, 0x04, 0x16, 0xba, 0x64, 0x1c, 0x49, 0x08,
0xfd, 0x8a, 0x08, 0x32, 0x68, 0x19, 0xde, 0x6b, 0x18, 0xb9, 0x80, 0xc1, 0x95, 0x1e, 0x36, 0x36,
0x7d, 0xa3, 0x0c, 0xda, 0xfb, 0x38, 0xd3, 0xa7, 0x75, 0x5a, 0x27, 0x25, 0xea, 0x5f, 0x95, 0x36,
0x4a, 0x72, 0x0e, 0xef, 0xbd, 0x64, 0x99, 0xca, 0x69, 0x52, 0x6c, 0x9a, 0x51, 0x4f, 0x06, 0x1d,
0xb3, 0x6c, 0xef, 0x38, 0xa7, 0xdb, 0x36, 0xad, 0xa3, 0x24, 0x5f, 0xc0, 0xfb, 0xdb, 0xcd, 0x8d,
0x64, 0xcb, 0x3b, 0x49, 0x5d, 0x93, 0xf4, 0x6e, 0xe1, 0xad, 0x66, 0x85, 0x7f, 0x78, 0x70, 0x34,
0x77, 0xab, 0x53, 0x2a, 0x74, 0x1f, 0xfc, 0x72, 0x9d, 0x1c, 0xc3, 0x3b, 0xc0, 0xea, 0xa7, 0x9b,
0x2d, 0x55, 0x72, 0x66, 0x55, 0xbf, 0x66, 0x7d, 0x97, 0x02, 0xe8, 0x2e, 0x72, 0x66, 0x72, 0x5a,
0xd6, 0xe3, 0x4c, 0x72, 0x02, 0x7d, 0x14, 0x74, 0x91, 0xa0, 0xe5, 0x2c, 0x68, 0x8f, 0xbc, 0xf1,
0x41, 0xd4, 0xb3, 0x98, 0x69, 0x29, 0xfc, 0xcb, 0xab, 0x8a, 0xbf, 0xf7, 0xa2, 0xff, 0x6f, 0xf1,
0xeb, 0x27, 0xd7, 0xba, 0x7d, 0x72, 0xf5, 0xdb, 0x56, 0x74, 0x6d, 0x95, 0xaf, 0xde, 0xf6, 0x25,
0x5d, 0xcb, 0x3b, 0x3b, 0xd4, 0xb9, 0xbb, 0x43, 0xe1, 0x0b, 0x38, 0x32, 0xbb, 0xf1, 0x94, 0x89,
0x24, 0x5d, 0x5f, 0xb0, 0x04, 0x65, 0x95, 0x72, 0xaf, 0x4e, 0xf9, 0x09, 0xf4, 0x17, 0x26, 0x30,
0xd6, 0x47, 0xa4, 0xdf, 0x33, 0x5d, 0xb6, 0xb7, 0xd8, 0x25, 0x87, 0x7f, 0x37, 0xa0, 0xe7, 0x24,
0x36, 0xdc, 0xfd, 0xbb, 0xba, 0x21, 0xf4, 0x97, 0xbb, 0x43, 0x2b, 0x24, 0xae, 0x61, 0xe4, 0x11,
0x0c, 0x6a, 0xd3, 0x1a, 0xc2, 0xfc, 0xca, 0x1c, 0x97, 0x74, 0xad, 0x83, 0x8a, 0x35, 0x94, 0x8a,
0x66, 0xca, 0x08, 0xdf, 0x8e, 0xfa, 0x0e, 0x9c, 0x6b, 0xcc, 0x10, 0xef, 0x82, 0x50, 0xac, 0x8c,
0xf8, 0xed, 0x08, 0x1c, 0xf4, 0xad, 0x58, 0x91, 0x0f, 0xc1, 0x4f, 0xb7, 0x28, 0xac, 0x2e, 0x1d,
0xa3, 0xcb, 0x81, 0x06, 0x8c, 0x2a, 0x0f, 0x00, 0x96, 0x49, 0x2a, 0x9d, 0x6a, 0x5d, 0xe3, 0xf5,
0x0d, 0x62, 0xdc, 0x1f, 0xc0, 0x81, 0xfe, 0x0b, 0xca, 0xd2, 0x57, 0x32, 0x38, 0xb0, 0xb4, 0x89,
0x9c, 0x47, 0xe9, 0x2b, 0xa9, 0x5d, 0x1c, 0x79, 0x2c, 0xd9, 0x6b, 0x0c, 0x7c, 0xeb, 0xe2, 0xc8,
0xe7, 0xec, 0x35, 0x92, 0x17, 0x70, 0x5c, 0x61, 0x34, 0xde, 0x52, 0xb5, 0x91, 0x01, 0x98, 0x3b,
0x7e, 0xf4, 0xa6, 0x3b, 0xae, 0x68, 0x15, 0x1d, 0xee, 0xb8, 0x9f, 0xe9, 0xdc, 0xf0, 0xd7, 0x46,
0xf5, 0x09, 0xfc, 0x0f, 0x12, 0xbc, 0xcd, 0x81, 0xdd, 0x7e, 0xac, 0x5b, 0x6f, 0xf3, 0x58, 0x93,
0x2f, 0xa1, 0x2d, 0x15, 0x55, 0x68, 0x84, 0x18, 0x9e, 0x3f, 0xdc, 0x9b, 0x6e, 0xc6, 0x98, 0xeb,
0xb0, 0xc8, 0x46, 0x93, 0x31, 0x1c, 0xd9, 0xe2, 0x15, 0xc6, 0xec, 0x4b, 0x35, 0x34, 0x78, 0xc9,
0xc5, 0xd3, 0x27, 0x3f, 0x7d, 0xbe, 0x66, 0x6a, 0x93, 0x2f, 0xf4, 0xc7, 0xce, 0xec, 0xd7, 0x3f,
0x63, 0xa9, 0xfb, 0x75, 0xc6, 0x84, 0xc2, 0x4c, 0xd0, 0xe4, 0xcc, 0x14, 0x3c, 0xd3, 0x04, 0x6f,
0x17, 0x8b, 0x8e, 0xb1, 0x9e, 0xfc, 0x13, 0x00, 0x00, 0xff, 0xff, 0xcf, 0x3a, 0xd8, 0x74, 0xb2,
0x08, 0x00, 0x00,
}

View File

@ -62,6 +62,8 @@ message CreateCollectionRequest {
int64 dbID = 4;
int64 collectionID = 5;
bytes schema = 6;
repeated string virtualChannelNames = 7;
repeated string physicalChannelNames= 8;
}
message DropCollectionRequest {

View File

@ -479,6 +479,8 @@ type CreateCollectionRequest struct {
DbID int64 `protobuf:"varint,4,opt,name=dbID,proto3" json:"dbID,omitempty"`
CollectionID int64 `protobuf:"varint,5,opt,name=collectionID,proto3" json:"collectionID,omitempty"`
Schema []byte `protobuf:"bytes,6,opt,name=schema,proto3" json:"schema,omitempty"`
VirtualChannelNames []string `protobuf:"bytes,7,rep,name=virtualChannelNames,proto3" json:"virtualChannelNames,omitempty"`
PhysicalChannelNames []string `protobuf:"bytes,8,rep,name=physicalChannelNames,proto3" json:"physicalChannelNames,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -551,6 +553,20 @@ func (m *CreateCollectionRequest) GetSchema() []byte {
return nil
}
func (m *CreateCollectionRequest) GetVirtualChannelNames() []string {
if m != nil {
return m.VirtualChannelNames
}
return nil
}
func (m *CreateCollectionRequest) GetPhysicalChannelNames() []string {
if m != nil {
return m.PhysicalChannelNames
}
return nil
}
type DropCollectionRequest struct {
Base *commonpb.MsgBase `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"`
DbName string `protobuf:"bytes,2,opt,name=db_name,json=dbName,proto3" json:"db_name,omitempty"`
@ -1842,102 +1858,104 @@ func init() {
func init() { proto.RegisterFile("internal.proto", fileDescriptor_41f4a519b878ee3b) }
var fileDescriptor_41f4a519b878ee3b = []byte{
// 1541 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0x5b, 0x6f, 0x1b, 0xc5,
0x17, 0xff, 0xaf, 0xed, 0xc4, 0xf6, 0xf1, 0x26, 0x75, 0xb7, 0xb7, 0x4d, 0x2f, 0xff, 0xba, 0xcb,
0x2d, 0x50, 0x91, 0x54, 0x29, 0x50, 0xc4, 0x4b, 0xdb, 0xc4, 0x6d, 0xb0, 0xda, 0x44, 0x61, 0xdd,
0x56, 0x82, 0x97, 0xd5, 0xd8, 0x7b, 0x62, 0x6f, 0xbb, 0x37, 0x66, 0xc6, 0x4d, 0xdc, 0x27, 0x1e,
0x78, 0x43, 0xf0, 0x80, 0xc4, 0xd7, 0xe0, 0x23, 0x00, 0xe2, 0x09, 0x89, 0x77, 0x24, 0x24, 0x3e,
0x05, 0x8f, 0x3c, 0xa1, 0xb9, 0xec, 0xda, 0x4e, 0x9d, 0x90, 0x1a, 0x21, 0x84, 0xe0, 0x6d, 0xe7,
0x9c, 0xe3, 0x99, 0xf9, 0xfd, 0x7e, 0xe7, 0x9c, 0x99, 0x31, 0x2c, 0x06, 0x31, 0x47, 0x1a, 0x93,
0x70, 0x25, 0xa5, 0x09, 0x4f, 0xac, 0x33, 0x51, 0x10, 0x3e, 0x1d, 0x30, 0x35, 0x5a, 0xc9, 0x9c,
0xe7, 0xcd, 0x6e, 0x12, 0x45, 0x49, 0xac, 0xcc, 0xce, 0x37, 0x06, 0x2c, 0x6c, 0x24, 0x51, 0x9a,
0xc4, 0x18, 0xf3, 0x56, 0xbc, 0x9b, 0x58, 0x67, 0x61, 0x3e, 0x4e, 0x7c, 0x6c, 0x35, 0x6d, 0xa3,
0x61, 0x2c, 0x17, 0x5d, 0x3d, 0xb2, 0x2c, 0x28, 0xd1, 0x24, 0x44, 0xbb, 0xd0, 0x30, 0x96, 0xab,
0xae, 0xfc, 0xb6, 0x6e, 0x02, 0x30, 0x4e, 0x38, 0x7a, 0xdd, 0xc4, 0x47, 0xbb, 0xd8, 0x30, 0x96,
0x17, 0xd7, 0x1a, 0x2b, 0x53, 0xd7, 0x5d, 0x69, 0x8b, 0xc0, 0x8d, 0xc4, 0x47, 0xb7, 0xca, 0xb2,
0x4f, 0xeb, 0x16, 0x00, 0xee, 0x73, 0x4a, 0xbc, 0x20, 0xde, 0x4d, 0xec, 0x52, 0xa3, 0xb8, 0x5c,
0x5b, 0xbb, 0x32, 0x39, 0x81, 0xde, 0xee, 0x3d, 0x1c, 0x3e, 0x22, 0xe1, 0x00, 0x77, 0x48, 0x40,
0xdd, 0xaa, 0xfc, 0x91, 0xd8, 0xae, 0xf3, 0xb3, 0x01, 0x27, 0x72, 0x00, 0x72, 0x0d, 0x66, 0xbd,
0x07, 0x73, 0x72, 0x09, 0x89, 0xa0, 0xb6, 0xf6, 0xf2, 0x21, 0x3b, 0x9a, 0xc0, 0xed, 0xaa, 0x9f,
0x58, 0x0f, 0xe1, 0x14, 0x1b, 0x74, 0xba, 0x99, 0xcb, 0x93, 0x56, 0x66, 0x17, 0xe4, 0xd6, 0x8e,
0x37, 0x93, 0x35, 0x3e, 0x81, 0xde, 0xd2, 0x75, 0x98, 0x17, 0x33, 0x0d, 0x98, 0x64, 0xa9, 0xb6,
0x76, 0x61, 0x2a, 0xc8, 0xb6, 0x0c, 0x71, 0x75, 0xa8, 0x73, 0x01, 0x96, 0x36, 0x91, 0x1f, 0x40,
0xe7, 0xe2, 0xc7, 0x03, 0x64, 0x5c, 0x3b, 0x1f, 0x04, 0x11, 0x3e, 0x08, 0xba, 0x4f, 0x36, 0xfa,
0x24, 0x8e, 0x31, 0xcc, 0x9c, 0x97, 0xe0, 0xc2, 0x26, 0xca, 0x1f, 0x04, 0x8c, 0x07, 0x5d, 0x76,
0xc0, 0x7d, 0x06, 0x4e, 0x6d, 0x22, 0x6f, 0xfa, 0x07, 0xcc, 0x8f, 0xa0, 0xb2, 0x2d, 0xc4, 0x16,
0x69, 0xf0, 0x0e, 0x94, 0x89, 0xef, 0x53, 0x64, 0x4c, 0xb3, 0x78, 0x71, 0xea, 0x8e, 0x6f, 0xab,
0x18, 0x37, 0x0b, 0x9e, 0x96, 0x26, 0xce, 0x63, 0x80, 0x56, 0x1c, 0xf0, 0x1d, 0x42, 0x49, 0xc4,
0x0e, 0x4d, 0xb0, 0x26, 0x98, 0x8c, 0x13, 0xca, 0xbd, 0x54, 0xc6, 0x69, 0xca, 0x8f, 0x91, 0x0d,
0x35, 0xf9, 0x33, 0x35, 0xbb, 0xf3, 0x21, 0x40, 0x9b, 0xd3, 0x20, 0xee, 0xdd, 0x0f, 0x18, 0x17,
0x6b, 0x3d, 0x15, 0x71, 0x02, 0x44, 0x71, 0xb9, 0xea, 0xea, 0xd1, 0x98, 0x1c, 0x85, 0xe3, 0xcb,
0x71, 0x13, 0x6a, 0x19, 0xdd, 0x5b, 0xac, 0x67, 0x5d, 0x83, 0x52, 0x87, 0x30, 0x3c, 0x92, 0x9e,
0x2d, 0xd6, 0x5b, 0x27, 0x0c, 0x5d, 0x19, 0xe9, 0xfc, 0x62, 0xc0, 0xb9, 0x0d, 0x8a, 0x32, 0xf9,
0xc3, 0x10, 0xbb, 0x3c, 0x48, 0x62, 0xcd, 0xfd, 0x8b, 0xcf, 0x66, 0x9d, 0x83, 0xb2, 0xdf, 0xf1,
0x62, 0x12, 0x65, 0x64, 0xcf, 0xfb, 0x9d, 0x6d, 0x12, 0xa1, 0xf5, 0x2a, 0x2c, 0x76, 0xf3, 0xf9,
0x85, 0x45, 0xe6, 0x5c, 0xd5, 0x3d, 0x60, 0x15, 0x52, 0xf9, 0x9d, 0x56, 0xd3, 0x2e, 0x49, 0x19,
0xe4, 0xb7, 0xe5, 0x80, 0x39, 0x8a, 0x6a, 0x35, 0xed, 0x39, 0xe9, 0x9b, 0xb0, 0x09, 0x52, 0x59,
0xb7, 0x8f, 0x11, 0xb1, 0xe7, 0x1b, 0xc6, 0xb2, 0xe9, 0xea, 0x91, 0xf3, 0xbd, 0x01, 0x67, 0x9a,
0x34, 0x49, 0xff, 0xc9, 0xe0, 0x9c, 0xcf, 0x0b, 0x70, 0x56, 0x69, 0xb4, 0x43, 0x28, 0x0f, 0xfe,
0x22, 0x14, 0xaf, 0xc1, 0x89, 0xd1, 0xaa, 0x2a, 0x60, 0x3a, 0x8c, 0x57, 0x60, 0x31, 0xcd, 0xf6,
0xa1, 0xe2, 0x4a, 0x32, 0x6e, 0x21, 0xb7, 0x4e, 0xa0, 0x9d, 0x3b, 0x02, 0xed, 0xfc, 0x14, 0x29,
0x1b, 0x50, 0xcb, 0x27, 0x6a, 0x35, 0xed, 0xb2, 0x0c, 0x19, 0x37, 0x39, 0x9f, 0x15, 0xe0, 0xb4,
0x10, 0xf5, 0x3f, 0x36, 0x04, 0x1b, 0xdf, 0x16, 0xc0, 0x52, 0xd9, 0xd1, 0x8a, 0x7d, 0xdc, 0xff,
0x3b, 0xb9, 0xb8, 0x04, 0xb0, 0x1b, 0x60, 0xe8, 0x8f, 0xf3, 0x50, 0x95, 0x96, 0x3f, 0xc5, 0x81,
0x0d, 0x65, 0x39, 0x49, 0x8e, 0x3f, 0x1b, 0x8a, 0xfe, 0xac, 0xce, 0x6a, 0xdd, 0x9f, 0x2b, 0xc7,
0xee, 0xcf, 0xf2, 0x67, 0xba, 0x3f, 0x7f, 0x5d, 0x84, 0x85, 0x56, 0xcc, 0x90, 0xf2, 0x7f, 0x73,
0x22, 0x59, 0x17, 0xa1, 0xca, 0xb0, 0x17, 0x89, 0x2b, 0x43, 0xd3, 0xae, 0x48, 0xff, 0xc8, 0x20,
0xbc, 0x5d, 0x75, 0x34, 0xb7, 0x9a, 0x76, 0x55, 0x49, 0x9b, 0x1b, 0xac, 0xff, 0x03, 0xf0, 0x20,
0x42, 0xc6, 0x49, 0x94, 0x32, 0x1b, 0x1a, 0xc5, 0xe5, 0x92, 0x3b, 0x66, 0x11, 0xfd, 0x99, 0x26,
0x7b, 0xad, 0x26, 0xb3, 0x6b, 0x8d, 0xa2, 0x38, 0x60, 0xd5, 0xc8, 0x7a, 0x0b, 0x2a, 0x34, 0xd9,
0xf3, 0x7c, 0xc2, 0x89, 0x6d, 0x4a, 0xf1, 0x96, 0xa6, 0x92, 0xbd, 0x1e, 0x26, 0x1d, 0xb7, 0x4c,
0x93, 0xbd, 0x26, 0xe1, 0xc4, 0xf9, 0xb5, 0x00, 0x0b, 0x6d, 0x24, 0xb4, 0xdb, 0x9f, 0x5d, 0xb0,
0xd7, 0xa1, 0x4e, 0x91, 0x0d, 0x42, 0xee, 0x8d, 0x60, 0x29, 0xe5, 0x4e, 0x28, 0xfb, 0x46, 0x0e,
0x2e, 0xa3, 0xbc, 0x78, 0x04, 0xe5, 0xa5, 0x29, 0x94, 0x3b, 0x60, 0x8e, 0xf1, 0xcb, 0xec, 0x39,
0x09, 0x7d, 0xc2, 0x66, 0xd5, 0xa1, 0xe8, 0xb3, 0x50, 0x2a, 0x56, 0x75, 0xc5, 0xa7, 0x75, 0x15,
0x4e, 0xa6, 0x21, 0xe9, 0x62, 0x3f, 0x09, 0x7d, 0xa4, 0x5e, 0x8f, 0x26, 0x83, 0x54, 0xca, 0x65,
0xba, 0xf5, 0x31, 0xc7, 0xa6, 0xb0, 0x5b, 0x37, 0xa0, 0xe2, 0xb3, 0xd0, 0xe3, 0xc3, 0x14, 0xa5,
0x64, 0x8b, 0x87, 0x60, 0x6f, 0xb2, 0xf0, 0xc1, 0x30, 0x45, 0xb7, 0xec, 0xab, 0x0f, 0xeb, 0x1a,
0x9c, 0x66, 0x48, 0x03, 0x12, 0x06, 0xcf, 0xd0, 0xf7, 0x70, 0x3f, 0xa5, 0x5e, 0x1a, 0x92, 0x58,
0x2a, 0x6b, 0xba, 0xd6, 0xc8, 0x77, 0x67, 0x3f, 0xa5, 0x3b, 0x21, 0x89, 0x9d, 0x9f, 0x8c, 0x11,
0xe9, 0x82, 0x1f, 0x36, 0x03, 0xe9, 0xb3, 0xdc, 0x71, 0xa6, 0x2a, 0x55, 0x9c, 0xae, 0xd4, 0x65,
0xa8, 0x45, 0xc8, 0x69, 0xd0, 0x55, 0x8c, 0xa8, 0x02, 0x02, 0x65, 0x92, 0xb0, 0x2d, 0x28, 0xf5,
0x03, 0xae, 0xa4, 0x30, 0x5d, 0xf9, 0xed, 0xfc, 0x68, 0xc0, 0x42, 0x13, 0x43, 0xe4, 0x38, 0x7b,
0x36, 0x4d, 0xa9, 0xf2, 0xc2, 0xd4, 0x2a, 0x9f, 0x28, 0xa3, 0xe2, 0xd1, 0x65, 0x54, 0x7a, 0xae,
0x8c, 0xae, 0x80, 0x99, 0xd2, 0x20, 0x22, 0x74, 0xe8, 0x3d, 0xc1, 0x61, 0x96, 0x51, 0x35, 0x6d,
0xbb, 0x87, 0x43, 0xe6, 0xfc, 0x66, 0x40, 0xf5, 0x7e, 0x42, 0x7c, 0x79, 0x18, 0xcc, 0x80, 0x64,
0xa2, 0x0b, 0x14, 0xa6, 0x74, 0x81, 0xbc, 0x9f, 0x67, 0xdb, 0x1f, 0x35, 0xf8, 0xb1, 0x46, 0x5d,
0x9a, 0x6c, 0xd4, 0x97, 0xa1, 0x16, 0x88, 0x0d, 0x79, 0x29, 0xe1, 0x7d, 0xb5, 0xef, 0xaa, 0x0b,
0xd2, 0xb4, 0x23, 0x2c, 0xa2, 0x93, 0x67, 0x01, 0xb2, 0x93, 0xcf, 0x1f, 0xbb, 0x93, 0xeb, 0x49,
0x64, 0x27, 0xff, 0xae, 0x00, 0x76, 0x5b, 0x6d, 0x76, 0xf4, 0xd0, 0x78, 0x98, 0xfa, 0xf2, 0xbd,
0x73, 0x11, 0xaa, 0xed, 0x1c, 0x99, 0xba, 0xe7, 0x8f, 0x0c, 0x82, 0xfa, 0x2d, 0x8c, 0x12, 0x3a,
0x6c, 0x07, 0xcf, 0x50, 0x03, 0x1f, 0xb3, 0x08, 0x6c, 0xdb, 0x83, 0xc8, 0x4d, 0xf6, 0x98, 0xee,
0x03, 0xd9, 0x50, 0x60, 0xeb, 0xca, 0xf3, 0xd7, 0x13, 0x4a, 0x49, 0xe4, 0x25, 0x17, 0x94, 0x49,
0x5c, 0xce, 0xad, 0x25, 0xa8, 0x60, 0xec, 0x2b, 0xef, 0x9c, 0xf4, 0x96, 0x31, 0xf6, 0xa5, 0xab,
0x05, 0x8b, 0xfa, 0x81, 0x91, 0x30, 0xd9, 0x13, 0x64, 0x27, 0xa8, 0xad, 0x39, 0x87, 0xbc, 0xea,
0xb6, 0x58, 0x6f, 0x47, 0x47, 0xba, 0x0b, 0xea, 0x8d, 0xa1, 0x87, 0xd6, 0x1d, 0x30, 0xc5, 0x2a,
0xf9, 0x44, 0xe5, 0x63, 0x4f, 0x54, 0xc3, 0xd8, 0xcf, 0x06, 0xce, 0x97, 0x06, 0x9c, 0x7c, 0x8e,
0xc2, 0x19, 0xf2, 0xe8, 0x1e, 0x54, 0xda, 0xd8, 0x13, 0x53, 0x64, 0xcf, 0xa6, 0xd5, 0xc3, 0x5e,
0xe1, 0x87, 0x08, 0xe6, 0xe6, 0x13, 0x38, 0x8f, 0x73, 0x59, 0xef, 0x86, 0x03, 0xd6, 0x17, 0xcf,
0x4f, 0x51, 0xaf, 0xfe, 0x4c, 0x6f, 0x9e, 0xa3, 0x53, 0xdc, 0xf9, 0xd4, 0x10, 0x4f, 0x43, 0x1f,
0xf7, 0xe5, 0xd2, 0xcf, 0x25, 0xa6, 0x31, 0x4b, 0x62, 0x8a, 0x76, 0x1b, 0x0f, 0x22, 0x8f, 0x62,
0x48, 0x38, 0xfa, 0x9e, 0x5e, 0x8d, 0xe9, 0xd5, 0xad, 0x78, 0x10, 0xb9, 0xca, 0xa5, 0x61, 0x32,
0xe7, 0x0b, 0x03, 0xe0, 0xae, 0xa8, 0x1e, 0xb5, 0x8d, 0x83, 0xe7, 0x8d, 0x71, 0xf4, 0x3d, 0xa9,
0x30, 0x59, 0x7e, 0xeb, 0x59, 0xf9, 0x31, 0xa9, 0x47, 0x71, 0x1a, 0x86, 0x5c, 0x8f, 0x11, 0x78,
0x5d, 0xa1, 0x4a, 0x83, 0xaf, 0x0c, 0x30, 0xc7, 0xa4, 0x62, 0x93, 0x34, 0x1a, 0x07, 0x3b, 0x85,
0x6c, 0xc5, 0xa2, 0x7a, 0x3c, 0x36, 0x56, 0x50, 0xd1, 0xa8, 0xa0, 0x96, 0xa0, 0x22, 0x29, 0x19,
0xab, 0xa8, 0x58, 0x57, 0xd4, 0x55, 0x38, 0x49, 0xb1, 0x8b, 0x31, 0x0f, 0x87, 0x5e, 0x94, 0xf8,
0xc1, 0x6e, 0x80, 0xbe, 0xac, 0xab, 0x8a, 0x5b, 0xcf, 0x1c, 0x5b, 0xda, 0xee, 0xfc, 0x60, 0xc0,
0xe2, 0x07, 0x03, 0xa4, 0xc3, 0xed, 0xc4, 0x47, 0xb5, 0xb3, 0x17, 0x4f, 0x89, 0x5b, 0x12, 0x8b,
0xa6, 0x47, 0xa5, 0xeb, 0x4b, 0x7f, 0x9c, 0xae, 0xcc, 0xad, 0x30, 0x9d, 0xa2, 0x82, 0x62, 0x75,
0xf7, 0x3d, 0x0e, 0xc5, 0x23, 0x61, 0x5d, 0x75, 0x63, 0x56, 0x14, 0x7f, 0x62, 0x40, 0x6d, 0xac,
0x30, 0x45, 0xbb, 0xd7, 0x67, 0x83, 0x3a, 0x52, 0x0c, 0xd9, 0x70, 0x6b, 0xda, 0x26, 0x5b, 0xee,
0x69, 0x98, 0x8b, 0x58, 0x4f, 0x2b, 0x6e, 0xba, 0x6a, 0x60, 0x9d, 0x87, 0x4a, 0xc4, 0x7a, 0xf2,
0x8a, 0xa0, 0xbb, 0x74, 0x3e, 0x16, 0xb2, 0xe5, 0x27, 0x8a, 0x6e, 0x56, 0x23, 0xc3, 0x1b, 0xef,
0x42, 0x35, 0xff, 0x57, 0xcc, 0xaa, 0x83, 0xd9, 0x8a, 0x03, 0x2e, 0x6f, 0x02, 0x41, 0xdc, 0xab,
0xff, 0xcf, 0xaa, 0x41, 0xf9, 0x7d, 0x24, 0x21, 0xef, 0x0f, 0xeb, 0x86, 0x65, 0x42, 0xe5, 0x76,
0x27, 0x4e, 0x68, 0x44, 0xc2, 0x7a, 0x61, 0xfd, 0xc6, 0x47, 0x6f, 0xf7, 0x02, 0xde, 0x1f, 0x74,
0x04, 0xc3, 0xab, 0x0a, 0xf7, 0x9b, 0x41, 0xa2, 0xbf, 0x56, 0x33, 0xec, 0xab, 0x92, 0x8a, 0x7c,
0x98, 0x76, 0x3a, 0xf3, 0xd2, 0x72, 0xfd, 0xf7, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe6, 0xc6, 0xf9,
0xd2, 0x2d, 0x14, 0x00, 0x00,
// 1576 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x58, 0x4d, 0x6f, 0x1b, 0xc5,
0x1b, 0xff, 0xaf, 0xed, 0xc4, 0xf6, 0xe3, 0x4d, 0xea, 0x4e, 0xd3, 0x76, 0xd3, 0x97, 0x7f, 0xdd,
0xfd, 0xbf, 0x10, 0xa8, 0x48, 0xaa, 0x14, 0x28, 0xe2, 0xd2, 0x36, 0x71, 0x1b, 0xac, 0x36, 0x51,
0x58, 0xb7, 0x95, 0xe0, 0xb2, 0x1a, 0xef, 0x4e, 0xec, 0x6d, 0xf7, 0x8d, 0x99, 0x71, 0x13, 0xf7,
0xc4, 0x81, 0x1b, 0x82, 0x03, 0x12, 0x5f, 0x83, 0x8f, 0x00, 0xa8, 0x27, 0x24, 0xee, 0x48, 0x7c,
0x0d, 0x8e, 0x9c, 0xd0, 0xbc, 0xec, 0xda, 0x4e, 0x37, 0x21, 0x35, 0x42, 0x08, 0xc1, 0x6d, 0xe7,
0x79, 0x9e, 0x79, 0x66, 0x7e, 0xbf, 0xe7, 0x65, 0x66, 0x16, 0x16, 0x83, 0x98, 0x13, 0x1a, 0xe3,
0x70, 0x35, 0xa5, 0x09, 0x4f, 0xd0, 0xd9, 0x28, 0x08, 0x9f, 0x0d, 0x99, 0x1a, 0xad, 0x66, 0xca,
0x0b, 0xa6, 0x97, 0x44, 0x51, 0x12, 0x2b, 0xb1, 0xfd, 0x8d, 0x01, 0x0b, 0x9b, 0x49, 0x94, 0x26,
0x31, 0x89, 0x79, 0x27, 0xde, 0x4b, 0xd0, 0x39, 0x98, 0x8f, 0x13, 0x9f, 0x74, 0xda, 0x96, 0xd1,
0x32, 0x56, 0xca, 0x8e, 0x1e, 0x21, 0x04, 0x15, 0x9a, 0x84, 0xc4, 0x2a, 0xb5, 0x8c, 0x95, 0xba,
0x23, 0xbf, 0xd1, 0x2d, 0x00, 0xc6, 0x31, 0x27, 0xae, 0x97, 0xf8, 0xc4, 0x2a, 0xb7, 0x8c, 0x95,
0xc5, 0xf5, 0xd6, 0x6a, 0xe1, 0xba, 0xab, 0x5d, 0x61, 0xb8, 0x99, 0xf8, 0xc4, 0xa9, 0xb3, 0xec,
0x13, 0xdd, 0x06, 0x20, 0x07, 0x9c, 0x62, 0x37, 0x88, 0xf7, 0x12, 0xab, 0xd2, 0x2a, 0xaf, 0x34,
0xd6, 0xaf, 0x4e, 0x3b, 0xd0, 0xdb, 0xbd, 0x4f, 0x46, 0x8f, 0x71, 0x38, 0x24, 0xbb, 0x38, 0xa0,
0x4e, 0x5d, 0x4e, 0x12, 0xdb, 0xb5, 0x7f, 0x32, 0xe0, 0x54, 0x0e, 0x40, 0xae, 0xc1, 0xd0, 0x7b,
0x30, 0x27, 0x97, 0x90, 0x08, 0x1a, 0xeb, 0xff, 0x3d, 0x62, 0x47, 0x53, 0xb8, 0x1d, 0x35, 0x05,
0x3d, 0x82, 0x33, 0x6c, 0xd8, 0xf3, 0x32, 0x95, 0x2b, 0xa5, 0xcc, 0x2a, 0xc9, 0xad, 0x9d, 0xcc,
0x13, 0x9a, 0x74, 0xa0, 0xb7, 0x74, 0x03, 0xe6, 0x85, 0xa7, 0x21, 0x93, 0x2c, 0x35, 0xd6, 0x2f,
0x16, 0x82, 0xec, 0x4a, 0x13, 0x47, 0x9b, 0xda, 0x17, 0x61, 0x79, 0x8b, 0xf0, 0x43, 0xe8, 0x1c,
0xf2, 0xf1, 0x90, 0x30, 0xae, 0x95, 0x0f, 0x83, 0x88, 0x3c, 0x0c, 0xbc, 0xa7, 0x9b, 0x03, 0x1c,
0xc7, 0x24, 0xcc, 0x94, 0x97, 0xe1, 0xe2, 0x16, 0x91, 0x13, 0x02, 0xc6, 0x03, 0x8f, 0x1d, 0x52,
0x9f, 0x85, 0x33, 0x5b, 0x84, 0xb7, 0xfd, 0x43, 0xe2, 0xc7, 0x50, 0xdb, 0x11, 0xc1, 0x16, 0x69,
0xf0, 0x0e, 0x54, 0xb1, 0xef, 0x53, 0xc2, 0x98, 0x66, 0xf1, 0x52, 0xe1, 0x8e, 0xef, 0x28, 0x1b,
0x27, 0x33, 0x2e, 0x4a, 0x13, 0xfb, 0x09, 0x40, 0x27, 0x0e, 0xf8, 0x2e, 0xa6, 0x38, 0x62, 0x47,
0x26, 0x58, 0x1b, 0x4c, 0xc6, 0x31, 0xe5, 0x6e, 0x2a, 0xed, 0x34, 0xe5, 0x27, 0xc8, 0x86, 0x86,
0x9c, 0xa6, 0xbc, 0xdb, 0x1f, 0x02, 0x74, 0x39, 0x0d, 0xe2, 0xfe, 0x83, 0x80, 0x71, 0xb1, 0xd6,
0x33, 0x61, 0x27, 0x40, 0x94, 0x57, 0xea, 0x8e, 0x1e, 0x4d, 0x84, 0xa3, 0x74, 0xf2, 0x70, 0xdc,
0x82, 0x46, 0x46, 0xf7, 0x36, 0xeb, 0xa3, 0xeb, 0x50, 0xe9, 0x61, 0x46, 0x8e, 0xa5, 0x67, 0x9b,
0xf5, 0x37, 0x30, 0x23, 0x8e, 0xb4, 0xb4, 0x5f, 0x94, 0xe0, 0xfc, 0x26, 0x25, 0x32, 0xf9, 0xc3,
0x90, 0x78, 0x3c, 0x48, 0x62, 0xcd, 0xfd, 0xab, 0x7b, 0x43, 0xe7, 0xa1, 0xea, 0xf7, 0xdc, 0x18,
0x47, 0x19, 0xd9, 0xf3, 0x7e, 0x6f, 0x07, 0x47, 0x04, 0xfd, 0x1f, 0x16, 0xbd, 0xdc, 0xbf, 0x90,
0xc8, 0x9c, 0xab, 0x3b, 0x87, 0xa4, 0x22, 0x54, 0x7e, 0xaf, 0xd3, 0xb6, 0x2a, 0x32, 0x0c, 0xf2,
0x1b, 0xd9, 0x60, 0x8e, 0xad, 0x3a, 0x6d, 0x6b, 0x4e, 0xea, 0xa6, 0x64, 0x82, 0x54, 0xe6, 0x0d,
0x48, 0x84, 0xad, 0xf9, 0x96, 0xb1, 0x62, 0x3a, 0x7a, 0x84, 0xae, 0xc3, 0x99, 0x67, 0x01, 0xe5,
0x43, 0x1c, 0xea, 0xbc, 0x12, 0xab, 0x30, 0xab, 0x2a, 0x99, 0x2f, 0x52, 0xa1, 0x75, 0x58, 0x4a,
0x07, 0x23, 0x16, 0x78, 0x87, 0xa6, 0xd4, 0xe4, 0x94, 0x42, 0x9d, 0xfd, 0xc2, 0x80, 0xb3, 0x6d,
0x9a, 0xa4, 0x7f, 0x65, 0x0a, 0xed, 0xcf, 0x4b, 0x70, 0x4e, 0x65, 0xc2, 0x2e, 0xa6, 0x3c, 0xf8,
0x83, 0x50, 0xbc, 0x06, 0xa7, 0xc6, 0xab, 0x2a, 0x83, 0x62, 0x18, 0xff, 0x83, 0xc5, 0x34, 0xdb,
0x87, 0xb2, 0xab, 0x48, 0xbb, 0x85, 0x5c, 0x3a, 0x85, 0x76, 0xee, 0x18, 0xb4, 0xf3, 0x05, 0x09,
0xd3, 0x82, 0x46, 0xee, 0xa8, 0xd3, 0xb6, 0xaa, 0xd2, 0x64, 0x52, 0x64, 0x7f, 0x56, 0x82, 0x25,
0x11, 0xd4, 0x7f, 0xd8, 0x10, 0x6c, 0x7c, 0x5b, 0x02, 0xa4, 0xb2, 0xa3, 0x13, 0xfb, 0xe4, 0xe0,
0xcf, 0xe4, 0xe2, 0x32, 0xc0, 0x5e, 0x40, 0x42, 0x7f, 0x92, 0x87, 0xba, 0x94, 0xfc, 0x2e, 0x0e,
0x2c, 0xa8, 0x4a, 0x27, 0x39, 0xfe, 0x6c, 0x28, 0x4e, 0x01, 0x75, 0x23, 0xd0, 0xa7, 0x40, 0xed,
0xc4, 0xa7, 0x80, 0x9c, 0xa6, 0x4f, 0x81, 0xaf, 0xcb, 0xb0, 0xd0, 0x89, 0x19, 0xa1, 0xfc, 0xef,
0x9c, 0x48, 0xe8, 0x12, 0xd4, 0x19, 0xe9, 0x47, 0xe2, 0x62, 0xd2, 0xb6, 0x6a, 0x52, 0x3f, 0x16,
0x08, 0xad, 0xa7, 0x3a, 0x6b, 0xa7, 0x6d, 0xd5, 0x55, 0x68, 0x73, 0x01, 0xfa, 0x37, 0x00, 0x0f,
0x22, 0xc2, 0x38, 0x8e, 0x52, 0x66, 0x41, 0xab, 0xbc, 0x52, 0x71, 0x26, 0x24, 0xe2, 0x14, 0xa0,
0xc9, 0x7e, 0xa7, 0xcd, 0xac, 0x46, 0xab, 0x2c, 0x8e, 0x71, 0x35, 0x42, 0x6f, 0x41, 0x8d, 0x26,
0xfb, 0xae, 0x8f, 0x39, 0xb6, 0x4c, 0x19, 0xbc, 0xe5, 0x42, 0xb2, 0x37, 0xc2, 0xa4, 0xe7, 0x54,
0x69, 0xb2, 0xdf, 0xc6, 0x1c, 0xdb, 0x3f, 0x97, 0x60, 0xa1, 0x4b, 0x30, 0xf5, 0x06, 0xb3, 0x07,
0xec, 0x75, 0x68, 0x52, 0xc2, 0x86, 0x21, 0x77, 0xc7, 0xb0, 0x54, 0xe4, 0x4e, 0x29, 0xf9, 0x66,
0x0e, 0x2e, 0xa3, 0xbc, 0x7c, 0x0c, 0xe5, 0x95, 0x02, 0xca, 0x6d, 0x30, 0x27, 0xf8, 0x65, 0xd6,
0x9c, 0x84, 0x3e, 0x25, 0x43, 0x4d, 0x28, 0xfb, 0x2c, 0x94, 0x11, 0xab, 0x3b, 0xe2, 0x13, 0x5d,
0x83, 0xd3, 0x69, 0x88, 0x3d, 0x32, 0x48, 0x42, 0x9f, 0x50, 0xb7, 0x4f, 0x93, 0x61, 0x2a, 0xc3,
0x65, 0x3a, 0xcd, 0x09, 0xc5, 0x96, 0x90, 0xa3, 0x9b, 0x50, 0xf3, 0x59, 0xe8, 0xf2, 0x51, 0x4a,
0x64, 0xc8, 0x16, 0x8f, 0xc0, 0xde, 0x66, 0xe1, 0xc3, 0x51, 0x4a, 0x9c, 0xaa, 0xaf, 0x3e, 0xd0,
0x75, 0x58, 0x62, 0x84, 0x06, 0x38, 0x0c, 0x9e, 0x13, 0xdf, 0x25, 0x07, 0x29, 0x75, 0xd3, 0x10,
0xc7, 0x32, 0xb2, 0xa6, 0x83, 0xc6, 0xba, 0xbb, 0x07, 0x29, 0xdd, 0x0d, 0x71, 0x6c, 0xff, 0x68,
0x8c, 0x49, 0x17, 0xfc, 0xb0, 0x19, 0x48, 0x9f, 0xe5, 0x26, 0x55, 0x18, 0xa9, 0x72, 0x71, 0xa4,
0xae, 0x40, 0x23, 0x22, 0x9c, 0x06, 0x9e, 0x62, 0x44, 0x15, 0x10, 0x28, 0x91, 0x84, 0x8d, 0xa0,
0x32, 0x08, 0xb8, 0x0a, 0x85, 0xe9, 0xc8, 0x6f, 0xfb, 0x07, 0x03, 0x16, 0xda, 0x24, 0x24, 0x9c,
0xcc, 0x9e, 0x4d, 0x05, 0x55, 0x5e, 0x2a, 0xac, 0xf2, 0xa9, 0x32, 0x2a, 0x1f, 0x5f, 0x46, 0x95,
0x97, 0xca, 0xe8, 0x2a, 0x98, 0x29, 0x0d, 0x22, 0x4c, 0x47, 0xee, 0x53, 0x32, 0xca, 0x32, 0xaa,
0xa1, 0x65, 0xf7, 0xc9, 0x88, 0xd9, 0xbf, 0x18, 0x50, 0x7f, 0x90, 0x60, 0x5f, 0x1e, 0x06, 0x33,
0x20, 0x99, 0xea, 0x02, 0xa5, 0x82, 0x2e, 0x90, 0xf7, 0xf3, 0x6c, 0xfb, 0xe3, 0x06, 0x3f, 0xd1,
0xa8, 0x2b, 0xd3, 0x8d, 0xfa, 0x0a, 0x34, 0x02, 0xb1, 0x21, 0x37, 0xc5, 0x7c, 0xa0, 0xf6, 0x5d,
0x77, 0x40, 0x8a, 0x76, 0x85, 0x44, 0x74, 0xf2, 0xcc, 0x40, 0x76, 0xf2, 0xf9, 0x13, 0x77, 0x72,
0xed, 0x44, 0x76, 0xf2, 0xef, 0x4a, 0x60, 0x75, 0xd5, 0x66, 0xc7, 0xcf, 0x99, 0x47, 0xa9, 0x2f,
0x5f, 0x55, 0x97, 0xa0, 0xde, 0xcd, 0x91, 0xa9, 0xd7, 0xc4, 0x58, 0x20, 0xa8, 0xdf, 0x26, 0x51,
0x42, 0x47, 0xdd, 0xe0, 0x39, 0xd1, 0xc0, 0x27, 0x24, 0x02, 0xdb, 0xce, 0x30, 0x72, 0x92, 0x7d,
0xa6, 0xfb, 0x40, 0x36, 0x14, 0xd8, 0x3c, 0x79, 0xfe, 0xba, 0x22, 0x52, 0x12, 0x79, 0xc5, 0x01,
0x25, 0x12, 0x4f, 0x00, 0xb4, 0x0c, 0x35, 0x12, 0xfb, 0x4a, 0x3b, 0x27, 0xb5, 0x55, 0x12, 0xfb,
0x52, 0xd5, 0x81, 0x45, 0xfd, 0x8c, 0x49, 0x98, 0xec, 0x09, 0xb2, 0x13, 0x34, 0xd6, 0xed, 0x23,
0xde, 0x8e, 0xdb, 0xac, 0xbf, 0xab, 0x2d, 0x9d, 0x05, 0xf5, 0x92, 0xd1, 0x43, 0x74, 0x17, 0x4c,
0xb1, 0x4a, 0xee, 0xa8, 0x7a, 0x62, 0x47, 0x0d, 0x12, 0xfb, 0xd9, 0xc0, 0xfe, 0xd2, 0x80, 0xd3,
0x2f, 0x51, 0x38, 0x43, 0x1e, 0xdd, 0x87, 0x5a, 0x97, 0xf4, 0x85, 0x8b, 0xec, 0x71, 0xb6, 0x76,
0xd4, 0x5b, 0xff, 0x88, 0x80, 0x39, 0xb9, 0x03, 0xfb, 0x49, 0x1e, 0xd6, 0x7b, 0xe1, 0x90, 0x0d,
0xc4, 0x23, 0x57, 0xd4, 0xab, 0x3f, 0xd3, 0xcb, 0xea, 0xf8, 0x14, 0xb7, 0x3f, 0x35, 0xc4, 0x03,
0xd4, 0x27, 0x07, 0x72, 0xe9, 0x97, 0x12, 0xd3, 0x98, 0x25, 0x31, 0x45, 0xbb, 0x8d, 0x87, 0x91,
0x4b, 0x49, 0x88, 0x39, 0xf1, 0x5d, 0xbd, 0x1a, 0xd3, 0xab, 0xa3, 0x78, 0x18, 0x39, 0x4a, 0xa5,
0x61, 0x32, 0xfb, 0x0b, 0x03, 0xe0, 0x9e, 0xa8, 0x1e, 0xb5, 0x8d, 0xc3, 0xe7, 0x8d, 0x71, 0xfc,
0x3d, 0xa9, 0x34, 0x5d, 0x7e, 0x1b, 0x59, 0xf9, 0x31, 0x19, 0x8f, 0x72, 0x11, 0x86, 0x3c, 0x1e,
0x63, 0xf0, 0xba, 0x42, 0x55, 0x0c, 0xbe, 0x32, 0xc0, 0x9c, 0x08, 0x15, 0x9b, 0xa6, 0xd1, 0x38,
0xdc, 0x29, 0x64, 0x2b, 0x16, 0xd5, 0xe3, 0xb2, 0x89, 0x82, 0x8a, 0xc6, 0x05, 0xb5, 0x0c, 0x35,
0x49, 0xc9, 0x44, 0x45, 0xc5, 0xba, 0xa2, 0xae, 0xc1, 0x69, 0x4a, 0x3c, 0x12, 0xf3, 0x70, 0xe4,
0x46, 0x89, 0x1f, 0xec, 0x05, 0xc4, 0x97, 0x75, 0x55, 0x73, 0x9a, 0x99, 0x62, 0x5b, 0xcb, 0xed,
0xef, 0x0d, 0x58, 0xfc, 0x60, 0x48, 0xe8, 0x68, 0x27, 0xf1, 0x89, 0xda, 0xd9, 0xab, 0xa7, 0xc4,
0x6d, 0x89, 0x45, 0xd3, 0xa3, 0xd2, 0xf5, 0x3f, 0xbf, 0x9d, 0xae, 0xcc, 0xa9, 0x31, 0x9d, 0xa2,
0x82, 0x62, 0x75, 0xf7, 0x3d, 0x09, 0xc5, 0xe3, 0xc0, 0x3a, 0xea, 0xc6, 0xac, 0x28, 0xfe, 0xc4,
0x80, 0xc6, 0x44, 0x61, 0x8a, 0x76, 0xaf, 0xcf, 0x06, 0x75, 0xa4, 0x18, 0xb2, 0xe1, 0x36, 0xbc,
0xf1, 0x0b, 0x17, 0x2d, 0xc1, 0x5c, 0xc4, 0xfa, 0x3a, 0xe2, 0xa6, 0xa3, 0x06, 0xe8, 0x02, 0xd4,
0x22, 0xd6, 0x97, 0x57, 0x04, 0xdd, 0xa5, 0xf3, 0xb1, 0x08, 0x5b, 0x7e, 0xa2, 0xe8, 0x66, 0x35,
0x16, 0xbc, 0xf1, 0x2e, 0xd4, 0xf3, 0x7f, 0x6f, 0xa8, 0x09, 0x66, 0x27, 0x0e, 0xb8, 0xbc, 0x09,
0x04, 0x71, 0xbf, 0xf9, 0x2f, 0xd4, 0x80, 0xea, 0xfb, 0x04, 0x87, 0x7c, 0x30, 0x6a, 0x1a, 0xc8,
0x84, 0xda, 0x9d, 0x5e, 0x9c, 0xd0, 0x08, 0x87, 0xcd, 0xd2, 0xc6, 0xcd, 0x8f, 0xde, 0xee, 0x07,
0x7c, 0x30, 0xec, 0x09, 0x86, 0xd7, 0x14, 0xee, 0x37, 0x83, 0x44, 0x7f, 0xad, 0x65, 0xd8, 0xd7,
0x24, 0x15, 0xf9, 0x30, 0xed, 0xf5, 0xe6, 0xa5, 0xe4, 0xc6, 0xaf, 0x01, 0x00, 0x00, 0xff, 0xff,
0x06, 0xd4, 0x73, 0xc8, 0x93, 0x14, 0x00, 0x00,
}

View File

@ -47,6 +47,7 @@ message CreateCollectionRequest {
string collection_name = 3;
// `schema` is the serialized `schema.CollectionSchema`
bytes schema = 4;
int32 shards_num = 5;
}
message DropCollectionRequest {
@ -82,6 +83,8 @@ message DescribeCollectionResponse {
common.Status status = 1;
schema.CollectionSchema schema = 2;
int64 collectionID = 3;
repeated string virtual_channel_names = 4;
repeated string physical_channel_names = 5;
}
message LoadCollectionRequest {

View File

@ -60,6 +60,7 @@ type CreateCollectionRequest struct {
CollectionName string `protobuf:"bytes,3,opt,name=collection_name,json=collectionName,proto3" json:"collection_name,omitempty"`
// `schema` is the serialized `schema.CollectionSchema`
Schema []byte `protobuf:"bytes,4,opt,name=schema,proto3" json:"schema,omitempty"`
ShardsNum int32 `protobuf:"varint,5,opt,name=shards_num,json=shardsNum,proto3" json:"shards_num,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -118,6 +119,13 @@ func (m *CreateCollectionRequest) GetSchema() []byte {
return nil
}
func (m *CreateCollectionRequest) GetShardsNum() int32 {
if m != nil {
return m.ShardsNum
}
return 0
}
type DropCollectionRequest struct {
Base *commonpb.MsgBase `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"`
DbName string `protobuf:"bytes,2,opt,name=db_name,json=dbName,proto3" json:"db_name,omitempty"`
@ -389,6 +397,8 @@ type DescribeCollectionResponse struct {
Status *commonpb.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
Schema *schemapb.CollectionSchema `protobuf:"bytes,2,opt,name=schema,proto3" json:"schema,omitempty"`
CollectionID int64 `protobuf:"varint,3,opt,name=collectionID,proto3" json:"collectionID,omitempty"`
VirtualChannelNames []string `protobuf:"bytes,4,rep,name=virtual_channel_names,json=virtualChannelNames,proto3" json:"virtual_channel_names,omitempty"`
PhysicalChannelNames []string `protobuf:"bytes,5,rep,name=physical_channel_names,json=physicalChannelNames,proto3" json:"physical_channel_names,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -440,6 +450,20 @@ func (m *DescribeCollectionResponse) GetCollectionID() int64 {
return 0
}
func (m *DescribeCollectionResponse) GetVirtualChannelNames() []string {
if m != nil {
return m.VirtualChannelNames
}
return nil
}
func (m *DescribeCollectionResponse) GetPhysicalChannelNames() []string {
if m != nil {
return m.PhysicalChannelNames
}
return nil
}
type LoadCollectionRequest struct {
Base *commonpb.MsgBase `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"`
DbName string `protobuf:"bytes,2,opt,name=db_name,json=dbName,proto3" json:"db_name,omitempty"`
@ -3088,138 +3112,142 @@ func init() {
func init() { proto.RegisterFile("milvus.proto", fileDescriptor_02345ba45cc0e303) }
var fileDescriptor_02345ba45cc0e303 = []byte{
// 2084 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x5a, 0xdf, 0x6f, 0x1b, 0xc7,
0xf1, 0xf7, 0x92, 0x14, 0x45, 0x0d, 0x8f, 0x12, 0xbd, 0xfa, 0x61, 0xea, 0x6c, 0xc7, 0xd2, 0x7d,
0xbf, 0x6e, 0x64, 0x3b, 0xb1, 0x52, 0x29, 0x6e, 0x5a, 0x14, 0x2d, 0x5a, 0x45, 0xb5, 0x2c, 0x38,
0x09, 0x94, 0x93, 0x1b, 0x34, 0x0d, 0x0c, 0xe2, 0xc8, 0x5b, 0x8b, 0x07, 0x1f, 0xef, 0xd8, 0xdb,
0xa3, 0x65, 0xfa, 0xa9, 0x40, 0x8a, 0x02, 0xfd, 0xe5, 0x14, 0x68, 0x51, 0xa0, 0x7d, 0x2c, 0x90,
0xe7, 0xb6, 0x68, 0x80, 0x02, 0x7d, 0xee, 0x43, 0x81, 0xbe, 0xf4, 0x9f, 0xe8, 0x5b, 0xfb, 0x27,
0x14, 0x28, 0xf6, 0x07, 0x8f, 0x77, 0xc7, 0x3d, 0x8a, 0x32, 0xe3, 0x88, 0x7a, 0xbb, 0x9b, 0x9b,
0xdd, 0xfd, 0xcc, 0xec, 0xcc, 0xec, 0xec, 0xcc, 0x81, 0xd6, 0x76, 0xdc, 0x27, 0x5d, 0x7a, 0xbb,
0x13, 0xf8, 0xa1, 0x8f, 0x17, 0xe3, 0x6f, 0xb7, 0xc5, 0x8b, 0xae, 0x35, 0xfd, 0x76, 0xdb, 0xf7,
0x04, 0x51, 0xd7, 0x68, 0xb3, 0x45, 0xda, 0x96, 0x78, 0x33, 0x3e, 0x45, 0x70, 0xe9, 0xed, 0x80,
0x58, 0x21, 0x79, 0xdb, 0x77, 0x5d, 0xd2, 0x0c, 0x1d, 0xdf, 0x33, 0xc9, 0x0f, 0xba, 0x84, 0x86,
0xf8, 0x0d, 0x28, 0x34, 0x2c, 0x4a, 0x6a, 0x68, 0x0d, 0x6d, 0x94, 0xb7, 0xae, 0xdc, 0x4e, 0xcc,
0x2d, 0xe7, 0x7c, 0x97, 0x1e, 0xed, 0x58, 0x94, 0x98, 0x9c, 0x13, 0x5f, 0x82, 0x59, 0xbb, 0x51,
0xf7, 0xac, 0x36, 0xa9, 0xe5, 0xd6, 0xd0, 0xc6, 0x9c, 0x59, 0xb4, 0x1b, 0xef, 0x59, 0x6d, 0x82,
0x5f, 0x85, 0x85, 0x66, 0x34, 0xbf, 0x60, 0xc8, 0x73, 0x86, 0xf9, 0x01, 0x99, 0x33, 0xae, 0x40,
0x51, 0xe0, 0xab, 0x15, 0xd6, 0xd0, 0x86, 0x66, 0xca, 0x37, 0xe3, 0x67, 0x08, 0x96, 0x77, 0x03,
0xbf, 0x33, 0x15, 0x28, 0x8d, 0x9f, 0x22, 0x58, 0xba, 0x67, 0xd1, 0xe9, 0x00, 0xf3, 0x21, 0x68,
0x3b, 0xbe, 0xef, 0x9a, 0x84, 0x76, 0x7c, 0x8f, 0x12, 0xbc, 0x0d, 0x45, 0x1a, 0x5a, 0x61, 0x97,
0x4a, 0x14, 0x97, 0x95, 0x28, 0x0e, 0x39, 0x8b, 0x29, 0x59, 0xf1, 0x12, 0xcc, 0x3c, 0xb1, 0xdc,
0xae, 0x00, 0x51, 0x32, 0xc5, 0x8b, 0xf1, 0x11, 0xcc, 0x1f, 0x86, 0x81, 0xe3, 0x1d, 0x7d, 0x8e,
0x93, 0xcf, 0xf5, 0x27, 0xff, 0x33, 0x82, 0xd5, 0x5d, 0x42, 0x9b, 0x81, 0xd3, 0x98, 0x12, 0xe3,
0x33, 0x40, 0x1b, 0x50, 0xf6, 0x77, 0xb9, 0x09, 0xe6, 0xcd, 0x04, 0xcd, 0xf8, 0x0c, 0x81, 0xae,
0x42, 0x3d, 0x89, 0x7e, 0xbe, 0x11, 0x19, 0x7d, 0x8e, 0x0f, 0xba, 0x9e, 0x1c, 0x24, 0x1d, 0x76,
0xb0, 0xda, 0x21, 0x27, 0xf4, 0x7d, 0x63, 0x08, 0x76, 0x5e, 0x01, 0x9b, 0xf9, 0xcf, 0x3b, 0xbe,
0x65, 0x4f, 0x87, 0xc9, 0x3e, 0x47, 0x50, 0x33, 0x89, 0x4b, 0x2c, 0x3a, 0x1d, 0x3b, 0x6f, 0xfc,
0x1a, 0xc1, 0x2b, 0x7b, 0x24, 0x8c, 0xa9, 0x38, 0xb4, 0x42, 0x87, 0x86, 0x4e, 0x93, 0x9e, 0x25,
0xac, 0x4f, 0x10, 0x5c, 0xcb, 0x84, 0x35, 0x89, 0xc5, 0xbd, 0x05, 0x33, 0xec, 0x89, 0xd6, 0x72,
0x6b, 0xf9, 0x8d, 0xf2, 0xd6, 0xba, 0x72, 0xcc, 0x7d, 0xd2, 0xfb, 0x80, 0x79, 0xea, 0x81, 0xe5,
0x04, 0xa6, 0xe0, 0x37, 0x9a, 0xb0, 0x72, 0xd8, 0xf2, 0x8f, 0x07, 0x88, 0x5e, 0x82, 0x7e, 0x8c,
0x1e, 0x5c, 0x1a, 0x5a, 0x64, 0x12, 0x69, 0x6f, 0x40, 0x35, 0xa5, 0x6f, 0x21, 0xf8, 0x9c, 0xb9,
0x90, 0x54, 0x38, 0x65, 0x41, 0x69, 0x45, 0x9c, 0x87, 0x07, 0x56, 0x10, 0x3a, 0x67, 0x1d, 0x91,
0xae, 0xc3, 0x7c, 0xa7, 0x8f, 0x43, 0xf0, 0x15, 0x38, 0x5f, 0x25, 0xa2, 0x72, 0x85, 0xfd, 0x09,
0xc1, 0x12, 0x3b, 0x1d, 0xcf, 0x13, 0xe6, 0x3f, 0x22, 0x58, 0xbc, 0x67, 0xd1, 0xf3, 0x04, 0xf9,
0x33, 0x19, 0x44, 0x23, 0xcc, 0x67, 0x19, 0x1c, 0x18, 0x63, 0x12, 0x34, 0xad, 0x15, 0xb8, 0x51,
0xcf, 0x27, 0x50, 0x53, 0xe3, 0x2f, 0x83, 0x68, 0x7b, 0xce, 0x90, 0xff, 0x15, 0xc1, 0xd5, 0x3d,
0x12, 0x46, 0xa8, 0xa7, 0x22, 0x2a, 0x8f, 0x6b, 0x2d, 0xcf, 0xc5, 0x99, 0xa2, 0x04, 0x7f, 0x26,
0xb1, 0xfb, 0x0f, 0x08, 0x96, 0x59, 0x5c, 0x9d, 0x0e, 0x23, 0x18, 0x27, 0xd9, 0xfa, 0x1d, 0x12,
0xc7, 0x4d, 0x1c, 0xf1, 0x24, 0xaa, 0x53, 0x18, 0x5e, 0x4e, 0x65, 0x78, 0x0c, 0x5c, 0x44, 0xd9,
0xdf, 0xa5, 0xb5, 0xfc, 0x5a, 0x9e, 0x81, 0x8b, 0xd3, 0x8c, 0x9f, 0x23, 0x58, 0xe9, 0x67, 0x82,
0x87, 0xe4, 0xa8, 0x4d, 0xbc, 0xf0, 0xc5, 0xf5, 0x99, 0xd6, 0x46, 0x6e, 0x58, 0x1b, 0xf8, 0x0a,
0xcc, 0x51, 0xb1, 0x4e, 0x94, 0xe4, 0x0d, 0x08, 0xfc, 0x26, 0x37, 0x04, 0x67, 0x12, 0x65, 0xd5,
0x60, 0xd6, 0xf1, 0x6c, 0xf2, 0x34, 0x42, 0xd3, 0x7f, 0x65, 0x5f, 0x1a, 0x5d, 0xc7, 0xb5, 0x23,
0x18, 0xfd, 0x57, 0xbc, 0x0e, 0x1a, 0xf1, 0xac, 0x86, 0x4b, 0xea, 0x9c, 0x97, 0x6f, 0x6a, 0xc9,
0x2c, 0x0b, 0xda, 0x3e, 0x23, 0x19, 0xbf, 0x40, 0xb0, 0xc8, 0xf6, 0x54, 0x62, 0xa4, 0x2f, 0x57,
0x67, 0x6b, 0x50, 0x8e, 0x6d, 0x9a, 0x84, 0x1b, 0x27, 0x19, 0x8f, 0x61, 0x29, 0x09, 0x67, 0x12,
0x9d, 0xbd, 0x02, 0x10, 0xed, 0x88, 0xb0, 0xad, 0xbc, 0x19, 0xa3, 0x18, 0xff, 0x41, 0x80, 0x45,
0x7a, 0xc1, 0x95, 0x71, 0x96, 0xfe, 0x77, 0x15, 0xe0, 0x91, 0x43, 0x5c, 0x3b, 0x1e, 0xc1, 0xe6,
0x38, 0x85, 0x7f, 0xde, 0x05, 0x8d, 0x3c, 0x0d, 0x03, 0xab, 0xde, 0xb1, 0x02, 0xab, 0x4d, 0x6b,
0x33, 0xe3, 0x06, 0x9b, 0x32, 0x1f, 0x76, 0xc0, 0x47, 0x19, 0x7f, 0x67, 0x89, 0x89, 0x34, 0xca,
0x69, 0x97, 0xf8, 0x2a, 0x00, 0x37, 0x5a, 0xf1, 0x79, 0x46, 0x7c, 0xe6, 0x14, 0x1e, 0xce, 0x3f,
0x45, 0x50, 0xe5, 0x22, 0x08, 0x79, 0x3a, 0x6c, 0xda, 0xd4, 0x18, 0x94, 0x1a, 0x33, 0xc2, 0x85,
0xbe, 0x06, 0x45, 0xa9, 0xd8, 0xfc, 0xb8, 0x8a, 0x95, 0x03, 0x4e, 0x10, 0xc3, 0xf8, 0x3d, 0x82,
0xe5, 0x94, 0xca, 0x27, 0xb1, 0xe8, 0x07, 0x80, 0x85, 0x84, 0xf6, 0x40, 0xec, 0xfe, 0xd1, 0x93,
0xba, 0xa7, 0xca, 0x97, 0xb4, 0x92, 0xcc, 0x8b, 0x4e, 0x8a, 0x42, 0x8d, 0x7f, 0x22, 0xb8, 0xb2,
0x47, 0x42, 0xce, 0xba, 0xc3, 0x62, 0xc7, 0x41, 0xe0, 0x1f, 0x05, 0x84, 0xd2, 0xf3, 0x6b, 0x1f,
0xbf, 0x11, 0xb9, 0x8a, 0x4a, 0xa4, 0x49, 0xf4, 0xbf, 0x0e, 0x1a, 0x5f, 0x83, 0xd8, 0xf5, 0xc0,
0x3f, 0xa6, 0xd2, 0x8e, 0xca, 0x92, 0x66, 0xfa, 0xc7, 0xdc, 0x20, 0x42, 0x3f, 0xb4, 0x5c, 0xc1,
0x20, 0x0f, 0x06, 0x4e, 0x61, 0x9f, 0xb9, 0x0f, 0xf6, 0x81, 0xb1, 0xc9, 0xc9, 0xf9, 0xd5, 0xf1,
0xc7, 0x08, 0x96, 0x53, 0xa2, 0x4c, 0xa2, 0xdb, 0x3b, 0x22, 0x93, 0x12, 0xc2, 0xcc, 0x6f, 0x5d,
0x53, 0x8e, 0x89, 0x2d, 0x26, 0xb8, 0x8d, 0xbf, 0x21, 0xa8, 0xb2, 0xdb, 0xd6, 0x39, 0x0f, 0x68,
0xff, 0x45, 0x50, 0xd9, 0xf7, 0x28, 0x09, 0xc2, 0xe9, 0x4f, 0xa6, 0xf1, 0x9b, 0x50, 0x0a, 0xfc,
0xe3, 0xba, 0x6d, 0x85, 0x96, 0x3c, 0x8a, 0x56, 0x95, 0xf0, 0x76, 0x5c, 0xbf, 0x61, 0xce, 0x06,
0xfe, 0xf1, 0xae, 0x15, 0x5a, 0xf8, 0x32, 0xcc, 0xb5, 0x2c, 0xda, 0xaa, 0x3f, 0x26, 0x3d, 0x5a,
0x2b, 0xae, 0xe5, 0x37, 0x2a, 0x66, 0x89, 0x11, 0xee, 0x93, 0x1e, 0x65, 0xc6, 0x34, 0xdf, 0x97,
0x7f, 0x12, 0x2b, 0xba, 0x06, 0xe5, 0xc0, 0x3f, 0xde, 0xdf, 0xad, 0x37, 0xc8, 0x91, 0xe3, 0x49,
0x07, 0x05, 0x4e, 0xda, 0x61, 0x14, 0x86, 0x42, 0x30, 0x10, 0xcf, 0x96, 0xee, 0x59, 0xe2, 0x84,
0xef, 0x78, 0xb6, 0xf1, 0x04, 0xaa, 0x07, 0xae, 0xd5, 0x24, 0x2d, 0xdf, 0xb5, 0x49, 0xc0, 0xa3,
0x3d, 0xae, 0x42, 0x3e, 0xb4, 0x8e, 0xe4, 0x71, 0xc2, 0x1e, 0xf1, 0x57, 0xa1, 0x10, 0xf6, 0x3a,
0x7d, 0x43, 0xfd, 0x7f, 0x65, 0xdc, 0x8d, 0x4d, 0xf3, 0xa0, 0xd7, 0x21, 0x26, 0x1f, 0x81, 0x57,
0xa0, 0xc8, 0xcb, 0xad, 0xe2, 0xa0, 0xd1, 0x4c, 0xf9, 0x66, 0x3c, 0x4c, 0xac, 0xbb, 0x17, 0xf8,
0xdd, 0x0e, 0xde, 0x07, 0xad, 0x33, 0xa0, 0x31, 0x25, 0x64, 0x47, 0xf9, 0x34, 0x68, 0x33, 0x31,
0xd4, 0xf8, 0x77, 0x0e, 0x2a, 0x87, 0xc4, 0x0a, 0x9a, 0xad, 0xf3, 0x70, 0xd1, 0x64, 0x1a, 0xb7,
0xa9, 0x2b, 0x7d, 0x84, 0x3d, 0xe2, 0x5b, 0x70, 0x31, 0x26, 0x50, 0xfd, 0x88, 0x29, 0xa8, 0x56,
0xe4, 0x3d, 0x89, 0x6a, 0x27, 0xad, 0xb8, 0xb7, 0xa0, 0x64, 0x53, 0xb7, 0xce, 0xb7, 0x68, 0x96,
0x6f, 0x91, 0x5a, 0xbe, 0x5d, 0xea, 0xf2, 0xad, 0x99, 0xb5, 0xc5, 0x03, 0xbe, 0x0b, 0x15, 0xca,
0xb5, 0xd4, 0x4f, 0xb3, 0x4a, 0xe3, 0x66, 0x03, 0x9a, 0x18, 0x27, 0xf3, 0xac, 0xfb, 0x50, 0xb8,
0xe7, 0x84, 0x5c, 0x0e, 0x96, 0x78, 0x22, 0x9e, 0x78, 0xb2, 0x47, 0xbc, 0x1a, 0x73, 0x9c, 0x1c,
0xb7, 0x80, 0xc8, 0x3b, 0x78, 0xaf, 0xc5, 0x0f, 0xa4, 0x69, 0xe4, 0x4c, 0xf9, 0x66, 0x7c, 0x6f,
0xb0, 0x75, 0xb4, 0xeb, 0x86, 0xf4, 0xc5, 0xdc, 0x02, 0x43, 0xa1, 0xe5, 0xc8, 0x5b, 0xaa, 0x66,
0xf2, 0x67, 0xe3, 0x47, 0x08, 0xb4, 0xbb, 0x6e, 0x97, 0xbe, 0x0c, 0xa3, 0x50, 0x15, 0xf9, 0xf2,
0xea, 0x22, 0xdf, 0x3f, 0x72, 0xb0, 0x7c, 0x40, 0x02, 0xea, 0xd0, 0x90, 0x78, 0xa1, 0xcc, 0xfc,
0xf7, 0xbd, 0x47, 0x7e, 0xf2, 0x8a, 0x85, 0x52, 0x57, 0xac, 0xcf, 0xe7, 0xc2, 0xc1, 0xc2, 0x81,
0xdf, 0x21, 0x5e, 0x3d, 0x74, 0x64, 0xb0, 0x2b, 0x98, 0x25, 0x46, 0x78, 0xe0, 0xb4, 0x09, 0x0b,
0x26, 0x94, 0x58, 0x2e, 0xb1, 0xc5, 0xe7, 0x19, 0xfe, 0x19, 0x04, 0x89, 0x33, 0xac, 0x83, 0xf6,
0x88, 0x69, 0xb0, 0xcf, 0x51, 0xe4, 0x1c, 0x65, 0x49, 0xe3, 0x2c, 0xab, 0x50, 0xf2, 0xba, 0x6d,
0x91, 0x0d, 0xcc, 0x8a, 0xb4, 0xd3, 0xeb, 0xb6, 0x79, 0xaa, 0xb0, 0x0a, 0xa5, 0x36, 0x69, 0xd7,
0xa9, 0xf3, 0x8c, 0xd4, 0x4a, 0xe2, 0x53, 0x9b, 0xb4, 0x0f, 0x9d, 0x67, 0xa4, 0x5f, 0x56, 0x20,
0xb5, 0x39, 0x6e, 0xc0, 0x6a, 0x13, 0x94, 0xba, 0x4a, 0x1c, 0x87, 0xbf, 0x12, 0x45, 0x6a, 0xa5,
0x42, 0x5f, 0x7c, 0x9f, 0x57, 0x40, 0x6e, 0x6c, 0x6a, 0x9b, 0xbf, 0x04, 0x29, 0x27, 0xcf, 0x28,
0x9d, 0xff, 0x16, 0xc1, 0x5a, 0x36, 0xaa, 0x49, 0xe2, 0xfd, 0xb7, 0x60, 0xc6, 0xf1, 0x1e, 0xf9,
0xfd, 0x24, 0xf8, 0xa6, 0x3a, 0x3c, 0x2a, 0xd7, 0x15, 0x03, 0x8d, 0x7f, 0x21, 0xa8, 0xbe, 0xdf,
0x25, 0x41, 0xef, 0x8b, 0x36, 0xbd, 0xf8, 0xf6, 0x17, 0x92, 0xdb, 0x1f, 0x37, 0x9a, 0x99, 0xa4,
0xd1, 0x24, 0xf3, 0x88, 0xe2, 0x88, 0x4b, 0xce, 0x6c, 0xe2, 0x92, 0x63, 0x3c, 0x47, 0xa0, 0xef,
0x91, 0x30, 0x2d, 0xea, 0xd9, 0x19, 0xc5, 0x27, 0x08, 0x2e, 0x2b, 0x01, 0x4d, 0x62, 0x0f, 0x5f,
0x4f, 0xda, 0x83, 0xfa, 0xb8, 0x1c, 0x5a, 0x52, 0x9a, 0xc2, 0x32, 0x2c, 0x9a, 0xe4, 0x88, 0x59,
0x4a, 0xf0, 0x8e, 0xe3, 0x3d, 0x96, 0xaa, 0x61, 0xb9, 0xc9, 0x52, 0x92, 0x2e, 0x11, 0x7e, 0x05,
0x66, 0x2d, 0xdb, 0x66, 0xd7, 0x8a, 0x91, 0x6a, 0xfb, 0xb6, 0xe0, 0x31, 0xfb, 0xcc, 0x31, 0xc9,
0x72, 0x63, 0x4b, 0x76, 0xf3, 0x9b, 0xb0, 0x90, 0x4a, 0x2a, 0x70, 0x09, 0x0a, 0xef, 0xf9, 0x1e,
0xa9, 0x5e, 0xc0, 0x55, 0xd0, 0x76, 0x1c, 0xcf, 0x0a, 0x7a, 0x1f, 0x90, 0x66, 0xe8, 0x07, 0x55,
0x1b, 0x2f, 0x40, 0xf9, 0xae, 0xeb, 0x5b, 0xa1, 0x24, 0x90, 0xad, 0x5f, 0x2e, 0x43, 0xe5, 0x5d,
0xbe, 0xcc, 0x21, 0x09, 0x9e, 0x38, 0x4d, 0x82, 0xeb, 0x50, 0x4d, 0xff, 0x6d, 0x80, 0x5f, 0x53,
0x2a, 0x2c, 0xe3, 0xa7, 0x04, 0x7d, 0x14, 0x70, 0xe3, 0x02, 0xfe, 0x08, 0xe6, 0x93, 0xbf, 0x09,
0x60, 0xb5, 0x7f, 0x2a, 0xff, 0x25, 0x38, 0x69, 0xf2, 0x3a, 0x54, 0x12, 0x5d, 0x7f, 0x7c, 0x43,
0x39, 0xb7, 0xea, 0xcf, 0x00, 0x7d, 0x5d, 0xc9, 0x1a, 0x6f, 0xdc, 0x0b, 0xf4, 0xc9, 0x26, 0x6d,
0x06, 0x7a, 0x65, 0x27, 0xf7, 0x24, 0xf4, 0x16, 0x5c, 0x1c, 0xea, 0xb9, 0xe2, 0xd7, 0x95, 0xf3,
0x67, 0xf5, 0x66, 0x4f, 0x5a, 0xe2, 0x18, 0xf0, 0x70, 0x6f, 0x1c, 0xdf, 0x56, 0xef, 0x40, 0x56,
0xeb, 0x5f, 0xdf, 0x1c, 0x9b, 0x3f, 0x52, 0xdc, 0x8f, 0x11, 0x5c, 0xca, 0x68, 0x94, 0xe2, 0x6d,
0xe5, 0x74, 0xa3, 0xbb, 0xbd, 0xfa, 0x9b, 0xa7, 0x1b, 0x14, 0x01, 0xf1, 0x60, 0x21, 0xd5, 0xba,
0xc4, 0xb7, 0x94, 0x53, 0xa9, 0xbb, 0xa8, 0xfa, 0x6b, 0xe3, 0x31, 0x47, 0xeb, 0x3d, 0x84, 0x85,
0x54, 0xbb, 0x32, 0x63, 0x3d, 0x75, 0x53, 0xf3, 0xa4, 0x0d, 0xfd, 0x10, 0x2a, 0x89, 0xbe, 0x62,
0x86, 0xc5, 0xab, 0x7a, 0x8f, 0x27, 0x4d, 0xfd, 0x10, 0xb4, 0x78, 0xfb, 0x0f, 0x6f, 0x64, 0xf9,
0xd2, 0xd0, 0xc4, 0xa7, 0x71, 0xa5, 0x41, 0xe7, 0x60, 0x84, 0x2b, 0x0d, 0x35, 0x44, 0xc6, 0x77,
0xa5, 0xd8, 0xfc, 0x23, 0x5d, 0xe9, 0xd4, 0x4b, 0x7c, 0x8c, 0x60, 0x45, 0xdd, 0x3d, 0xc2, 0x5b,
0x59, 0xb6, 0x99, 0xdd, 0x27, 0xd3, 0xb7, 0x4f, 0x35, 0x26, 0xd2, 0xe2, 0x63, 0x98, 0x4f, 0xf6,
0x5f, 0x32, 0xb4, 0xa8, 0x6c, 0x2b, 0xe9, 0xb7, 0xc6, 0xe2, 0x8d, 0x16, 0xfb, 0x2e, 0x94, 0x63,
0xb5, 0x71, 0xfc, 0xea, 0x08, 0x3b, 0x8e, 0x97, 0x5e, 0x4e, 0xd2, 0x64, 0x0b, 0x2a, 0x89, 0x7a,
0x68, 0x96, 0x0d, 0x2b, 0xca, 0xd4, 0xfa, 0xcd, 0x71, 0x58, 0x23, 0x01, 0x5a, 0x50, 0x49, 0x54,
0xa7, 0x32, 0x56, 0x52, 0x15, 0xe3, 0x32, 0x56, 0x52, 0x16, 0xbb, 0x8c, 0x0b, 0xf8, 0x87, 0xb1,
0x42, 0x58, 0xa2, 0xd8, 0x88, 0xbf, 0x3c, 0x72, 0x1e, 0x55, 0xad, 0x55, 0xdf, 0x3a, 0xcd, 0x90,
0x08, 0xc2, 0xfb, 0x30, 0x17, 0x15, 0xc1, 0xf0, 0xf5, 0xcc, 0xb0, 0x70, 0x9a, 0x9d, 0x3a, 0x84,
0xa2, 0x28, 0xc8, 0x60, 0x23, 0xa3, 0xb2, 0x1c, 0xab, 0x56, 0xe9, 0xff, 0x37, 0x92, 0x27, 0xc2,
0x69, 0x42, 0x51, 0xdc, 0x66, 0x33, 0x26, 0x4d, 0x54, 0x29, 0xf4, 0xd1, 0x3c, 0xfc, 0x3a, 0x6c,
0x5c, 0xc0, 0xfb, 0x30, 0xc3, 0xaf, 0xb1, 0x58, 0x1d, 0x8a, 0xe2, 0x57, 0xdc, 0x93, 0x64, 0xfe,
0x09, 0x82, 0x5a, 0xd6, 0x3d, 0x05, 0x67, 0x9e, 0x42, 0xa3, 0x2e, 0x5b, 0xfa, 0x9d, 0x53, 0x8e,
0x8a, 0x54, 0xf5, 0x0c, 0x16, 0x15, 0xd9, 0x31, 0xde, 0xcc, 0x9a, 0x2f, 0x23, 0xb1, 0xd7, 0xdf,
0x18, 0x7f, 0x40, 0xb4, 0x36, 0x01, 0x2d, 0x9e, 0xf0, 0x66, 0x1c, 0x07, 0x8a, 0x5c, 0x59, 0xbf,
0x31, 0x06, 0x67, 0x7f, 0x99, 0xad, 0x2e, 0x68, 0x07, 0x81, 0xff, 0xb4, 0xd7, 0x4f, 0x48, 0xbf,
0x98, 0x65, 0x77, 0xee, 0x7c, 0x7f, 0xfb, 0xc8, 0x09, 0x5b, 0xdd, 0x06, 0xdb, 0xff, 0x4d, 0xc1,
0xfb, 0xba, 0xe3, 0xcb, 0xa7, 0x4d, 0xc7, 0x0b, 0x49, 0xe0, 0x59, 0xee, 0x26, 0x9f, 0x4b, 0x52,
0x3b, 0x8d, 0x46, 0x91, 0xbf, 0x6f, 0xff, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x24, 0x9e, 0xb3, 0x1f,
0xe5, 0x2b, 0x00, 0x00,
// 2157 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x5a, 0xdd, 0x6f, 0x1c, 0x49,
0x11, 0x4f, 0xef, 0x97, 0x77, 0x6b, 0x67, 0xed, 0x4d, 0xfb, 0x23, 0x9b, 0x4d, 0x72, 0x59, 0x0f,
0x84, 0x73, 0x92, 0xbb, 0xf8, 0xb0, 0x13, 0x0e, 0x84, 0x40, 0xe0, 0x98, 0x38, 0x56, 0xee, 0x22,
0xdf, 0x38, 0x9c, 0x38, 0x4e, 0xd1, 0x6a, 0x76, 0xa7, 0xe3, 0x1d, 0x65, 0x76, 0x66, 0x99, 0x9e,
0xb5, 0xb3, 0x79, 0x42, 0x3a, 0x84, 0xc4, 0x57, 0x0e, 0x09, 0x84, 0x04, 0x0f, 0x3c, 0x20, 0xdd,
0x33, 0x20, 0x90, 0x90, 0x78, 0xbe, 0x07, 0x24, 0x5e, 0xf8, 0x27, 0x78, 0x83, 0x3f, 0x01, 0x09,
0xf5, 0xc7, 0xce, 0xce, 0x8c, 0x7b, 0xd6, 0xeb, 0xec, 0xe5, 0x6c, 0xbf, 0x4d, 0x57, 0x57, 0x77,
0xff, 0xba, 0xba, 0xaa, 0xba, 0xba, 0x6a, 0x40, 0xeb, 0xda, 0xce, 0x7e, 0x9f, 0xde, 0xea, 0xf9,
0x5e, 0xe0, 0xe1, 0xf9, 0x68, 0xeb, 0x96, 0x68, 0xd4, 0xb5, 0xb6, 0xd7, 0xed, 0x7a, 0xae, 0x20,
0xd6, 0x35, 0xda, 0xee, 0x90, 0xae, 0x29, 0x5a, 0xfa, 0xa7, 0x08, 0x2e, 0xdc, 0xf5, 0x89, 0x19,
0x90, 0xbb, 0x9e, 0xe3, 0x90, 0x76, 0x60, 0x7b, 0xae, 0x41, 0x7e, 0xd0, 0x27, 0x34, 0xc0, 0x6f,
0x41, 0xae, 0x65, 0x52, 0x52, 0x43, 0x0d, 0xb4, 0x52, 0x5e, 0xbb, 0x7c, 0x2b, 0x36, 0xb7, 0x9c,
0xf3, 0x5d, 0xba, 0xb7, 0x61, 0x52, 0x62, 0x70, 0x4e, 0x7c, 0x01, 0x66, 0xac, 0x56, 0xd3, 0x35,
0xbb, 0xa4, 0x96, 0x69, 0xa0, 0x95, 0x92, 0x51, 0xb0, 0x5a, 0x0f, 0xcd, 0x2e, 0xc1, 0xaf, 0xc3,
0x5c, 0x3b, 0x9c, 0x5f, 0x30, 0x64, 0x39, 0xc3, 0xec, 0x88, 0xcc, 0x19, 0x97, 0xa0, 0x20, 0xf0,
0xd5, 0x72, 0x0d, 0xb4, 0xa2, 0x19, 0xb2, 0x85, 0xaf, 0x00, 0xd0, 0x8e, 0xe9, 0x5b, 0xb4, 0xe9,
0xf6, 0xbb, 0xb5, 0x7c, 0x03, 0xad, 0xe4, 0x8d, 0x92, 0xa0, 0x3c, 0xec, 0x77, 0xf5, 0x9f, 0x21,
0x58, 0xdc, 0xf4, 0xbd, 0xde, 0xa9, 0xd8, 0x84, 0xfe, 0x53, 0x04, 0x0b, 0xf7, 0x4d, 0x7a, 0x3a,
0xc0, 0x7c, 0x00, 0xda, 0x86, 0xe7, 0x39, 0x06, 0xa1, 0x3d, 0xcf, 0xa5, 0x04, 0xaf, 0x43, 0x81,
0x06, 0x66, 0xd0, 0xa7, 0x12, 0xc5, 0x25, 0x25, 0x8a, 0x5d, 0xce, 0x62, 0x48, 0x56, 0xbc, 0x00,
0xf9, 0x7d, 0xd3, 0xe9, 0x0b, 0x10, 0x45, 0x43, 0x34, 0xf4, 0x0f, 0x61, 0x76, 0x37, 0xf0, 0x6d,
0x77, 0xef, 0x33, 0x9c, 0xbc, 0x34, 0x9c, 0xfc, 0x2f, 0x08, 0x2e, 0x6e, 0x12, 0xda, 0xf6, 0xed,
0xd6, 0x29, 0xd1, 0x4d, 0x1d, 0xb4, 0x11, 0x65, 0x7b, 0x93, 0x6b, 0x68, 0xd6, 0x88, 0xd1, 0xf4,
0xdf, 0x67, 0xa0, 0xae, 0x42, 0x3d, 0x8d, 0x7c, 0xbe, 0x11, 0xda, 0x44, 0x86, 0x0f, 0xba, 0x16,
0x1f, 0x24, 0xed, 0x79, 0xb4, 0xda, 0x2e, 0x27, 0x84, 0xa6, 0x93, 0x84, 0x9d, 0x3d, 0x0c, 0x1b,
0xaf, 0xc1, 0xe2, 0xbe, 0xed, 0x07, 0x7d, 0xd3, 0x69, 0xb6, 0x3b, 0xa6, 0xeb, 0x12, 0x87, 0x0b,
0x82, 0xd6, 0x72, 0x8d, 0xec, 0x4a, 0xc9, 0x98, 0x97, 0x9d, 0x77, 0x45, 0x1f, 0x93, 0x06, 0xc5,
0xb7, 0x61, 0xa9, 0xd7, 0x19, 0x50, 0xbb, 0x7d, 0x68, 0x50, 0x9e, 0x0f, 0x5a, 0x18, 0xf6, 0x46,
0x47, 0x71, 0x4b, 0x7d, 0xc7, 0x33, 0xad, 0xd3, 0x61, 0x1c, 0x2f, 0x10, 0xd4, 0x0c, 0xe2, 0x10,
0x93, 0x9e, 0x0e, 0x1d, 0xd3, 0x7f, 0x8d, 0xe0, 0xb5, 0x2d, 0x12, 0x44, 0x0e, 0x33, 0x30, 0x03,
0x9b, 0x06, 0x76, 0x9b, 0x9e, 0x24, 0xac, 0x8f, 0x11, 0x5c, 0x4d, 0x85, 0x35, 0x8d, 0x6e, 0xbf,
0x0d, 0x79, 0xf6, 0x45, 0x6b, 0x99, 0x46, 0x76, 0xa5, 0xbc, 0xb6, 0xac, 0x1c, 0xf3, 0x80, 0x0c,
0xde, 0x67, 0x3e, 0x61, 0xc7, 0xb4, 0x7d, 0x43, 0xf0, 0xeb, 0x6d, 0x58, 0xda, 0xed, 0x78, 0x07,
0x23, 0x44, 0xaf, 0x40, 0x3e, 0xfa, 0x00, 0x2e, 0x1c, 0x5a, 0x64, 0x9a, 0xdd, 0x5e, 0x87, 0x6a,
0x42, 0xde, 0x62, 0xe3, 0x25, 0x63, 0x2e, 0x2e, 0x70, 0xca, 0xdc, 0xdf, 0x92, 0xb8, 0x98, 0x77,
0x4c, 0x3f, 0xb0, 0x4f, 0xda, 0xf7, 0x5d, 0x83, 0xd9, 0xde, 0x10, 0x87, 0xe0, 0xcb, 0x71, 0xbe,
0x4a, 0x48, 0xe5, 0x02, 0xfb, 0x33, 0x82, 0x05, 0x76, 0x0f, 0x9f, 0x25, 0xcc, 0x7f, 0x42, 0x30,
0x7f, 0xdf, 0xa4, 0x67, 0x09, 0xf2, 0x5f, 0xa5, 0x13, 0x0d, 0x31, 0x9f, 0xa4, 0x73, 0x60, 0x8c,
0x71, 0xd0, 0xc3, 0x6b, 0x63, 0x36, 0x86, 0x9a, 0xea, 0x7f, 0x1b, 0x79, 0xdb, 0x33, 0x86, 0xfc,
0xef, 0x08, 0xae, 0x6c, 0x91, 0x20, 0x44, 0x7d, 0x2a, 0xbc, 0xf2, 0xa4, 0xda, 0xf2, 0x42, 0xdc,
0x29, 0x4a, 0xf0, 0x27, 0xe2, 0xbb, 0xff, 0x88, 0x60, 0x91, 0xf9, 0xd5, 0xd3, 0xa1, 0x04, 0x93,
0x84, 0x75, 0xbf, 0x43, 0xe2, 0xba, 0x89, 0x22, 0x9e, 0x46, 0x74, 0x0a, 0xc5, 0xcb, 0xa8, 0x14,
0x8f, 0x81, 0x0b, 0x29, 0xdb, 0x9b, 0xb4, 0x96, 0x6d, 0x64, 0x19, 0xb8, 0x28, 0x4d, 0xff, 0x39,
0x82, 0xa5, 0x61, 0xcc, 0xb9, 0x4b, 0xf6, 0xba, 0xc4, 0x0d, 0x5e, 0x5e, 0x9e, 0x49, 0x69, 0x64,
0x14, 0xd1, 0xe2, 0x65, 0x28, 0x51, 0xb1, 0x4e, 0x18, 0x4e, 0x8e, 0x08, 0xfa, 0x27, 0x08, 0x2e,
0x1c, 0x82, 0x33, 0x8d, 0xb0, 0x6a, 0x30, 0x63, 0xbb, 0x16, 0x79, 0x16, 0xa2, 0x19, 0x36, 0x59,
0x4f, 0xab, 0x6f, 0x3b, 0x56, 0x08, 0x63, 0xd8, 0xc4, 0xcb, 0xa0, 0x11, 0xd7, 0x6c, 0x39, 0xa4,
0xc9, 0x79, 0xf9, 0xa1, 0x16, 0x8d, 0xb2, 0xa0, 0x6d, 0x33, 0x92, 0xfe, 0x0b, 0x04, 0xf3, 0xec,
0x4c, 0x25, 0x46, 0xfa, 0x6a, 0x65, 0xd6, 0x80, 0x72, 0xe4, 0xd0, 0x24, 0xdc, 0x28, 0x49, 0x7f,
0x0a, 0x0b, 0x71, 0x38, 0xd3, 0xc8, 0xec, 0x35, 0x80, 0xf0, 0x44, 0x84, 0x6e, 0x65, 0x8d, 0x08,
0x45, 0xff, 0x2f, 0x02, 0x2c, 0xc2, 0x0b, 0x2e, 0x8c, 0x93, 0xb4, 0xbf, 0x2b, 0x00, 0x4f, 0x6c,
0xe2, 0x58, 0x51, 0x0f, 0x56, 0xe2, 0x14, 0xde, 0xbd, 0x09, 0x1a, 0x79, 0x16, 0xf8, 0x66, 0xb3,
0x67, 0xfa, 0x66, 0x57, 0x3c, 0x2e, 0x26, 0x72, 0x36, 0x65, 0x3e, 0x6c, 0x87, 0x8f, 0xd2, 0xff,
0xc1, 0x02, 0x13, 0xa9, 0x94, 0xa7, 0x7d, 0xc7, 0x57, 0x00, 0xb8, 0xd2, 0x8a, 0xee, 0xbc, 0xe8,
0xe6, 0x14, 0xee, 0xce, 0x3f, 0x41, 0x50, 0xe5, 0x5b, 0x10, 0xfb, 0xe9, 0xb1, 0x69, 0x13, 0x63,
0x50, 0x62, 0xcc, 0x18, 0x13, 0xfa, 0x1a, 0x14, 0xa4, 0x60, 0xb3, 0x93, 0x0a, 0x56, 0x0e, 0x38,
0x62, 0x1b, 0xfa, 0x1f, 0x10, 0x2c, 0x26, 0x44, 0x3e, 0x8d, 0x46, 0x3f, 0x02, 0x2c, 0x76, 0x68,
0x8d, 0xb6, 0x3d, 0xbc, 0x7a, 0x12, 0x2f, 0x62, 0xd9, 0x48, 0x0a, 0xc9, 0x38, 0x6f, 0x27, 0x28,
0x54, 0xff, 0x17, 0x82, 0xcb, 0x5b, 0x24, 0xe0, 0xac, 0x1b, 0xcc, 0x77, 0xec, 0xf8, 0xde, 0x9e,
0x4f, 0x28, 0x3d, 0xbb, 0xfa, 0xf1, 0x1b, 0x11, 0xab, 0xa8, 0xb6, 0x34, 0x8d, 0xfc, 0x97, 0x41,
0xe3, 0x6b, 0x10, 0xab, 0xe9, 0x7b, 0x07, 0x54, 0xea, 0x51, 0x59, 0xd2, 0x0c, 0xef, 0x80, 0x2b,
0x44, 0xe0, 0x05, 0xa6, 0x23, 0x18, 0xe4, 0xc5, 0xc0, 0x29, 0xac, 0x9b, 0xdb, 0xe0, 0x10, 0x18,
0x9b, 0x9c, 0x9c, 0x5d, 0x19, 0x7f, 0x84, 0x60, 0x31, 0xb1, 0x95, 0x69, 0x64, 0x7b, 0x47, 0x44,
0x52, 0x62, 0x33, 0xb3, 0x6b, 0x57, 0x95, 0x63, 0x22, 0x8b, 0x09, 0x6e, 0xfd, 0x53, 0x04, 0x55,
0xf6, 0xda, 0x3a, 0xe3, 0x0e, 0xed, 0x7f, 0x08, 0x2a, 0xdb, 0x2e, 0x25, 0x7e, 0x70, 0xfa, 0x83,
0x69, 0x7c, 0x1b, 0x8a, 0xbe, 0x77, 0xd0, 0xb4, 0xcc, 0xc0, 0x94, 0x57, 0xd1, 0x45, 0x25, 0xbc,
0x0d, 0xc7, 0x6b, 0x19, 0x33, 0xbe, 0x77, 0xb0, 0x69, 0x06, 0x26, 0xbe, 0x04, 0xa5, 0x8e, 0x49,
0x3b, 0xcd, 0xa7, 0x64, 0x40, 0x6b, 0x85, 0x46, 0x76, 0xa5, 0x62, 0x14, 0x19, 0xe1, 0x01, 0x19,
0x50, 0xa6, 0x4c, 0xb3, 0xc3, 0xfd, 0x4f, 0xa3, 0x45, 0x57, 0xa1, 0xec, 0x7b, 0x07, 0xdb, 0x9b,
0xcd, 0x16, 0xd9, 0xb3, 0x5d, 0x69, 0xa0, 0xc0, 0x49, 0x1b, 0x8c, 0xc2, 0x50, 0x08, 0x06, 0xe2,
0x5a, 0xd2, 0x3c, 0x8b, 0x9c, 0xf0, 0x1d, 0xd7, 0xd2, 0xf7, 0xa1, 0xba, 0xe3, 0x98, 0x6d, 0xd2,
0xf1, 0x1c, 0x8b, 0xf8, 0xdc, 0xdb, 0xe3, 0x2a, 0x64, 0x03, 0x73, 0x4f, 0x5e, 0x27, 0xec, 0x13,
0x7f, 0x15, 0x72, 0xc1, 0xa0, 0x37, 0x54, 0xd4, 0x2f, 0x2a, 0xfd, 0x6e, 0x64, 0x9a, 0x47, 0x83,
0x1e, 0x31, 0xf8, 0x08, 0xbc, 0x04, 0x05, 0x9e, 0xd8, 0x15, 0x17, 0x8d, 0x66, 0xc8, 0x96, 0xfe,
0x38, 0xb6, 0xee, 0x96, 0xef, 0xf5, 0x7b, 0x78, 0x1b, 0xb4, 0xde, 0x88, 0xc6, 0x84, 0x90, 0xee,
0xe5, 0x93, 0xa0, 0x8d, 0xd8, 0x50, 0xfd, 0x3f, 0x19, 0xa8, 0xec, 0x12, 0xd3, 0x6f, 0x77, 0xce,
0xc2, 0x43, 0x93, 0x49, 0xdc, 0xa2, 0x8e, 0xb4, 0x11, 0xf6, 0x89, 0x6f, 0xc2, 0xf9, 0xc8, 0x86,
0x9a, 0x7b, 0x4c, 0x40, 0xb5, 0x02, 0x2f, 0x8e, 0x54, 0x7b, 0x49, 0xc1, 0xbd, 0x0d, 0x45, 0x8b,
0x3a, 0x4d, 0x7e, 0x44, 0x33, 0xfc, 0x88, 0xd4, 0xfb, 0xdb, 0xa4, 0x0e, 0x3f, 0x9a, 0x19, 0x4b,
0x7c, 0xe0, 0x7b, 0x50, 0xa1, 0x5c, 0x4a, 0xc3, 0x30, 0xab, 0x38, 0x69, 0x34, 0xa0, 0x89, 0x71,
0x32, 0xce, 0x7a, 0x00, 0xb9, 0xfb, 0x76, 0xc0, 0xf7, 0xc1, 0x02, 0x4f, 0xc4, 0x03, 0x4f, 0xf6,
0x89, 0x2f, 0x46, 0x0c, 0x27, 0xc3, 0x35, 0x20, 0xb4, 0x0e, 0x5e, 0xf4, 0xf1, 0x7c, 0xa9, 0x1a,
0x19, 0x43, 0xb6, 0xf4, 0xef, 0x8d, 0x8e, 0x8e, 0xf6, 0x9d, 0x80, 0xbe, 0x9c, 0x59, 0x60, 0xc8,
0x75, 0x6c, 0xf9, 0x4a, 0xd5, 0x0c, 0xfe, 0xad, 0xff, 0x08, 0x81, 0x76, 0xcf, 0xe9, 0xd3, 0x57,
0xa1, 0x14, 0xaa, 0x24, 0x5f, 0x56, 0x9d, 0xe4, 0xfb, 0x67, 0x06, 0x16, 0x77, 0x88, 0x4f, 0x6d,
0x1a, 0x10, 0x37, 0x90, 0x91, 0xff, 0xb6, 0xfb, 0xc4, 0x8b, 0x3f, 0xb1, 0x50, 0xe2, 0x89, 0xf5,
0xd9, 0x3c, 0x38, 0x98, 0x3b, 0xf0, 0x7a, 0xc4, 0x6d, 0x06, 0xb6, 0x74, 0x76, 0x39, 0xa3, 0xc8,
0x08, 0x8f, 0xec, 0x2e, 0x61, 0xce, 0x84, 0x12, 0xd3, 0x21, 0x96, 0xe8, 0xce, 0xf3, 0x6e, 0x10,
0x24, 0xce, 0xb0, 0x0c, 0xda, 0x13, 0x26, 0xc1, 0x21, 0x47, 0x81, 0x73, 0x94, 0x25, 0x8d, 0xb3,
0x5c, 0x84, 0xa2, 0xdb, 0xef, 0x8a, 0x68, 0x60, 0x46, 0x84, 0x9d, 0x6e, 0xbf, 0xcb, 0x43, 0x85,
0x8b, 0x50, 0xec, 0x92, 0x6e, 0x93, 0xda, 0xcf, 0x49, 0xad, 0x28, 0xba, 0xba, 0xa4, 0xbb, 0x6b,
0x3f, 0x27, 0xc3, 0xb4, 0x02, 0xa9, 0x95, 0xb8, 0x02, 0xab, 0x55, 0x50, 0xca, 0x2a, 0x76, 0x1d,
0xfe, 0x4a, 0x24, 0xa9, 0x95, 0x02, 0x7d, 0xf9, 0x73, 0x5e, 0x02, 0x79, 0xb0, 0x89, 0x63, 0xfe,
0x12, 0x24, 0x8c, 0x3c, 0x25, 0x75, 0xfe, 0x5b, 0x04, 0x8d, 0x74, 0x54, 0xd3, 0xf8, 0xfb, 0x6f,
0x41, 0xde, 0x76, 0x9f, 0x78, 0xc3, 0x20, 0xf8, 0x86, 0xda, 0x3d, 0x2a, 0xd7, 0x15, 0x03, 0xf5,
0x7f, 0x23, 0xa8, 0xbe, 0xd7, 0x27, 0xfe, 0xe0, 0xf3, 0x56, 0xbd, 0xe8, 0xf1, 0xe7, 0xe2, 0xc7,
0x1f, 0x55, 0x9a, 0x7c, 0x5c, 0x69, 0xe2, 0x71, 0x44, 0x61, 0xcc, 0x23, 0x67, 0x26, 0xf6, 0xc8,
0xd1, 0x5f, 0x20, 0xa8, 0x6f, 0x91, 0x20, 0xb9, 0xd5, 0x93, 0x53, 0x8a, 0x8f, 0x11, 0x5c, 0x52,
0x02, 0x9a, 0x46, 0x1f, 0xbe, 0x1e, 0xd7, 0x07, 0xf5, 0x75, 0x79, 0x68, 0x49, 0xa9, 0x0a, 0x8b,
0x30, 0x6f, 0x90, 0x3d, 0xa6, 0x29, 0xfe, 0x3b, 0xb6, 0xfb, 0x54, 0x8a, 0x86, 0xc5, 0x26, 0x0b,
0x71, 0xba, 0x44, 0xf8, 0x15, 0x98, 0x31, 0x2d, 0x8b, 0x3d, 0x2b, 0xc6, 0x8a, 0xed, 0xdb, 0x82,
0xc7, 0x18, 0x32, 0x47, 0x76, 0x96, 0x99, 0x78, 0x67, 0x37, 0xbe, 0x09, 0x73, 0x89, 0xa0, 0x02,
0x17, 0x21, 0xf7, 0xd0, 0x73, 0x49, 0xf5, 0x1c, 0xae, 0x82, 0xb6, 0x61, 0xbb, 0xa6, 0x3f, 0x78,
0x9f, 0xb4, 0x03, 0xcf, 0xaf, 0x5a, 0x78, 0x0e, 0xca, 0xf7, 0x1c, 0xcf, 0x0c, 0x24, 0x81, 0xac,
0xfd, 0x72, 0x11, 0x2a, 0xef, 0xf2, 0x65, 0x76, 0x89, 0xbf, 0x6f, 0xb7, 0x09, 0x6e, 0x42, 0x35,
0xf9, 0xdb, 0x03, 0x7e, 0x43, 0x29, 0xb0, 0x94, 0xbf, 0x23, 0xea, 0xe3, 0x80, 0xeb, 0xe7, 0xf0,
0x87, 0x30, 0x1b, 0xff, 0x21, 0x01, 0xab, 0xed, 0x53, 0xf9, 0xd7, 0xc2, 0x51, 0x93, 0x37, 0xa1,
0x12, 0xfb, 0xbf, 0x00, 0x5f, 0x57, 0xce, 0xad, 0xfa, 0x07, 0xa1, 0xbe, 0xac, 0x64, 0x8d, 0xfe,
0x22, 0x20, 0xd0, 0xc7, 0x8b, 0xb4, 0x29, 0xe8, 0x95, 0x95, 0xdc, 0xa3, 0xd0, 0x9b, 0x70, 0xfe,
0x50, 0xcd, 0x15, 0xbf, 0xa9, 0x9c, 0x3f, 0xad, 0x36, 0x7b, 0xd4, 0x12, 0x07, 0x80, 0x0f, 0x57,
0xe1, 0xf1, 0x2d, 0xf5, 0x09, 0xa4, 0xfd, 0x64, 0x50, 0x5f, 0x9d, 0x98, 0x3f, 0x14, 0xdc, 0x8f,
0x11, 0x5c, 0x48, 0x29, 0x94, 0xe2, 0x75, 0xe5, 0x74, 0xe3, 0xab, 0xbd, 0xf5, 0xdb, 0xc7, 0x1b,
0x14, 0x02, 0x71, 0x61, 0x2e, 0x51, 0xba, 0xc4, 0x37, 0x95, 0x53, 0xa9, 0xab, 0xa8, 0xf5, 0x37,
0x26, 0x63, 0x0e, 0xd7, 0x7b, 0x0c, 0x73, 0x89, 0x72, 0x65, 0xca, 0x7a, 0xea, 0xa2, 0xe6, 0x51,
0x07, 0xfa, 0x01, 0x54, 0x62, 0x75, 0xc5, 0x14, 0x8d, 0x57, 0xd5, 0x1e, 0x8f, 0x9a, 0xfa, 0x31,
0x68, 0xd1, 0xf2, 0x1f, 0x5e, 0x49, 0xb3, 0xa5, 0x43, 0x13, 0x1f, 0xc7, 0x94, 0x46, 0x95, 0x83,
0x31, 0xa6, 0x74, 0xa8, 0x20, 0x32, 0xb9, 0x29, 0x45, 0xe6, 0x1f, 0x6b, 0x4a, 0xc7, 0x5e, 0xe2,
0x23, 0x04, 0x4b, 0xea, 0xea, 0x11, 0x5e, 0x4b, 0xd3, 0xcd, 0xf4, 0x3a, 0x59, 0x7d, 0xfd, 0x58,
0x63, 0x42, 0x29, 0x3e, 0x85, 0xd9, 0x78, 0xfd, 0x25, 0x45, 0x8a, 0xca, 0xb2, 0x52, 0xfd, 0xe6,
0x44, 0xbc, 0xe1, 0x62, 0xdf, 0x85, 0x72, 0x24, 0x37, 0x8e, 0x5f, 0x1f, 0xa3, 0xc7, 0xd1, 0xd4,
0xcb, 0x51, 0x92, 0xec, 0x40, 0x25, 0x96, 0x0f, 0x4d, 0xd3, 0x61, 0x45, 0x9a, 0xba, 0x7e, 0x63,
0x12, 0xd6, 0x70, 0x03, 0x1d, 0xa8, 0xc4, 0xb2, 0x53, 0x29, 0x2b, 0xa9, 0x92, 0x71, 0x29, 0x2b,
0x29, 0x93, 0x5d, 0xfa, 0x39, 0xfc, 0xc3, 0x48, 0x22, 0x2c, 0x96, 0x6c, 0xc4, 0x5f, 0x1e, 0x3b,
0x8f, 0x2a, 0xd7, 0x5a, 0x5f, 0x3b, 0xce, 0x90, 0x10, 0xc2, 0x7b, 0x50, 0x0a, 0x93, 0x60, 0xf8,
0x5a, 0xaa, 0x5b, 0x38, 0xce, 0x49, 0xed, 0x42, 0x41, 0x24, 0x64, 0xb0, 0x9e, 0x92, 0x59, 0x8e,
0x64, 0xab, 0xea, 0x5f, 0x18, 0xcb, 0x13, 0xe2, 0x34, 0xa0, 0x20, 0x5e, 0xb3, 0x29, 0x93, 0xc6,
0xb2, 0x14, 0xf5, 0xf1, 0x3c, 0xfc, 0x39, 0xac, 0x9f, 0xc3, 0xdb, 0x90, 0xe7, 0xcf, 0x58, 0xac,
0x76, 0x45, 0xd1, 0x27, 0xee, 0x51, 0x7b, 0xfe, 0x09, 0x82, 0x5a, 0xda, 0x3b, 0x05, 0xa7, 0xde,
0x42, 0xe3, 0x1e, 0x5b, 0xf5, 0x3b, 0xc7, 0x1c, 0x15, 0x8a, 0xea, 0x39, 0xcc, 0x2b, 0xa2, 0x63,
0xbc, 0x9a, 0x36, 0x5f, 0x4a, 0x60, 0x5f, 0x7f, 0x6b, 0xf2, 0x01, 0xe1, 0xda, 0x04, 0xb4, 0x68,
0xc0, 0x9b, 0x72, 0x1d, 0x28, 0x62, 0xe5, 0xfa, 0xf5, 0x09, 0x38, 0x87, 0xcb, 0xac, 0xf5, 0x41,
0xdb, 0xf1, 0xbd, 0x67, 0x83, 0x61, 0x40, 0xfa, 0xf9, 0x2c, 0xbb, 0x71, 0xe7, 0xfb, 0xeb, 0x7b,
0x76, 0xd0, 0xe9, 0xb7, 0xd8, 0xf9, 0xaf, 0x0a, 0xde, 0x37, 0x6d, 0x4f, 0x7e, 0xad, 0xda, 0x6e,
0x40, 0x7c, 0xd7, 0x74, 0x56, 0xf9, 0x5c, 0x92, 0xda, 0x6b, 0xb5, 0x0a, 0xbc, 0xbd, 0xfe, 0xff,
0x00, 0x00, 0x00, 0xff, 0xff, 0x83, 0x86, 0xb3, 0x8f, 0x6e, 0x2c, 0x00, 0x00,
}
// Reference imports to suppress errors if they are not otherwise used.