From 4fcf2df1ed1759b4341bc59955487391952817a4 Mon Sep 17 00:00:00 2001 From: Sanket Kedia Date: Thu, 19 Dec 2024 11:22:15 -0800 Subject: [PATCH 1/4] Add NAC to the write path --- go/pkg/proto/coordinatorpb/chroma.pb.go | 4007 +++++++++++++++++ go/pkg/proto/coordinatorpb/chroma_grpc.pb.go | 299 ++ go/pkg/proto/coordinatorpb/coordinator.pb.go | 2970 ++++++++++++ .../coordinatorpb/coordinator_grpc.pb.go | 768 ++++ go/pkg/proto/logservicepb/logservice.pb.go | 844 ++++ .../proto/logservicepb/logservice_grpc.pb.go | 235 + rust/blockstore/src/arrow/flusher.rs | 10 +- rust/storage/src/admissioncontrolleds3.rs | 122 +- rust/storage/src/s3.rs | 128 +- rust/worker/chroma_config.yaml | 2 +- 10 files changed, 9328 insertions(+), 57 deletions(-) create mode 100644 go/pkg/proto/coordinatorpb/chroma.pb.go create mode 100644 go/pkg/proto/coordinatorpb/chroma_grpc.pb.go create mode 100644 go/pkg/proto/coordinatorpb/coordinator.pb.go create mode 100644 go/pkg/proto/coordinatorpb/coordinator_grpc.pb.go create mode 100644 go/pkg/proto/logservicepb/logservice.pb.go create mode 100644 go/pkg/proto/logservicepb/logservice_grpc.pb.go diff --git a/go/pkg/proto/coordinatorpb/chroma.pb.go b/go/pkg/proto/coordinatorpb/chroma.pb.go new file mode 100644 index 00000000000..3a74be06400 --- /dev/null +++ b/go/pkg/proto/coordinatorpb/chroma.pb.go @@ -0,0 +1,4007 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc v5.28.2 +// source: chromadb/proto/chroma.proto + +package coordinatorpb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// Types here should mirror chromadb/types.py +type Operation int32 + +const ( + Operation_ADD Operation = 0 + Operation_UPDATE Operation = 1 + Operation_UPSERT Operation = 2 + Operation_DELETE Operation = 3 +) + +// Enum value maps for Operation. +var ( + Operation_name = map[int32]string{ + 0: "ADD", + 1: "UPDATE", + 2: "UPSERT", + 3: "DELETE", + } + Operation_value = map[string]int32{ + "ADD": 0, + "UPDATE": 1, + "UPSERT": 2, + "DELETE": 3, + } +) + +func (x Operation) Enum() *Operation { + p := new(Operation) + *p = x + return p +} + +func (x Operation) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (Operation) Descriptor() protoreflect.EnumDescriptor { + return file_chromadb_proto_chroma_proto_enumTypes[0].Descriptor() +} + +func (Operation) Type() protoreflect.EnumType { + return &file_chromadb_proto_chroma_proto_enumTypes[0] +} + +func (x Operation) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use Operation.Descriptor instead. +func (Operation) EnumDescriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{0} +} + +type ScalarEncoding int32 + +const ( + ScalarEncoding_FLOAT32 ScalarEncoding = 0 + ScalarEncoding_INT32 ScalarEncoding = 1 +) + +// Enum value maps for ScalarEncoding. +var ( + ScalarEncoding_name = map[int32]string{ + 0: "FLOAT32", + 1: "INT32", + } + ScalarEncoding_value = map[string]int32{ + "FLOAT32": 0, + "INT32": 1, + } +) + +func (x ScalarEncoding) Enum() *ScalarEncoding { + p := new(ScalarEncoding) + *p = x + return p +} + +func (x ScalarEncoding) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ScalarEncoding) Descriptor() protoreflect.EnumDescriptor { + return file_chromadb_proto_chroma_proto_enumTypes[1].Descriptor() +} + +func (ScalarEncoding) Type() protoreflect.EnumType { + return &file_chromadb_proto_chroma_proto_enumTypes[1] +} + +func (x ScalarEncoding) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ScalarEncoding.Descriptor instead. +func (ScalarEncoding) EnumDescriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{1} +} + +type SegmentScope int32 + +const ( + SegmentScope_VECTOR SegmentScope = 0 + SegmentScope_METADATA SegmentScope = 1 + SegmentScope_RECORD SegmentScope = 2 + SegmentScope_SQLITE SegmentScope = 3 +) + +// Enum value maps for SegmentScope. +var ( + SegmentScope_name = map[int32]string{ + 0: "VECTOR", + 1: "METADATA", + 2: "RECORD", + 3: "SQLITE", + } + SegmentScope_value = map[string]int32{ + "VECTOR": 0, + "METADATA": 1, + "RECORD": 2, + "SQLITE": 3, + } +) + +func (x SegmentScope) Enum() *SegmentScope { + p := new(SegmentScope) + *p = x + return p +} + +func (x SegmentScope) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (SegmentScope) Descriptor() protoreflect.EnumDescriptor { + return file_chromadb_proto_chroma_proto_enumTypes[2].Descriptor() +} + +func (SegmentScope) Type() protoreflect.EnumType { + return &file_chromadb_proto_chroma_proto_enumTypes[2] +} + +func (x SegmentScope) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use SegmentScope.Descriptor instead. +func (SegmentScope) EnumDescriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{2} +} + +// Types of operators for `WhereDocument` clauses. A `WhereDocument` clause can +// either require that a document contains a value or that it does not contain +// a value. +type WhereDocumentOperator int32 + +const ( + WhereDocumentOperator_CONTAINS WhereDocumentOperator = 0 + WhereDocumentOperator_NOT_CONTAINS WhereDocumentOperator = 1 +) + +// Enum value maps for WhereDocumentOperator. +var ( + WhereDocumentOperator_name = map[int32]string{ + 0: "CONTAINS", + 1: "NOT_CONTAINS", + } + WhereDocumentOperator_value = map[string]int32{ + "CONTAINS": 0, + "NOT_CONTAINS": 1, + } +) + +func (x WhereDocumentOperator) Enum() *WhereDocumentOperator { + p := new(WhereDocumentOperator) + *p = x + return p +} + +func (x WhereDocumentOperator) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (WhereDocumentOperator) Descriptor() protoreflect.EnumDescriptor { + return file_chromadb_proto_chroma_proto_enumTypes[3].Descriptor() +} + +func (WhereDocumentOperator) Type() protoreflect.EnumType { + return &file_chromadb_proto_chroma_proto_enumTypes[3] +} + +func (x WhereDocumentOperator) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use WhereDocumentOperator.Descriptor instead. +func (WhereDocumentOperator) EnumDescriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{3} +} + +// A `Where` clause may have a list of children. This enum specifies how the +// children should be combined. +type BooleanOperator int32 + +const ( + BooleanOperator_AND BooleanOperator = 0 + BooleanOperator_OR BooleanOperator = 1 +) + +// Enum value maps for BooleanOperator. +var ( + BooleanOperator_name = map[int32]string{ + 0: "AND", + 1: "OR", + } + BooleanOperator_value = map[string]int32{ + "AND": 0, + "OR": 1, + } +) + +func (x BooleanOperator) Enum() *BooleanOperator { + p := new(BooleanOperator) + *p = x + return p +} + +func (x BooleanOperator) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (BooleanOperator) Descriptor() protoreflect.EnumDescriptor { + return file_chromadb_proto_chroma_proto_enumTypes[4].Descriptor() +} + +func (BooleanOperator) Type() protoreflect.EnumType { + return &file_chromadb_proto_chroma_proto_enumTypes[4] +} + +func (x BooleanOperator) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use BooleanOperator.Descriptor instead. +func (BooleanOperator) EnumDescriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{4} +} + +// A `Where` clause may have a list of allowed or disallowed values. This enum +// specifies which type of list it is. +type ListOperator int32 + +const ( + ListOperator_IN ListOperator = 0 + ListOperator_NIN ListOperator = 1 +) + +// Enum value maps for ListOperator. +var ( + ListOperator_name = map[int32]string{ + 0: "IN", + 1: "NIN", + } + ListOperator_value = map[string]int32{ + "IN": 0, + "NIN": 1, + } +) + +func (x ListOperator) Enum() *ListOperator { + p := new(ListOperator) + *p = x + return p +} + +func (x ListOperator) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ListOperator) Descriptor() protoreflect.EnumDescriptor { + return file_chromadb_proto_chroma_proto_enumTypes[5].Descriptor() +} + +func (ListOperator) Type() protoreflect.EnumType { + return &file_chromadb_proto_chroma_proto_enumTypes[5] +} + +func (x ListOperator) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ListOperator.Descriptor instead. +func (ListOperator) EnumDescriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{5} +} + +// A leaf-node `Where` clause may compare a string, int, or float to a single +// value of the same type. These comparators apply to all three of those types. +type GenericComparator int32 + +const ( + GenericComparator_EQ GenericComparator = 0 + GenericComparator_NE GenericComparator = 1 +) + +// Enum value maps for GenericComparator. +var ( + GenericComparator_name = map[int32]string{ + 0: "EQ", + 1: "NE", + } + GenericComparator_value = map[string]int32{ + "EQ": 0, + "NE": 1, + } +) + +func (x GenericComparator) Enum() *GenericComparator { + p := new(GenericComparator) + *p = x + return p +} + +func (x GenericComparator) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (GenericComparator) Descriptor() protoreflect.EnumDescriptor { + return file_chromadb_proto_chroma_proto_enumTypes[6].Descriptor() +} + +func (GenericComparator) Type() protoreflect.EnumType { + return &file_chromadb_proto_chroma_proto_enumTypes[6] +} + +func (x GenericComparator) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use GenericComparator.Descriptor instead. +func (GenericComparator) EnumDescriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{6} +} + +// Used when a leaf-node `Where` clause compares an int or float to a single +// value of the same type. +type NumberComparator int32 + +const ( + NumberComparator_GT NumberComparator = 0 + NumberComparator_GTE NumberComparator = 1 + NumberComparator_LT NumberComparator = 2 + NumberComparator_LTE NumberComparator = 3 +) + +// Enum value maps for NumberComparator. +var ( + NumberComparator_name = map[int32]string{ + 0: "GT", + 1: "GTE", + 2: "LT", + 3: "LTE", + } + NumberComparator_value = map[string]int32{ + "GT": 0, + "GTE": 1, + "LT": 2, + "LTE": 3, + } +) + +func (x NumberComparator) Enum() *NumberComparator { + p := new(NumberComparator) + *p = x + return p +} + +func (x NumberComparator) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (NumberComparator) Descriptor() protoreflect.EnumDescriptor { + return file_chromadb_proto_chroma_proto_enumTypes[7].Descriptor() +} + +func (NumberComparator) Type() protoreflect.EnumType { + return &file_chromadb_proto_chroma_proto_enumTypes[7] +} + +func (x NumberComparator) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use NumberComparator.Descriptor instead. +func (NumberComparator) EnumDescriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{7} +} + +type Vector struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Dimension int32 `protobuf:"varint,1,opt,name=dimension,proto3" json:"dimension,omitempty"` + Vector []byte `protobuf:"bytes,2,opt,name=vector,proto3" json:"vector,omitempty"` + Encoding ScalarEncoding `protobuf:"varint,3,opt,name=encoding,proto3,enum=chroma.ScalarEncoding" json:"encoding,omitempty"` +} + +func (x *Vector) Reset() { + *x = Vector{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Vector) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Vector) ProtoMessage() {} + +func (x *Vector) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Vector.ProtoReflect.Descriptor instead. +func (*Vector) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{0} +} + +func (x *Vector) GetDimension() int32 { + if x != nil { + return x.Dimension + } + return 0 +} + +func (x *Vector) GetVector() []byte { + if x != nil { + return x.Vector + } + return nil +} + +func (x *Vector) GetEncoding() ScalarEncoding { + if x != nil { + return x.Encoding + } + return ScalarEncoding_FLOAT32 +} + +type FilePaths struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Paths []string `protobuf:"bytes,1,rep,name=paths,proto3" json:"paths,omitempty"` +} + +func (x *FilePaths) Reset() { + *x = FilePaths{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FilePaths) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FilePaths) ProtoMessage() {} + +func (x *FilePaths) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FilePaths.ProtoReflect.Descriptor instead. +func (*FilePaths) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{1} +} + +func (x *FilePaths) GetPaths() []string { + if x != nil { + return x.Paths + } + return nil +} + +type Segment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"` + Scope SegmentScope `protobuf:"varint,3,opt,name=scope,proto3,enum=chroma.SegmentScope" json:"scope,omitempty"` + Collection string `protobuf:"bytes,5,opt,name=collection,proto3" json:"collection,omitempty"` + Metadata *UpdateMetadata `protobuf:"bytes,6,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` + FilePaths map[string]*FilePaths `protobuf:"bytes,7,rep,name=file_paths,json=filePaths,proto3" json:"file_paths,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (x *Segment) Reset() { + *x = Segment{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Segment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Segment) ProtoMessage() {} + +func (x *Segment) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Segment.ProtoReflect.Descriptor instead. +func (*Segment) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{2} +} + +func (x *Segment) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *Segment) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *Segment) GetScope() SegmentScope { + if x != nil { + return x.Scope + } + return SegmentScope_VECTOR +} + +func (x *Segment) GetCollection() string { + if x != nil { + return x.Collection + } + return "" +} + +func (x *Segment) GetMetadata() *UpdateMetadata { + if x != nil { + return x.Metadata + } + return nil +} + +func (x *Segment) GetFilePaths() map[string]*FilePaths { + if x != nil { + return x.FilePaths + } + return nil +} + +type Collection struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + ConfigurationJsonStr string `protobuf:"bytes,3,opt,name=configuration_json_str,json=configurationJsonStr,proto3" json:"configuration_json_str,omitempty"` + Metadata *UpdateMetadata `protobuf:"bytes,4,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` + Dimension *int32 `protobuf:"varint,5,opt,name=dimension,proto3,oneof" json:"dimension,omitempty"` + Tenant string `protobuf:"bytes,6,opt,name=tenant,proto3" json:"tenant,omitempty"` + Database string `protobuf:"bytes,7,opt,name=database,proto3" json:"database,omitempty"` + LogPosition int64 `protobuf:"varint,8,opt,name=log_position,json=logPosition,proto3" json:"log_position,omitempty"` + Version int32 `protobuf:"varint,9,opt,name=version,proto3" json:"version,omitempty"` +} + +func (x *Collection) Reset() { + *x = Collection{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Collection) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Collection) ProtoMessage() {} + +func (x *Collection) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Collection.ProtoReflect.Descriptor instead. +func (*Collection) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{3} +} + +func (x *Collection) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *Collection) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *Collection) GetConfigurationJsonStr() string { + if x != nil { + return x.ConfigurationJsonStr + } + return "" +} + +func (x *Collection) GetMetadata() *UpdateMetadata { + if x != nil { + return x.Metadata + } + return nil +} + +func (x *Collection) GetDimension() int32 { + if x != nil && x.Dimension != nil { + return *x.Dimension + } + return 0 +} + +func (x *Collection) GetTenant() string { + if x != nil { + return x.Tenant + } + return "" +} + +func (x *Collection) GetDatabase() string { + if x != nil { + return x.Database + } + return "" +} + +func (x *Collection) GetLogPosition() int64 { + if x != nil { + return x.LogPosition + } + return 0 +} + +func (x *Collection) GetVersion() int32 { + if x != nil { + return x.Version + } + return 0 +} + +type Database struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Tenant string `protobuf:"bytes,3,opt,name=tenant,proto3" json:"tenant,omitempty"` +} + +func (x *Database) Reset() { + *x = Database{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Database) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Database) ProtoMessage() {} + +func (x *Database) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Database.ProtoReflect.Descriptor instead. +func (*Database) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{4} +} + +func (x *Database) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *Database) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *Database) GetTenant() string { + if x != nil { + return x.Tenant + } + return "" +} + +type Tenant struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *Tenant) Reset() { + *x = Tenant{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Tenant) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Tenant) ProtoMessage() {} + +func (x *Tenant) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Tenant.ProtoReflect.Descriptor instead. +func (*Tenant) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{5} +} + +func (x *Tenant) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +type UpdateMetadataValue struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Not set if user wants to delete the key. + // TODO(Sanket): Should we make this more explicit? + // + // Types that are assignable to Value: + // + // *UpdateMetadataValue_StringValue + // *UpdateMetadataValue_IntValue + // *UpdateMetadataValue_FloatValue + // *UpdateMetadataValue_BoolValue + Value isUpdateMetadataValue_Value `protobuf_oneof:"value"` +} + +func (x *UpdateMetadataValue) Reset() { + *x = UpdateMetadataValue{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateMetadataValue) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateMetadataValue) ProtoMessage() {} + +func (x *UpdateMetadataValue) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateMetadataValue.ProtoReflect.Descriptor instead. +func (*UpdateMetadataValue) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{6} +} + +func (m *UpdateMetadataValue) GetValue() isUpdateMetadataValue_Value { + if m != nil { + return m.Value + } + return nil +} + +func (x *UpdateMetadataValue) GetStringValue() string { + if x, ok := x.GetValue().(*UpdateMetadataValue_StringValue); ok { + return x.StringValue + } + return "" +} + +func (x *UpdateMetadataValue) GetIntValue() int64 { + if x, ok := x.GetValue().(*UpdateMetadataValue_IntValue); ok { + return x.IntValue + } + return 0 +} + +func (x *UpdateMetadataValue) GetFloatValue() float64 { + if x, ok := x.GetValue().(*UpdateMetadataValue_FloatValue); ok { + return x.FloatValue + } + return 0 +} + +func (x *UpdateMetadataValue) GetBoolValue() bool { + if x, ok := x.GetValue().(*UpdateMetadataValue_BoolValue); ok { + return x.BoolValue + } + return false +} + +type isUpdateMetadataValue_Value interface { + isUpdateMetadataValue_Value() +} + +type UpdateMetadataValue_StringValue struct { + StringValue string `protobuf:"bytes,1,opt,name=string_value,json=stringValue,proto3,oneof"` +} + +type UpdateMetadataValue_IntValue struct { + IntValue int64 `protobuf:"varint,2,opt,name=int_value,json=intValue,proto3,oneof"` +} + +type UpdateMetadataValue_FloatValue struct { + FloatValue float64 `protobuf:"fixed64,3,opt,name=float_value,json=floatValue,proto3,oneof"` +} + +type UpdateMetadataValue_BoolValue struct { + BoolValue bool `protobuf:"varint,4,opt,name=bool_value,json=boolValue,proto3,oneof"` +} + +func (*UpdateMetadataValue_StringValue) isUpdateMetadataValue_Value() {} + +func (*UpdateMetadataValue_IntValue) isUpdateMetadataValue_Value() {} + +func (*UpdateMetadataValue_FloatValue) isUpdateMetadataValue_Value() {} + +func (*UpdateMetadataValue_BoolValue) isUpdateMetadataValue_Value() {} + +type UpdateMetadata struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Metadata map[string]*UpdateMetadataValue `protobuf:"bytes,1,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (x *UpdateMetadata) Reset() { + *x = UpdateMetadata{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateMetadata) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateMetadata) ProtoMessage() {} + +func (x *UpdateMetadata) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateMetadata.ProtoReflect.Descriptor instead. +func (*UpdateMetadata) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{7} +} + +func (x *UpdateMetadata) GetMetadata() map[string]*UpdateMetadataValue { + if x != nil { + return x.Metadata + } + return nil +} + +// Represents an operation the user submits +type OperationRecord struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Vector *Vector `protobuf:"bytes,2,opt,name=vector,proto3,oneof" json:"vector,omitempty"` + Metadata *UpdateMetadata `protobuf:"bytes,3,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` + Operation Operation `protobuf:"varint,4,opt,name=operation,proto3,enum=chroma.Operation" json:"operation,omitempty"` +} + +func (x *OperationRecord) Reset() { + *x = OperationRecord{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *OperationRecord) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OperationRecord) ProtoMessage() {} + +func (x *OperationRecord) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use OperationRecord.ProtoReflect.Descriptor instead. +func (*OperationRecord) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{8} +} + +func (x *OperationRecord) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *OperationRecord) GetVector() *Vector { + if x != nil { + return x.Vector + } + return nil +} + +func (x *OperationRecord) GetMetadata() *UpdateMetadata { + if x != nil { + return x.Metadata + } + return nil +} + +func (x *OperationRecord) GetOperation() Operation { + if x != nil { + return x.Operation + } + return Operation_ADD +} + +type RequestVersionContext struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CollectionVersion uint32 `protobuf:"varint,1,opt,name=collection_version,json=collectionVersion,proto3" json:"collection_version,omitempty"` + LogPosition uint64 `protobuf:"varint,2,opt,name=log_position,json=logPosition,proto3" json:"log_position,omitempty"` +} + +func (x *RequestVersionContext) Reset() { + *x = RequestVersionContext{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RequestVersionContext) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RequestVersionContext) ProtoMessage() {} + +func (x *RequestVersionContext) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RequestVersionContext.ProtoReflect.Descriptor instead. +func (*RequestVersionContext) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{9} +} + +func (x *RequestVersionContext) GetCollectionVersion() uint32 { + if x != nil { + return x.CollectionVersion + } + return 0 +} + +func (x *RequestVersionContext) GetLogPosition() uint64 { + if x != nil { + return x.LogPosition + } + return 0 +} + +type CountRecordsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SegmentId string `protobuf:"bytes,1,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"` + CollectionId string `protobuf:"bytes,2,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` + VersionContext *RequestVersionContext `protobuf:"bytes,3,opt,name=version_context,json=versionContext,proto3" json:"version_context,omitempty"` +} + +func (x *CountRecordsRequest) Reset() { + *x = CountRecordsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CountRecordsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CountRecordsRequest) ProtoMessage() {} + +func (x *CountRecordsRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CountRecordsRequest.ProtoReflect.Descriptor instead. +func (*CountRecordsRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{10} +} + +func (x *CountRecordsRequest) GetSegmentId() string { + if x != nil { + return x.SegmentId + } + return "" +} + +func (x *CountRecordsRequest) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *CountRecordsRequest) GetVersionContext() *RequestVersionContext { + if x != nil { + return x.VersionContext + } + return nil +} + +// TODO: Add error propagation in the response. +type CountRecordsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Count uint32 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` +} + +func (x *CountRecordsResponse) Reset() { + *x = CountRecordsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CountRecordsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CountRecordsResponse) ProtoMessage() {} + +func (x *CountRecordsResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CountRecordsResponse.ProtoReflect.Descriptor instead. +func (*CountRecordsResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{11} +} + +func (x *CountRecordsResponse) GetCount() uint32 { + if x != nil { + return x.Count + } + return 0 +} + +type QueryMetadataRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SegmentId string `protobuf:"bytes,1,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"` + Where *Where `protobuf:"bytes,2,opt,name=where,proto3" json:"where,omitempty"` + WhereDocument *WhereDocument `protobuf:"bytes,3,opt,name=where_document,json=whereDocument,proto3" json:"where_document,omitempty"` + Ids *UserIds `protobuf:"bytes,4,opt,name=ids,proto3,oneof" json:"ids,omitempty"` + Limit *uint32 `protobuf:"varint,5,opt,name=limit,proto3,oneof" json:"limit,omitempty"` + Offset *uint32 `protobuf:"varint,6,opt,name=offset,proto3,oneof" json:"offset,omitempty"` + CollectionId string `protobuf:"bytes,7,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` + IncludeMetadata bool `protobuf:"varint,8,opt,name=include_metadata,json=includeMetadata,proto3" json:"include_metadata,omitempty"` + VersionContext *RequestVersionContext `protobuf:"bytes,9,opt,name=version_context,json=versionContext,proto3" json:"version_context,omitempty"` +} + +func (x *QueryMetadataRequest) Reset() { + *x = QueryMetadataRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *QueryMetadataRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*QueryMetadataRequest) ProtoMessage() {} + +func (x *QueryMetadataRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use QueryMetadataRequest.ProtoReflect.Descriptor instead. +func (*QueryMetadataRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{12} +} + +func (x *QueryMetadataRequest) GetSegmentId() string { + if x != nil { + return x.SegmentId + } + return "" +} + +func (x *QueryMetadataRequest) GetWhere() *Where { + if x != nil { + return x.Where + } + return nil +} + +func (x *QueryMetadataRequest) GetWhereDocument() *WhereDocument { + if x != nil { + return x.WhereDocument + } + return nil +} + +func (x *QueryMetadataRequest) GetIds() *UserIds { + if x != nil { + return x.Ids + } + return nil +} + +func (x *QueryMetadataRequest) GetLimit() uint32 { + if x != nil && x.Limit != nil { + return *x.Limit + } + return 0 +} + +func (x *QueryMetadataRequest) GetOffset() uint32 { + if x != nil && x.Offset != nil { + return *x.Offset + } + return 0 +} + +func (x *QueryMetadataRequest) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *QueryMetadataRequest) GetIncludeMetadata() bool { + if x != nil { + return x.IncludeMetadata + } + return false +} + +func (x *QueryMetadataRequest) GetVersionContext() *RequestVersionContext { + if x != nil { + return x.VersionContext + } + return nil +} + +type QueryMetadataResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Records []*MetadataEmbeddingRecord `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"` +} + +func (x *QueryMetadataResponse) Reset() { + *x = QueryMetadataResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *QueryMetadataResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*QueryMetadataResponse) ProtoMessage() {} + +func (x *QueryMetadataResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use QueryMetadataResponse.ProtoReflect.Descriptor instead. +func (*QueryMetadataResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{13} +} + +func (x *QueryMetadataResponse) GetRecords() []*MetadataEmbeddingRecord { + if x != nil { + return x.Records + } + return nil +} + +type MetadataEmbeddingRecord struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Metadata *UpdateMetadata `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty"` +} + +func (x *MetadataEmbeddingRecord) Reset() { + *x = MetadataEmbeddingRecord{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MetadataEmbeddingRecord) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MetadataEmbeddingRecord) ProtoMessage() {} + +func (x *MetadataEmbeddingRecord) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MetadataEmbeddingRecord.ProtoReflect.Descriptor instead. +func (*MetadataEmbeddingRecord) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{14} +} + +func (x *MetadataEmbeddingRecord) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *MetadataEmbeddingRecord) GetMetadata() *UpdateMetadata { + if x != nil { + return x.Metadata + } + return nil +} + +// A `UserIds` should contain the set of user provided ids allowed in the result. +type UserIds struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Ids []string `protobuf:"bytes,1,rep,name=ids,proto3" json:"ids,omitempty"` +} + +func (x *UserIds) Reset() { + *x = UserIds{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UserIds) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UserIds) ProtoMessage() {} + +func (x *UserIds) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UserIds.ProtoReflect.Descriptor instead. +func (*UserIds) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{15} +} + +func (x *UserIds) GetIds() []string { + if x != nil { + return x.Ids + } + return nil +} + +// A `WhereDocument` clause for filtering metadata. A `WhereDocument` clause is a tree of +// `WhereDocument` clauses, where each node is exactly one of: +// - A leaf node representing a `$contains` or `$not_contains` query directly. +// - An branch node with a list of children and a way to combine them (AND or OR). +type WhereDocument struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to WhereDocument: + // + // *WhereDocument_Direct + // *WhereDocument_Children + WhereDocument isWhereDocument_WhereDocument `protobuf_oneof:"where_document"` +} + +func (x *WhereDocument) Reset() { + *x = WhereDocument{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *WhereDocument) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*WhereDocument) ProtoMessage() {} + +func (x *WhereDocument) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use WhereDocument.ProtoReflect.Descriptor instead. +func (*WhereDocument) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{16} +} + +func (m *WhereDocument) GetWhereDocument() isWhereDocument_WhereDocument { + if m != nil { + return m.WhereDocument + } + return nil +} + +func (x *WhereDocument) GetDirect() *DirectWhereDocument { + if x, ok := x.GetWhereDocument().(*WhereDocument_Direct); ok { + return x.Direct + } + return nil +} + +func (x *WhereDocument) GetChildren() *WhereDocumentChildren { + if x, ok := x.GetWhereDocument().(*WhereDocument_Children); ok { + return x.Children + } + return nil +} + +type isWhereDocument_WhereDocument interface { + isWhereDocument_WhereDocument() +} + +type WhereDocument_Direct struct { + Direct *DirectWhereDocument `protobuf:"bytes,1,opt,name=direct,proto3,oneof"` +} + +type WhereDocument_Children struct { + Children *WhereDocumentChildren `protobuf:"bytes,2,opt,name=children,proto3,oneof"` +} + +func (*WhereDocument_Direct) isWhereDocument_WhereDocument() {} + +func (*WhereDocument_Children) isWhereDocument_WhereDocument() {} + +// A leaf-node `WhereDocument` clause may compare a document to a single value. +type DirectWhereDocument struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Document string `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"` + Operator WhereDocumentOperator `protobuf:"varint,2,opt,name=operator,proto3,enum=chroma.WhereDocumentOperator" json:"operator,omitempty"` +} + +func (x *DirectWhereDocument) Reset() { + *x = DirectWhereDocument{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DirectWhereDocument) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DirectWhereDocument) ProtoMessage() {} + +func (x *DirectWhereDocument) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DirectWhereDocument.ProtoReflect.Descriptor instead. +func (*DirectWhereDocument) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{17} +} + +func (x *DirectWhereDocument) GetDocument() string { + if x != nil { + return x.Document + } + return "" +} + +func (x *DirectWhereDocument) GetOperator() WhereDocumentOperator { + if x != nil { + return x.Operator + } + return WhereDocumentOperator_CONTAINS +} + +// A branch-node `WhereDocument` node has a list of children. +type WhereDocumentChildren struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Children []*WhereDocument `protobuf:"bytes,1,rep,name=children,proto3" json:"children,omitempty"` + Operator BooleanOperator `protobuf:"varint,2,opt,name=operator,proto3,enum=chroma.BooleanOperator" json:"operator,omitempty"` +} + +func (x *WhereDocumentChildren) Reset() { + *x = WhereDocumentChildren{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *WhereDocumentChildren) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*WhereDocumentChildren) ProtoMessage() {} + +func (x *WhereDocumentChildren) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use WhereDocumentChildren.ProtoReflect.Descriptor instead. +func (*WhereDocumentChildren) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{18} +} + +func (x *WhereDocumentChildren) GetChildren() []*WhereDocument { + if x != nil { + return x.Children + } + return nil +} + +func (x *WhereDocumentChildren) GetOperator() BooleanOperator { + if x != nil { + return x.Operator + } + return BooleanOperator_AND +} + +// A `Where` clause for filtering metadata. A `Where` clause is a tree of +// `Where` clauses, where each node is exactly one of: +// - A leaf node representing a direct comparison between a metadata key and a +// value or list of values. +// - An branch node with a list of children and a way to combine them (AND or OR). +type Where struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Types that are assignable to Where: + // + // *Where_DirectComparison + // *Where_Children + Where isWhere_Where `protobuf_oneof:"where"` +} + +func (x *Where) Reset() { + *x = Where{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Where) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Where) ProtoMessage() {} + +func (x *Where) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Where.ProtoReflect.Descriptor instead. +func (*Where) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{19} +} + +func (m *Where) GetWhere() isWhere_Where { + if m != nil { + return m.Where + } + return nil +} + +func (x *Where) GetDirectComparison() *DirectComparison { + if x, ok := x.GetWhere().(*Where_DirectComparison); ok { + return x.DirectComparison + } + return nil +} + +func (x *Where) GetChildren() *WhereChildren { + if x, ok := x.GetWhere().(*Where_Children); ok { + return x.Children + } + return nil +} + +type isWhere_Where interface { + isWhere_Where() +} + +type Where_DirectComparison struct { + DirectComparison *DirectComparison `protobuf:"bytes,1,opt,name=direct_comparison,json=directComparison,proto3,oneof"` +} + +type Where_Children struct { + Children *WhereChildren `protobuf:"bytes,2,opt,name=children,proto3,oneof"` +} + +func (*Where_DirectComparison) isWhere_Where() {} + +func (*Where_Children) isWhere_Where() {} + +// A leaf-node `Where` clause. +type DirectComparison struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + // Types that are assignable to Comparison: + // + // *DirectComparison_SingleStringOperand + // *DirectComparison_StringListOperand + // *DirectComparison_SingleIntOperand + // *DirectComparison_IntListOperand + // *DirectComparison_SingleDoubleOperand + // *DirectComparison_DoubleListOperand + // *DirectComparison_BoolListOperand + // *DirectComparison_SingleBoolOperand + Comparison isDirectComparison_Comparison `protobuf_oneof:"comparison"` +} + +func (x *DirectComparison) Reset() { + *x = DirectComparison{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DirectComparison) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DirectComparison) ProtoMessage() {} + +func (x *DirectComparison) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DirectComparison.ProtoReflect.Descriptor instead. +func (*DirectComparison) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{20} +} + +func (x *DirectComparison) GetKey() string { + if x != nil { + return x.Key + } + return "" +} + +func (m *DirectComparison) GetComparison() isDirectComparison_Comparison { + if m != nil { + return m.Comparison + } + return nil +} + +func (x *DirectComparison) GetSingleStringOperand() *SingleStringComparison { + if x, ok := x.GetComparison().(*DirectComparison_SingleStringOperand); ok { + return x.SingleStringOperand + } + return nil +} + +func (x *DirectComparison) GetStringListOperand() *StringListComparison { + if x, ok := x.GetComparison().(*DirectComparison_StringListOperand); ok { + return x.StringListOperand + } + return nil +} + +func (x *DirectComparison) GetSingleIntOperand() *SingleIntComparison { + if x, ok := x.GetComparison().(*DirectComparison_SingleIntOperand); ok { + return x.SingleIntOperand + } + return nil +} + +func (x *DirectComparison) GetIntListOperand() *IntListComparison { + if x, ok := x.GetComparison().(*DirectComparison_IntListOperand); ok { + return x.IntListOperand + } + return nil +} + +func (x *DirectComparison) GetSingleDoubleOperand() *SingleDoubleComparison { + if x, ok := x.GetComparison().(*DirectComparison_SingleDoubleOperand); ok { + return x.SingleDoubleOperand + } + return nil +} + +func (x *DirectComparison) GetDoubleListOperand() *DoubleListComparison { + if x, ok := x.GetComparison().(*DirectComparison_DoubleListOperand); ok { + return x.DoubleListOperand + } + return nil +} + +func (x *DirectComparison) GetBoolListOperand() *BoolListComparison { + if x, ok := x.GetComparison().(*DirectComparison_BoolListOperand); ok { + return x.BoolListOperand + } + return nil +} + +func (x *DirectComparison) GetSingleBoolOperand() *SingleBoolComparison { + if x, ok := x.GetComparison().(*DirectComparison_SingleBoolOperand); ok { + return x.SingleBoolOperand + } + return nil +} + +type isDirectComparison_Comparison interface { + isDirectComparison_Comparison() +} + +type DirectComparison_SingleStringOperand struct { + SingleStringOperand *SingleStringComparison `protobuf:"bytes,2,opt,name=single_string_operand,json=singleStringOperand,proto3,oneof"` +} + +type DirectComparison_StringListOperand struct { + StringListOperand *StringListComparison `protobuf:"bytes,3,opt,name=string_list_operand,json=stringListOperand,proto3,oneof"` +} + +type DirectComparison_SingleIntOperand struct { + SingleIntOperand *SingleIntComparison `protobuf:"bytes,4,opt,name=single_int_operand,json=singleIntOperand,proto3,oneof"` +} + +type DirectComparison_IntListOperand struct { + IntListOperand *IntListComparison `protobuf:"bytes,5,opt,name=int_list_operand,json=intListOperand,proto3,oneof"` +} + +type DirectComparison_SingleDoubleOperand struct { + SingleDoubleOperand *SingleDoubleComparison `protobuf:"bytes,6,opt,name=single_double_operand,json=singleDoubleOperand,proto3,oneof"` +} + +type DirectComparison_DoubleListOperand struct { + DoubleListOperand *DoubleListComparison `protobuf:"bytes,7,opt,name=double_list_operand,json=doubleListOperand,proto3,oneof"` +} + +type DirectComparison_BoolListOperand struct { + BoolListOperand *BoolListComparison `protobuf:"bytes,8,opt,name=bool_list_operand,json=boolListOperand,proto3,oneof"` +} + +type DirectComparison_SingleBoolOperand struct { + SingleBoolOperand *SingleBoolComparison `protobuf:"bytes,9,opt,name=single_bool_operand,json=singleBoolOperand,proto3,oneof"` +} + +func (*DirectComparison_SingleStringOperand) isDirectComparison_Comparison() {} + +func (*DirectComparison_StringListOperand) isDirectComparison_Comparison() {} + +func (*DirectComparison_SingleIntOperand) isDirectComparison_Comparison() {} + +func (*DirectComparison_IntListOperand) isDirectComparison_Comparison() {} + +func (*DirectComparison_SingleDoubleOperand) isDirectComparison_Comparison() {} + +func (*DirectComparison_DoubleListOperand) isDirectComparison_Comparison() {} + +func (*DirectComparison_BoolListOperand) isDirectComparison_Comparison() {} + +func (*DirectComparison_SingleBoolOperand) isDirectComparison_Comparison() {} + +// A branch-node `Where` clause has a list of children and a specification +// for how to combine them. +type WhereChildren struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Children []*Where `protobuf:"bytes,1,rep,name=children,proto3" json:"children,omitempty"` + Operator BooleanOperator `protobuf:"varint,2,opt,name=operator,proto3,enum=chroma.BooleanOperator" json:"operator,omitempty"` +} + +func (x *WhereChildren) Reset() { + *x = WhereChildren{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *WhereChildren) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*WhereChildren) ProtoMessage() {} + +func (x *WhereChildren) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use WhereChildren.ProtoReflect.Descriptor instead. +func (*WhereChildren) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{21} +} + +func (x *WhereChildren) GetChildren() []*Where { + if x != nil { + return x.Children + } + return nil +} + +func (x *WhereChildren) GetOperator() BooleanOperator { + if x != nil { + return x.Operator + } + return BooleanOperator_AND +} + +// Used when a leaf-node `Where` clause compares a string to a list of strings. +// `ListOperator` specifies whether values in the list are allowed or disallowed. +type StringListComparison struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` + ListOperator ListOperator `protobuf:"varint,2,opt,name=list_operator,json=listOperator,proto3,enum=chroma.ListOperator" json:"list_operator,omitempty"` +} + +func (x *StringListComparison) Reset() { + *x = StringListComparison{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *StringListComparison) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*StringListComparison) ProtoMessage() {} + +func (x *StringListComparison) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use StringListComparison.ProtoReflect.Descriptor instead. +func (*StringListComparison) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{22} +} + +func (x *StringListComparison) GetValues() []string { + if x != nil { + return x.Values + } + return nil +} + +func (x *StringListComparison) GetListOperator() ListOperator { + if x != nil { + return x.ListOperator + } + return ListOperator_IN +} + +// Used when a leaf-node `Where` clause compares a string to a single string. +type SingleStringComparison struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Value string `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"` + Comparator GenericComparator `protobuf:"varint,2,opt,name=comparator,proto3,enum=chroma.GenericComparator" json:"comparator,omitempty"` +} + +func (x *SingleStringComparison) Reset() { + *x = SingleStringComparison{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SingleStringComparison) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SingleStringComparison) ProtoMessage() {} + +func (x *SingleStringComparison) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SingleStringComparison.ProtoReflect.Descriptor instead. +func (*SingleStringComparison) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{23} +} + +func (x *SingleStringComparison) GetValue() string { + if x != nil { + return x.Value + } + return "" +} + +func (x *SingleStringComparison) GetComparator() GenericComparator { + if x != nil { + return x.Comparator + } + return GenericComparator_EQ +} + +type SingleBoolComparison struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Value bool `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + Comparator GenericComparator `protobuf:"varint,2,opt,name=comparator,proto3,enum=chroma.GenericComparator" json:"comparator,omitempty"` +} + +func (x *SingleBoolComparison) Reset() { + *x = SingleBoolComparison{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SingleBoolComparison) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SingleBoolComparison) ProtoMessage() {} + +func (x *SingleBoolComparison) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SingleBoolComparison.ProtoReflect.Descriptor instead. +func (*SingleBoolComparison) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{24} +} + +func (x *SingleBoolComparison) GetValue() bool { + if x != nil { + return x.Value + } + return false +} + +func (x *SingleBoolComparison) GetComparator() GenericComparator { + if x != nil { + return x.Comparator + } + return GenericComparator_EQ +} + +// Used when a leaf-node `Where` clause compares an int to a list of ints. +// `ListOperator` specifies whether values in the list are allowed or disallowed. +type IntListComparison struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Values []int64 `protobuf:"varint,1,rep,packed,name=values,proto3" json:"values,omitempty"` + ListOperator ListOperator `protobuf:"varint,2,opt,name=list_operator,json=listOperator,proto3,enum=chroma.ListOperator" json:"list_operator,omitempty"` +} + +func (x *IntListComparison) Reset() { + *x = IntListComparison{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *IntListComparison) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*IntListComparison) ProtoMessage() {} + +func (x *IntListComparison) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use IntListComparison.ProtoReflect.Descriptor instead. +func (*IntListComparison) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{25} +} + +func (x *IntListComparison) GetValues() []int64 { + if x != nil { + return x.Values + } + return nil +} + +func (x *IntListComparison) GetListOperator() ListOperator { + if x != nil { + return x.ListOperator + } + return ListOperator_IN +} + +// Used when a leaf-node `Where` clause compares an int to a single int. +type SingleIntComparison struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` + // Types that are assignable to Comparator: + // + // *SingleIntComparison_GenericComparator + // *SingleIntComparison_NumberComparator + Comparator isSingleIntComparison_Comparator `protobuf_oneof:"comparator"` +} + +func (x *SingleIntComparison) Reset() { + *x = SingleIntComparison{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SingleIntComparison) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SingleIntComparison) ProtoMessage() {} + +func (x *SingleIntComparison) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SingleIntComparison.ProtoReflect.Descriptor instead. +func (*SingleIntComparison) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{26} +} + +func (x *SingleIntComparison) GetValue() int64 { + if x != nil { + return x.Value + } + return 0 +} + +func (m *SingleIntComparison) GetComparator() isSingleIntComparison_Comparator { + if m != nil { + return m.Comparator + } + return nil +} + +func (x *SingleIntComparison) GetGenericComparator() GenericComparator { + if x, ok := x.GetComparator().(*SingleIntComparison_GenericComparator); ok { + return x.GenericComparator + } + return GenericComparator_EQ +} + +func (x *SingleIntComparison) GetNumberComparator() NumberComparator { + if x, ok := x.GetComparator().(*SingleIntComparison_NumberComparator); ok { + return x.NumberComparator + } + return NumberComparator_GT +} + +type isSingleIntComparison_Comparator interface { + isSingleIntComparison_Comparator() +} + +type SingleIntComparison_GenericComparator struct { + GenericComparator GenericComparator `protobuf:"varint,2,opt,name=generic_comparator,json=genericComparator,proto3,enum=chroma.GenericComparator,oneof"` +} + +type SingleIntComparison_NumberComparator struct { + NumberComparator NumberComparator `protobuf:"varint,3,opt,name=number_comparator,json=numberComparator,proto3,enum=chroma.NumberComparator,oneof"` +} + +func (*SingleIntComparison_GenericComparator) isSingleIntComparison_Comparator() {} + +func (*SingleIntComparison_NumberComparator) isSingleIntComparison_Comparator() {} + +// Used when a leaf-node `Where` clause compares a float to a list of floats. +// `ListOperator` specifies whether values in the list are allowed or disallowed. +type DoubleListComparison struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Values []float64 `protobuf:"fixed64,1,rep,packed,name=values,proto3" json:"values,omitempty"` + ListOperator ListOperator `protobuf:"varint,2,opt,name=list_operator,json=listOperator,proto3,enum=chroma.ListOperator" json:"list_operator,omitempty"` +} + +func (x *DoubleListComparison) Reset() { + *x = DoubleListComparison{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DoubleListComparison) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DoubleListComparison) ProtoMessage() {} + +func (x *DoubleListComparison) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DoubleListComparison.ProtoReflect.Descriptor instead. +func (*DoubleListComparison) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{27} +} + +func (x *DoubleListComparison) GetValues() []float64 { + if x != nil { + return x.Values + } + return nil +} + +func (x *DoubleListComparison) GetListOperator() ListOperator { + if x != nil { + return x.ListOperator + } + return ListOperator_IN +} + +type BoolListComparison struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Values []bool `protobuf:"varint,1,rep,packed,name=values,proto3" json:"values,omitempty"` + ListOperator ListOperator `protobuf:"varint,2,opt,name=list_operator,json=listOperator,proto3,enum=chroma.ListOperator" json:"list_operator,omitempty"` +} + +func (x *BoolListComparison) Reset() { + *x = BoolListComparison{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BoolListComparison) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BoolListComparison) ProtoMessage() {} + +func (x *BoolListComparison) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BoolListComparison.ProtoReflect.Descriptor instead. +func (*BoolListComparison) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{28} +} + +func (x *BoolListComparison) GetValues() []bool { + if x != nil { + return x.Values + } + return nil +} + +func (x *BoolListComparison) GetListOperator() ListOperator { + if x != nil { + return x.ListOperator + } + return ListOperator_IN +} + +type SingleDoubleComparison struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Value float64 `protobuf:"fixed64,1,opt,name=value,proto3" json:"value,omitempty"` + // Types that are assignable to Comparator: + // + // *SingleDoubleComparison_GenericComparator + // *SingleDoubleComparison_NumberComparator + Comparator isSingleDoubleComparison_Comparator `protobuf_oneof:"comparator"` +} + +func (x *SingleDoubleComparison) Reset() { + *x = SingleDoubleComparison{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SingleDoubleComparison) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SingleDoubleComparison) ProtoMessage() {} + +func (x *SingleDoubleComparison) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SingleDoubleComparison.ProtoReflect.Descriptor instead. +func (*SingleDoubleComparison) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{29} +} + +func (x *SingleDoubleComparison) GetValue() float64 { + if x != nil { + return x.Value + } + return 0 +} + +func (m *SingleDoubleComparison) GetComparator() isSingleDoubleComparison_Comparator { + if m != nil { + return m.Comparator + } + return nil +} + +func (x *SingleDoubleComparison) GetGenericComparator() GenericComparator { + if x, ok := x.GetComparator().(*SingleDoubleComparison_GenericComparator); ok { + return x.GenericComparator + } + return GenericComparator_EQ +} + +func (x *SingleDoubleComparison) GetNumberComparator() NumberComparator { + if x, ok := x.GetComparator().(*SingleDoubleComparison_NumberComparator); ok { + return x.NumberComparator + } + return NumberComparator_GT +} + +type isSingleDoubleComparison_Comparator interface { + isSingleDoubleComparison_Comparator() +} + +type SingleDoubleComparison_GenericComparator struct { + GenericComparator GenericComparator `protobuf:"varint,2,opt,name=generic_comparator,json=genericComparator,proto3,enum=chroma.GenericComparator,oneof"` +} + +type SingleDoubleComparison_NumberComparator struct { + NumberComparator NumberComparator `protobuf:"varint,3,opt,name=number_comparator,json=numberComparator,proto3,enum=chroma.NumberComparator,oneof"` +} + +func (*SingleDoubleComparison_GenericComparator) isSingleDoubleComparison_Comparator() {} + +func (*SingleDoubleComparison_NumberComparator) isSingleDoubleComparison_Comparator() {} + +type GetVectorsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Ids []string `protobuf:"bytes,1,rep,name=ids,proto3" json:"ids,omitempty"` + SegmentId string `protobuf:"bytes,2,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"` + CollectionId string `protobuf:"bytes,3,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` + VersionContext *RequestVersionContext `protobuf:"bytes,4,opt,name=version_context,json=versionContext,proto3" json:"version_context,omitempty"` +} + +func (x *GetVectorsRequest) Reset() { + *x = GetVectorsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetVectorsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetVectorsRequest) ProtoMessage() {} + +func (x *GetVectorsRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetVectorsRequest.ProtoReflect.Descriptor instead. +func (*GetVectorsRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{30} +} + +func (x *GetVectorsRequest) GetIds() []string { + if x != nil { + return x.Ids + } + return nil +} + +func (x *GetVectorsRequest) GetSegmentId() string { + if x != nil { + return x.SegmentId + } + return "" +} + +func (x *GetVectorsRequest) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *GetVectorsRequest) GetVersionContext() *RequestVersionContext { + if x != nil { + return x.VersionContext + } + return nil +} + +type GetVectorsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Records []*VectorEmbeddingRecord `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"` +} + +func (x *GetVectorsResponse) Reset() { + *x = GetVectorsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetVectorsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetVectorsResponse) ProtoMessage() {} + +func (x *GetVectorsResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetVectorsResponse.ProtoReflect.Descriptor instead. +func (*GetVectorsResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{31} +} + +func (x *GetVectorsResponse) GetRecords() []*VectorEmbeddingRecord { + if x != nil { + return x.Records + } + return nil +} + +type VectorEmbeddingRecord struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Vector *Vector `protobuf:"bytes,3,opt,name=vector,proto3" json:"vector,omitempty"` // TODO: we need to rethink source of truth for vector dimensionality and encoding +} + +func (x *VectorEmbeddingRecord) Reset() { + *x = VectorEmbeddingRecord{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VectorEmbeddingRecord) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VectorEmbeddingRecord) ProtoMessage() {} + +func (x *VectorEmbeddingRecord) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VectorEmbeddingRecord.ProtoReflect.Descriptor instead. +func (*VectorEmbeddingRecord) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{32} +} + +func (x *VectorEmbeddingRecord) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *VectorEmbeddingRecord) GetVector() *Vector { + if x != nil { + return x.Vector + } + return nil +} + +type QueryVectorsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Vectors []*Vector `protobuf:"bytes,1,rep,name=vectors,proto3" json:"vectors,omitempty"` + K int32 `protobuf:"varint,2,opt,name=k,proto3" json:"k,omitempty"` + AllowedIds []string `protobuf:"bytes,3,rep,name=allowed_ids,json=allowedIds,proto3" json:"allowed_ids,omitempty"` + IncludeEmbeddings bool `protobuf:"varint,4,opt,name=include_embeddings,json=includeEmbeddings,proto3" json:"include_embeddings,omitempty"` + SegmentId string `protobuf:"bytes,5,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"` + CollectionId string `protobuf:"bytes,6,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` + VersionContext *RequestVersionContext `protobuf:"bytes,7,opt,name=version_context,json=versionContext,proto3" json:"version_context,omitempty"` // TODO: options as in types.py, its currently unused so can add later +} + +func (x *QueryVectorsRequest) Reset() { + *x = QueryVectorsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *QueryVectorsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*QueryVectorsRequest) ProtoMessage() {} + +func (x *QueryVectorsRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use QueryVectorsRequest.ProtoReflect.Descriptor instead. +func (*QueryVectorsRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{33} +} + +func (x *QueryVectorsRequest) GetVectors() []*Vector { + if x != nil { + return x.Vectors + } + return nil +} + +func (x *QueryVectorsRequest) GetK() int32 { + if x != nil { + return x.K + } + return 0 +} + +func (x *QueryVectorsRequest) GetAllowedIds() []string { + if x != nil { + return x.AllowedIds + } + return nil +} + +func (x *QueryVectorsRequest) GetIncludeEmbeddings() bool { + if x != nil { + return x.IncludeEmbeddings + } + return false +} + +func (x *QueryVectorsRequest) GetSegmentId() string { + if x != nil { + return x.SegmentId + } + return "" +} + +func (x *QueryVectorsRequest) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *QueryVectorsRequest) GetVersionContext() *RequestVersionContext { + if x != nil { + return x.VersionContext + } + return nil +} + +type QueryVectorsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Results []*VectorQueryResults `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"` +} + +func (x *QueryVectorsResponse) Reset() { + *x = QueryVectorsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *QueryVectorsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*QueryVectorsResponse) ProtoMessage() {} + +func (x *QueryVectorsResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use QueryVectorsResponse.ProtoReflect.Descriptor instead. +func (*QueryVectorsResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{34} +} + +func (x *QueryVectorsResponse) GetResults() []*VectorQueryResults { + if x != nil { + return x.Results + } + return nil +} + +type VectorQueryResults struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Results []*VectorQueryResult `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"` +} + +func (x *VectorQueryResults) Reset() { + *x = VectorQueryResults{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VectorQueryResults) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VectorQueryResults) ProtoMessage() {} + +func (x *VectorQueryResults) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VectorQueryResults.ProtoReflect.Descriptor instead. +func (*VectorQueryResults) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{35} +} + +func (x *VectorQueryResults) GetResults() []*VectorQueryResult { + if x != nil { + return x.Results + } + return nil +} + +type VectorQueryResult struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Distance float32 `protobuf:"fixed32,3,opt,name=distance,proto3" json:"distance,omitempty"` + Vector *Vector `protobuf:"bytes,4,opt,name=vector,proto3,oneof" json:"vector,omitempty"` +} + +func (x *VectorQueryResult) Reset() { + *x = VectorQueryResult{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_chroma_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VectorQueryResult) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VectorQueryResult) ProtoMessage() {} + +func (x *VectorQueryResult) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_chroma_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VectorQueryResult.ProtoReflect.Descriptor instead. +func (*VectorQueryResult) Descriptor() ([]byte, []int) { + return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{36} +} + +func (x *VectorQueryResult) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *VectorQueryResult) GetDistance() float32 { + if x != nil { + return x.Distance + } + return 0 +} + +func (x *VectorQueryResult) GetVector() *Vector { + if x != nil { + return x.Vector + } + return nil +} + +var File_chromadb_proto_chroma_proto protoreflect.FileDescriptor + +var file_chromadb_proto_chroma_proto_rawDesc = []byte{ + 0x0a, 0x1b, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x22, 0x72, 0x0a, 0x06, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, + 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, + 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x76, + 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x32, 0x0a, 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, + 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, + 0x2e, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x52, + 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x22, 0x21, 0x0a, 0x09, 0x46, 0x69, 0x6c, + 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x22, 0xcf, 0x02, 0x0a, + 0x07, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x05, + 0x73, 0x63, 0x6f, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x68, + 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x70, + 0x65, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, + 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, + 0x01, 0x12, 0x3d, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, + 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, + 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, + 0x1a, 0x4f, 0x0a, 0x0e, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x46, 0x69, 0x6c, + 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xce, + 0x02, 0x0a, 0x0a, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x4a, 0x73, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, + 0x12, 0x21, 0x0a, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x48, 0x01, 0x52, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, + 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x5f, 0x70, + 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6c, + 0x6f, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, + 0x46, 0x0a, 0x08, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x22, 0x1c, 0x0a, 0x06, 0x54, 0x65, 0x6e, 0x61, 0x6e, + 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa6, 0x01, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, + 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x56, + 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6c, + 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xac, + 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x12, 0x40, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x1a, 0x58, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x31, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd0, 0x01, + 0x0a, 0x0f, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, + 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x2b, 0x0a, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x48, 0x00, 0x52, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x37, + 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x01, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x63, 0x68, 0x72, + 0x6f, 0x6d, 0x61, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x76, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x22, 0x69, 0x0a, 0x15, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x2d, 0x0a, 0x12, 0x63, 0x6f, 0x6c, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x5f, + 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, + 0x6c, 0x6f, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa1, 0x01, 0x0a, 0x13, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x0f, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, + 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, + 0x2c, 0x0a, 0x14, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xad, 0x03, + 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x77, 0x68, 0x65, 0x72, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x57, 0x68, + 0x65, 0x72, 0x65, 0x52, 0x05, 0x77, 0x68, 0x65, 0x72, 0x65, 0x12, 0x3c, 0x0a, 0x0e, 0x77, 0x68, + 0x65, 0x72, 0x65, 0x5f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x57, 0x68, 0x65, 0x72, + 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x77, 0x68, 0x65, 0x72, 0x65, + 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x48, 0x00, 0x52, 0x03, 0x69, 0x64, 0x73, 0x88, 0x01, 0x01, + 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, + 0x01, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x6f, + 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x06, 0x6f, + 0x66, 0x66, 0x73, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x29, 0x0a, + 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x46, 0x0a, 0x0f, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x52, 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x69, 0x64, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d, + 0x69, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x52, 0x0a, + 0x15, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, + 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, + 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, + 0x73, 0x22, 0x5d, 0x0a, 0x17, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6d, 0x62, + 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x08, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x22, 0x1b, 0x0a, 0x07, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x69, + 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x69, 0x64, 0x73, 0x22, 0x95, 0x01, + 0x0a, 0x0d, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, + 0x35, 0x0a, 0x06, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x57, + 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x06, + 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, + 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, + 0x61, 0x2e, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x43, + 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, + 0x72, 0x65, 0x6e, 0x42, 0x10, 0x0a, 0x0e, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x64, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x6c, 0x0a, 0x13, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x57, + 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, + 0x6f, 0x6d, 0x61, 0x2e, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, + 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x22, 0x7f, 0x0a, 0x15, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x31, 0x0a, 0x08, + 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, + 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, + 0x33, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x17, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x65, + 0x61, 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x22, 0x8e, 0x01, 0x0a, 0x05, 0x57, 0x68, 0x65, 0x72, 0x65, 0x12, 0x47, + 0x0a, 0x11, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, + 0x73, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, + 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, + 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, + 0x72, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x57, 0x68, 0x65, 0x72, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, + 0x48, 0x00, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x42, 0x07, 0x0a, 0x05, + 0x77, 0x68, 0x65, 0x72, 0x65, 0x22, 0xac, 0x05, 0x0a, 0x10, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x54, 0x0a, 0x15, + 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x68, + 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, + 0x67, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x13, 0x73, + 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x6e, 0x64, 0x12, 0x4e, 0x0a, 0x13, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x69, 0x73, + 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4c, + 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, + 0x11, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x6e, 0x64, 0x12, 0x4b, 0x0a, 0x12, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x74, + 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x49, 0x6e, + 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x73, + 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, + 0x45, 0x0a, 0x10, 0x69, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x49, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, + 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4f, + 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x54, 0x0a, 0x15, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, + 0x5f, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, + 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x61, + 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x13, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x44, + 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x4e, 0x0a, 0x13, + 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, + 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x11, 0x64, 0x6f, 0x75, 0x62, 0x6c, + 0x65, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x48, 0x0a, 0x11, + 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, + 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, + 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, + 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0f, 0x62, 0x6f, 0x6f, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x4f, + 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x4e, 0x0a, 0x13, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, + 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x69, 0x6e, + 0x67, 0x6c, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, + 0x6e, 0x48, 0x00, 0x52, 0x11, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x4f, + 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, + 0x69, 0x73, 0x6f, 0x6e, 0x22, 0x6f, 0x0a, 0x0d, 0x57, 0x68, 0x65, 0x72, 0x65, 0x43, 0x68, 0x69, + 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x29, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, + 0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, + 0x2e, 0x57, 0x68, 0x65, 0x72, 0x65, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, + 0x12, 0x33, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, + 0x65, 0x61, 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x69, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4c, + 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x16, 0x0a, + 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0d, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x52, 0x0c, 0x6c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x22, 0x69, 0x0a, 0x16, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, + 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, + 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x67, 0x0a, 0x14, 0x53, + 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, + 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, + 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, + 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, + 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x22, 0x66, 0x0a, 0x11, 0x49, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x43, + 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x73, 0x12, 0x39, 0x0a, 0x0d, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, + 0x61, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x0c, + 0x6c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xce, 0x01, 0x0a, + 0x13, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, + 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4a, 0x0a, 0x12, 0x67, 0x65, + 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, + 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, + 0x72, 0x48, 0x00, 0x52, 0x11, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x70, + 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x47, 0x0a, 0x11, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x18, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x10, 0x6e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, + 0x0c, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x69, 0x0a, + 0x14, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, + 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x01, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x39, 0x0a, + 0x0d, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4c, 0x69, + 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x0c, 0x6c, 0x69, 0x73, 0x74, + 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x67, 0x0a, 0x12, 0x42, 0x6f, 0x6f, 0x6c, + 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x16, + 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x08, 0x52, 0x06, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0d, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, + 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x52, 0x0c, 0x6c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, + 0x72, 0x22, 0xd1, 0x01, 0x0a, 0x16, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x44, 0x6f, 0x75, 0x62, + 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x12, 0x4a, 0x0a, 0x12, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x63, 0x6f, + 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, + 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x11, 0x67, 0x65, 0x6e, + 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x47, + 0x0a, 0x11, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x6d, + 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x0c, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xb1, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x69, + 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x69, 0x64, 0x73, 0x12, 0x1d, 0x0a, + 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, + 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x12, 0x46, 0x0a, 0x0f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x78, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, + 0x6f, 0x6d, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x4d, 0x0a, 0x12, 0x47, 0x65, 0x74, + 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x37, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, + 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x22, 0x4f, 0x0a, 0x15, 0x56, 0x65, 0x63, 0x74, + 0x6f, 0x72, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, + 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x26, 0x0a, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x52, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0xa9, 0x02, 0x0a, 0x13, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x28, 0x0a, 0x07, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, + 0x6f, 0x72, 0x52, 0x07, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x0c, 0x0a, 0x01, 0x6b, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, + 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x49, 0x64, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x69, 0x6e, + 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x73, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x45, + 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, + 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, + 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x46, 0x0a, + 0x0f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, + 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x4c, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x65, + 0x63, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, + 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x51, 0x75, + 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x73, 0x22, 0x49, 0x0a, 0x12, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x33, 0x0a, 0x07, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x68, 0x72, + 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x77, + 0x0a, 0x11, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, + 0x2b, 0x0a, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x48, + 0x00, 0x52, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, + 0x5f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2a, 0x38, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x44, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, + 0x06, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x50, 0x53, + 0x45, 0x52, 0x54, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, + 0x03, 0x2a, 0x28, 0x0a, 0x0e, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x45, 0x6e, 0x63, 0x6f, 0x64, + 0x69, 0x6e, 0x67, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x33, 0x32, 0x10, 0x00, + 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x01, 0x2a, 0x40, 0x0a, 0x0c, 0x53, + 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x56, + 0x45, 0x43, 0x54, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x45, 0x54, 0x41, 0x44, + 0x41, 0x54, 0x41, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x10, + 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x51, 0x4c, 0x49, 0x54, 0x45, 0x10, 0x03, 0x2a, 0x37, 0x0a, + 0x15, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x4f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4e, 0x54, 0x41, 0x49, + 0x4e, 0x53, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4e, 0x4f, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x54, + 0x41, 0x49, 0x4e, 0x53, 0x10, 0x01, 0x2a, 0x22, 0x0a, 0x0f, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, + 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x44, + 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x52, 0x10, 0x01, 0x2a, 0x1f, 0x0a, 0x0c, 0x4c, 0x69, + 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, + 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x49, 0x4e, 0x10, 0x01, 0x2a, 0x23, 0x0a, 0x11, 0x47, + 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x12, 0x06, 0x0a, 0x02, 0x45, 0x51, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x45, 0x10, 0x01, + 0x2a, 0x34, 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x12, 0x06, 0x0a, 0x02, 0x47, 0x54, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, + 0x47, 0x54, 0x45, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x4c, 0x54, 0x10, 0x02, 0x12, 0x07, 0x0a, + 0x03, 0x4c, 0x54, 0x45, 0x10, 0x03, 0x32, 0xad, 0x01, 0x0a, 0x0e, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x4e, 0x0a, 0x0d, 0x51, 0x75, 0x65, + 0x72, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1c, 0x2e, 0x63, 0x68, 0x72, + 0x6f, 0x6d, 0x61, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, + 0x61, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0c, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x1b, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x32, 0xa2, 0x01, 0x0a, 0x0c, 0x56, 0x65, 0x63, 0x74, 0x6f, + 0x72, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x45, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x56, 0x65, + 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x19, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, + 0x65, 0x74, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, + 0x0a, 0x0c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x1b, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x65, 0x63, + 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x68, + 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x3a, 0x5a, 0x38, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, + 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2f, 0x67, 0x6f, 0x2f, + 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, + 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_chromadb_proto_chroma_proto_rawDescOnce sync.Once + file_chromadb_proto_chroma_proto_rawDescData = file_chromadb_proto_chroma_proto_rawDesc +) + +func file_chromadb_proto_chroma_proto_rawDescGZIP() []byte { + file_chromadb_proto_chroma_proto_rawDescOnce.Do(func() { + file_chromadb_proto_chroma_proto_rawDescData = protoimpl.X.CompressGZIP(file_chromadb_proto_chroma_proto_rawDescData) + }) + return file_chromadb_proto_chroma_proto_rawDescData +} + +var file_chromadb_proto_chroma_proto_enumTypes = make([]protoimpl.EnumInfo, 8) +var file_chromadb_proto_chroma_proto_msgTypes = make([]protoimpl.MessageInfo, 39) +var file_chromadb_proto_chroma_proto_goTypes = []any{ + (Operation)(0), // 0: chroma.Operation + (ScalarEncoding)(0), // 1: chroma.ScalarEncoding + (SegmentScope)(0), // 2: chroma.SegmentScope + (WhereDocumentOperator)(0), // 3: chroma.WhereDocumentOperator + (BooleanOperator)(0), // 4: chroma.BooleanOperator + (ListOperator)(0), // 5: chroma.ListOperator + (GenericComparator)(0), // 6: chroma.GenericComparator + (NumberComparator)(0), // 7: chroma.NumberComparator + (*Vector)(nil), // 8: chroma.Vector + (*FilePaths)(nil), // 9: chroma.FilePaths + (*Segment)(nil), // 10: chroma.Segment + (*Collection)(nil), // 11: chroma.Collection + (*Database)(nil), // 12: chroma.Database + (*Tenant)(nil), // 13: chroma.Tenant + (*UpdateMetadataValue)(nil), // 14: chroma.UpdateMetadataValue + (*UpdateMetadata)(nil), // 15: chroma.UpdateMetadata + (*OperationRecord)(nil), // 16: chroma.OperationRecord + (*RequestVersionContext)(nil), // 17: chroma.RequestVersionContext + (*CountRecordsRequest)(nil), // 18: chroma.CountRecordsRequest + (*CountRecordsResponse)(nil), // 19: chroma.CountRecordsResponse + (*QueryMetadataRequest)(nil), // 20: chroma.QueryMetadataRequest + (*QueryMetadataResponse)(nil), // 21: chroma.QueryMetadataResponse + (*MetadataEmbeddingRecord)(nil), // 22: chroma.MetadataEmbeddingRecord + (*UserIds)(nil), // 23: chroma.UserIds + (*WhereDocument)(nil), // 24: chroma.WhereDocument + (*DirectWhereDocument)(nil), // 25: chroma.DirectWhereDocument + (*WhereDocumentChildren)(nil), // 26: chroma.WhereDocumentChildren + (*Where)(nil), // 27: chroma.Where + (*DirectComparison)(nil), // 28: chroma.DirectComparison + (*WhereChildren)(nil), // 29: chroma.WhereChildren + (*StringListComparison)(nil), // 30: chroma.StringListComparison + (*SingleStringComparison)(nil), // 31: chroma.SingleStringComparison + (*SingleBoolComparison)(nil), // 32: chroma.SingleBoolComparison + (*IntListComparison)(nil), // 33: chroma.IntListComparison + (*SingleIntComparison)(nil), // 34: chroma.SingleIntComparison + (*DoubleListComparison)(nil), // 35: chroma.DoubleListComparison + (*BoolListComparison)(nil), // 36: chroma.BoolListComparison + (*SingleDoubleComparison)(nil), // 37: chroma.SingleDoubleComparison + (*GetVectorsRequest)(nil), // 38: chroma.GetVectorsRequest + (*GetVectorsResponse)(nil), // 39: chroma.GetVectorsResponse + (*VectorEmbeddingRecord)(nil), // 40: chroma.VectorEmbeddingRecord + (*QueryVectorsRequest)(nil), // 41: chroma.QueryVectorsRequest + (*QueryVectorsResponse)(nil), // 42: chroma.QueryVectorsResponse + (*VectorQueryResults)(nil), // 43: chroma.VectorQueryResults + (*VectorQueryResult)(nil), // 44: chroma.VectorQueryResult + nil, // 45: chroma.Segment.FilePathsEntry + nil, // 46: chroma.UpdateMetadata.MetadataEntry +} +var file_chromadb_proto_chroma_proto_depIdxs = []int32{ + 1, // 0: chroma.Vector.encoding:type_name -> chroma.ScalarEncoding + 2, // 1: chroma.Segment.scope:type_name -> chroma.SegmentScope + 15, // 2: chroma.Segment.metadata:type_name -> chroma.UpdateMetadata + 45, // 3: chroma.Segment.file_paths:type_name -> chroma.Segment.FilePathsEntry + 15, // 4: chroma.Collection.metadata:type_name -> chroma.UpdateMetadata + 46, // 5: chroma.UpdateMetadata.metadata:type_name -> chroma.UpdateMetadata.MetadataEntry + 8, // 6: chroma.OperationRecord.vector:type_name -> chroma.Vector + 15, // 7: chroma.OperationRecord.metadata:type_name -> chroma.UpdateMetadata + 0, // 8: chroma.OperationRecord.operation:type_name -> chroma.Operation + 17, // 9: chroma.CountRecordsRequest.version_context:type_name -> chroma.RequestVersionContext + 27, // 10: chroma.QueryMetadataRequest.where:type_name -> chroma.Where + 24, // 11: chroma.QueryMetadataRequest.where_document:type_name -> chroma.WhereDocument + 23, // 12: chroma.QueryMetadataRequest.ids:type_name -> chroma.UserIds + 17, // 13: chroma.QueryMetadataRequest.version_context:type_name -> chroma.RequestVersionContext + 22, // 14: chroma.QueryMetadataResponse.records:type_name -> chroma.MetadataEmbeddingRecord + 15, // 15: chroma.MetadataEmbeddingRecord.metadata:type_name -> chroma.UpdateMetadata + 25, // 16: chroma.WhereDocument.direct:type_name -> chroma.DirectWhereDocument + 26, // 17: chroma.WhereDocument.children:type_name -> chroma.WhereDocumentChildren + 3, // 18: chroma.DirectWhereDocument.operator:type_name -> chroma.WhereDocumentOperator + 24, // 19: chroma.WhereDocumentChildren.children:type_name -> chroma.WhereDocument + 4, // 20: chroma.WhereDocumentChildren.operator:type_name -> chroma.BooleanOperator + 28, // 21: chroma.Where.direct_comparison:type_name -> chroma.DirectComparison + 29, // 22: chroma.Where.children:type_name -> chroma.WhereChildren + 31, // 23: chroma.DirectComparison.single_string_operand:type_name -> chroma.SingleStringComparison + 30, // 24: chroma.DirectComparison.string_list_operand:type_name -> chroma.StringListComparison + 34, // 25: chroma.DirectComparison.single_int_operand:type_name -> chroma.SingleIntComparison + 33, // 26: chroma.DirectComparison.int_list_operand:type_name -> chroma.IntListComparison + 37, // 27: chroma.DirectComparison.single_double_operand:type_name -> chroma.SingleDoubleComparison + 35, // 28: chroma.DirectComparison.double_list_operand:type_name -> chroma.DoubleListComparison + 36, // 29: chroma.DirectComparison.bool_list_operand:type_name -> chroma.BoolListComparison + 32, // 30: chroma.DirectComparison.single_bool_operand:type_name -> chroma.SingleBoolComparison + 27, // 31: chroma.WhereChildren.children:type_name -> chroma.Where + 4, // 32: chroma.WhereChildren.operator:type_name -> chroma.BooleanOperator + 5, // 33: chroma.StringListComparison.list_operator:type_name -> chroma.ListOperator + 6, // 34: chroma.SingleStringComparison.comparator:type_name -> chroma.GenericComparator + 6, // 35: chroma.SingleBoolComparison.comparator:type_name -> chroma.GenericComparator + 5, // 36: chroma.IntListComparison.list_operator:type_name -> chroma.ListOperator + 6, // 37: chroma.SingleIntComparison.generic_comparator:type_name -> chroma.GenericComparator + 7, // 38: chroma.SingleIntComparison.number_comparator:type_name -> chroma.NumberComparator + 5, // 39: chroma.DoubleListComparison.list_operator:type_name -> chroma.ListOperator + 5, // 40: chroma.BoolListComparison.list_operator:type_name -> chroma.ListOperator + 6, // 41: chroma.SingleDoubleComparison.generic_comparator:type_name -> chroma.GenericComparator + 7, // 42: chroma.SingleDoubleComparison.number_comparator:type_name -> chroma.NumberComparator + 17, // 43: chroma.GetVectorsRequest.version_context:type_name -> chroma.RequestVersionContext + 40, // 44: chroma.GetVectorsResponse.records:type_name -> chroma.VectorEmbeddingRecord + 8, // 45: chroma.VectorEmbeddingRecord.vector:type_name -> chroma.Vector + 8, // 46: chroma.QueryVectorsRequest.vectors:type_name -> chroma.Vector + 17, // 47: chroma.QueryVectorsRequest.version_context:type_name -> chroma.RequestVersionContext + 43, // 48: chroma.QueryVectorsResponse.results:type_name -> chroma.VectorQueryResults + 44, // 49: chroma.VectorQueryResults.results:type_name -> chroma.VectorQueryResult + 8, // 50: chroma.VectorQueryResult.vector:type_name -> chroma.Vector + 9, // 51: chroma.Segment.FilePathsEntry.value:type_name -> chroma.FilePaths + 14, // 52: chroma.UpdateMetadata.MetadataEntry.value:type_name -> chroma.UpdateMetadataValue + 20, // 53: chroma.MetadataReader.QueryMetadata:input_type -> chroma.QueryMetadataRequest + 18, // 54: chroma.MetadataReader.CountRecords:input_type -> chroma.CountRecordsRequest + 38, // 55: chroma.VectorReader.GetVectors:input_type -> chroma.GetVectorsRequest + 41, // 56: chroma.VectorReader.QueryVectors:input_type -> chroma.QueryVectorsRequest + 21, // 57: chroma.MetadataReader.QueryMetadata:output_type -> chroma.QueryMetadataResponse + 19, // 58: chroma.MetadataReader.CountRecords:output_type -> chroma.CountRecordsResponse + 39, // 59: chroma.VectorReader.GetVectors:output_type -> chroma.GetVectorsResponse + 42, // 60: chroma.VectorReader.QueryVectors:output_type -> chroma.QueryVectorsResponse + 57, // [57:61] is the sub-list for method output_type + 53, // [53:57] is the sub-list for method input_type + 53, // [53:53] is the sub-list for extension type_name + 53, // [53:53] is the sub-list for extension extendee + 0, // [0:53] is the sub-list for field type_name +} + +func init() { file_chromadb_proto_chroma_proto_init() } +func file_chromadb_proto_chroma_proto_init() { + if File_chromadb_proto_chroma_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_chromadb_proto_chroma_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*Vector); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*FilePaths); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*Segment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[3].Exporter = func(v any, i int) any { + switch v := v.(*Collection); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[4].Exporter = func(v any, i int) any { + switch v := v.(*Database); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[5].Exporter = func(v any, i int) any { + switch v := v.(*Tenant); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[6].Exporter = func(v any, i int) any { + switch v := v.(*UpdateMetadataValue); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[7].Exporter = func(v any, i int) any { + switch v := v.(*UpdateMetadata); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[8].Exporter = func(v any, i int) any { + switch v := v.(*OperationRecord); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[9].Exporter = func(v any, i int) any { + switch v := v.(*RequestVersionContext); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[10].Exporter = func(v any, i int) any { + switch v := v.(*CountRecordsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[11].Exporter = func(v any, i int) any { + switch v := v.(*CountRecordsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[12].Exporter = func(v any, i int) any { + switch v := v.(*QueryMetadataRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[13].Exporter = func(v any, i int) any { + switch v := v.(*QueryMetadataResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[14].Exporter = func(v any, i int) any { + switch v := v.(*MetadataEmbeddingRecord); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[15].Exporter = func(v any, i int) any { + switch v := v.(*UserIds); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[16].Exporter = func(v any, i int) any { + switch v := v.(*WhereDocument); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[17].Exporter = func(v any, i int) any { + switch v := v.(*DirectWhereDocument); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[18].Exporter = func(v any, i int) any { + switch v := v.(*WhereDocumentChildren); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[19].Exporter = func(v any, i int) any { + switch v := v.(*Where); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[20].Exporter = func(v any, i int) any { + switch v := v.(*DirectComparison); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[21].Exporter = func(v any, i int) any { + switch v := v.(*WhereChildren); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[22].Exporter = func(v any, i int) any { + switch v := v.(*StringListComparison); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[23].Exporter = func(v any, i int) any { + switch v := v.(*SingleStringComparison); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[24].Exporter = func(v any, i int) any { + switch v := v.(*SingleBoolComparison); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[25].Exporter = func(v any, i int) any { + switch v := v.(*IntListComparison); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[26].Exporter = func(v any, i int) any { + switch v := v.(*SingleIntComparison); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[27].Exporter = func(v any, i int) any { + switch v := v.(*DoubleListComparison); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[28].Exporter = func(v any, i int) any { + switch v := v.(*BoolListComparison); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[29].Exporter = func(v any, i int) any { + switch v := v.(*SingleDoubleComparison); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[30].Exporter = func(v any, i int) any { + switch v := v.(*GetVectorsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[31].Exporter = func(v any, i int) any { + switch v := v.(*GetVectorsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[32].Exporter = func(v any, i int) any { + switch v := v.(*VectorEmbeddingRecord); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[33].Exporter = func(v any, i int) any { + switch v := v.(*QueryVectorsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[34].Exporter = func(v any, i int) any { + switch v := v.(*QueryVectorsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[35].Exporter = func(v any, i int) any { + switch v := v.(*VectorQueryResults); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_chroma_proto_msgTypes[36].Exporter = func(v any, i int) any { + switch v := v.(*VectorQueryResult); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_chromadb_proto_chroma_proto_msgTypes[2].OneofWrappers = []any{} + file_chromadb_proto_chroma_proto_msgTypes[3].OneofWrappers = []any{} + file_chromadb_proto_chroma_proto_msgTypes[6].OneofWrappers = []any{ + (*UpdateMetadataValue_StringValue)(nil), + (*UpdateMetadataValue_IntValue)(nil), + (*UpdateMetadataValue_FloatValue)(nil), + (*UpdateMetadataValue_BoolValue)(nil), + } + file_chromadb_proto_chroma_proto_msgTypes[8].OneofWrappers = []any{} + file_chromadb_proto_chroma_proto_msgTypes[12].OneofWrappers = []any{} + file_chromadb_proto_chroma_proto_msgTypes[16].OneofWrappers = []any{ + (*WhereDocument_Direct)(nil), + (*WhereDocument_Children)(nil), + } + file_chromadb_proto_chroma_proto_msgTypes[19].OneofWrappers = []any{ + (*Where_DirectComparison)(nil), + (*Where_Children)(nil), + } + file_chromadb_proto_chroma_proto_msgTypes[20].OneofWrappers = []any{ + (*DirectComparison_SingleStringOperand)(nil), + (*DirectComparison_StringListOperand)(nil), + (*DirectComparison_SingleIntOperand)(nil), + (*DirectComparison_IntListOperand)(nil), + (*DirectComparison_SingleDoubleOperand)(nil), + (*DirectComparison_DoubleListOperand)(nil), + (*DirectComparison_BoolListOperand)(nil), + (*DirectComparison_SingleBoolOperand)(nil), + } + file_chromadb_proto_chroma_proto_msgTypes[26].OneofWrappers = []any{ + (*SingleIntComparison_GenericComparator)(nil), + (*SingleIntComparison_NumberComparator)(nil), + } + file_chromadb_proto_chroma_proto_msgTypes[29].OneofWrappers = []any{ + (*SingleDoubleComparison_GenericComparator)(nil), + (*SingleDoubleComparison_NumberComparator)(nil), + } + file_chromadb_proto_chroma_proto_msgTypes[36].OneofWrappers = []any{} + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_chromadb_proto_chroma_proto_rawDesc, + NumEnums: 8, + NumMessages: 39, + NumExtensions: 0, + NumServices: 2, + }, + GoTypes: file_chromadb_proto_chroma_proto_goTypes, + DependencyIndexes: file_chromadb_proto_chroma_proto_depIdxs, + EnumInfos: file_chromadb_proto_chroma_proto_enumTypes, + MessageInfos: file_chromadb_proto_chroma_proto_msgTypes, + }.Build() + File_chromadb_proto_chroma_proto = out.File + file_chromadb_proto_chroma_proto_rawDesc = nil + file_chromadb_proto_chroma_proto_goTypes = nil + file_chromadb_proto_chroma_proto_depIdxs = nil +} diff --git a/go/pkg/proto/coordinatorpb/chroma_grpc.pb.go b/go/pkg/proto/coordinatorpb/chroma_grpc.pb.go new file mode 100644 index 00000000000..72402d84df0 --- /dev/null +++ b/go/pkg/proto/coordinatorpb/chroma_grpc.pb.go @@ -0,0 +1,299 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.5.1 +// - protoc v5.28.2 +// source: chromadb/proto/chroma.proto + +package coordinatorpb + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + MetadataReader_QueryMetadata_FullMethodName = "/chroma.MetadataReader/QueryMetadata" + MetadataReader_CountRecords_FullMethodName = "/chroma.MetadataReader/CountRecords" +) + +// MetadataReaderClient is the client API for MetadataReader service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type MetadataReaderClient interface { + QueryMetadata(ctx context.Context, in *QueryMetadataRequest, opts ...grpc.CallOption) (*QueryMetadataResponse, error) + CountRecords(ctx context.Context, in *CountRecordsRequest, opts ...grpc.CallOption) (*CountRecordsResponse, error) +} + +type metadataReaderClient struct { + cc grpc.ClientConnInterface +} + +func NewMetadataReaderClient(cc grpc.ClientConnInterface) MetadataReaderClient { + return &metadataReaderClient{cc} +} + +func (c *metadataReaderClient) QueryMetadata(ctx context.Context, in *QueryMetadataRequest, opts ...grpc.CallOption) (*QueryMetadataResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(QueryMetadataResponse) + err := c.cc.Invoke(ctx, MetadataReader_QueryMetadata_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *metadataReaderClient) CountRecords(ctx context.Context, in *CountRecordsRequest, opts ...grpc.CallOption) (*CountRecordsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(CountRecordsResponse) + err := c.cc.Invoke(ctx, MetadataReader_CountRecords_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// MetadataReaderServer is the server API for MetadataReader service. +// All implementations must embed UnimplementedMetadataReaderServer +// for forward compatibility. +type MetadataReaderServer interface { + QueryMetadata(context.Context, *QueryMetadataRequest) (*QueryMetadataResponse, error) + CountRecords(context.Context, *CountRecordsRequest) (*CountRecordsResponse, error) + mustEmbedUnimplementedMetadataReaderServer() +} + +// UnimplementedMetadataReaderServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedMetadataReaderServer struct{} + +func (UnimplementedMetadataReaderServer) QueryMetadata(context.Context, *QueryMetadataRequest) (*QueryMetadataResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method QueryMetadata not implemented") +} +func (UnimplementedMetadataReaderServer) CountRecords(context.Context, *CountRecordsRequest) (*CountRecordsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CountRecords not implemented") +} +func (UnimplementedMetadataReaderServer) mustEmbedUnimplementedMetadataReaderServer() {} +func (UnimplementedMetadataReaderServer) testEmbeddedByValue() {} + +// UnsafeMetadataReaderServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to MetadataReaderServer will +// result in compilation errors. +type UnsafeMetadataReaderServer interface { + mustEmbedUnimplementedMetadataReaderServer() +} + +func RegisterMetadataReaderServer(s grpc.ServiceRegistrar, srv MetadataReaderServer) { + // If the following call pancis, it indicates UnimplementedMetadataReaderServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&MetadataReader_ServiceDesc, srv) +} + +func _MetadataReader_QueryMetadata_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryMetadataRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MetadataReaderServer).QueryMetadata(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: MetadataReader_QueryMetadata_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MetadataReaderServer).QueryMetadata(ctx, req.(*QueryMetadataRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _MetadataReader_CountRecords_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CountRecordsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(MetadataReaderServer).CountRecords(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: MetadataReader_CountRecords_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(MetadataReaderServer).CountRecords(ctx, req.(*CountRecordsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// MetadataReader_ServiceDesc is the grpc.ServiceDesc for MetadataReader service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var MetadataReader_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "chroma.MetadataReader", + HandlerType: (*MetadataReaderServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "QueryMetadata", + Handler: _MetadataReader_QueryMetadata_Handler, + }, + { + MethodName: "CountRecords", + Handler: _MetadataReader_CountRecords_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "chromadb/proto/chroma.proto", +} + +const ( + VectorReader_GetVectors_FullMethodName = "/chroma.VectorReader/GetVectors" + VectorReader_QueryVectors_FullMethodName = "/chroma.VectorReader/QueryVectors" +) + +// VectorReaderClient is the client API for VectorReader service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type VectorReaderClient interface { + GetVectors(ctx context.Context, in *GetVectorsRequest, opts ...grpc.CallOption) (*GetVectorsResponse, error) + QueryVectors(ctx context.Context, in *QueryVectorsRequest, opts ...grpc.CallOption) (*QueryVectorsResponse, error) +} + +type vectorReaderClient struct { + cc grpc.ClientConnInterface +} + +func NewVectorReaderClient(cc grpc.ClientConnInterface) VectorReaderClient { + return &vectorReaderClient{cc} +} + +func (c *vectorReaderClient) GetVectors(ctx context.Context, in *GetVectorsRequest, opts ...grpc.CallOption) (*GetVectorsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetVectorsResponse) + err := c.cc.Invoke(ctx, VectorReader_GetVectors_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *vectorReaderClient) QueryVectors(ctx context.Context, in *QueryVectorsRequest, opts ...grpc.CallOption) (*QueryVectorsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(QueryVectorsResponse) + err := c.cc.Invoke(ctx, VectorReader_QueryVectors_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// VectorReaderServer is the server API for VectorReader service. +// All implementations must embed UnimplementedVectorReaderServer +// for forward compatibility. +type VectorReaderServer interface { + GetVectors(context.Context, *GetVectorsRequest) (*GetVectorsResponse, error) + QueryVectors(context.Context, *QueryVectorsRequest) (*QueryVectorsResponse, error) + mustEmbedUnimplementedVectorReaderServer() +} + +// UnimplementedVectorReaderServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedVectorReaderServer struct{} + +func (UnimplementedVectorReaderServer) GetVectors(context.Context, *GetVectorsRequest) (*GetVectorsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetVectors not implemented") +} +func (UnimplementedVectorReaderServer) QueryVectors(context.Context, *QueryVectorsRequest) (*QueryVectorsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method QueryVectors not implemented") +} +func (UnimplementedVectorReaderServer) mustEmbedUnimplementedVectorReaderServer() {} +func (UnimplementedVectorReaderServer) testEmbeddedByValue() {} + +// UnsafeVectorReaderServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to VectorReaderServer will +// result in compilation errors. +type UnsafeVectorReaderServer interface { + mustEmbedUnimplementedVectorReaderServer() +} + +func RegisterVectorReaderServer(s grpc.ServiceRegistrar, srv VectorReaderServer) { + // If the following call pancis, it indicates UnimplementedVectorReaderServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&VectorReader_ServiceDesc, srv) +} + +func _VectorReader_GetVectors_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetVectorsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(VectorReaderServer).GetVectors(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: VectorReader_GetVectors_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(VectorReaderServer).GetVectors(ctx, req.(*GetVectorsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _VectorReader_QueryVectors_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(QueryVectorsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(VectorReaderServer).QueryVectors(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: VectorReader_QueryVectors_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(VectorReaderServer).QueryVectors(ctx, req.(*QueryVectorsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// VectorReader_ServiceDesc is the grpc.ServiceDesc for VectorReader service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var VectorReader_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "chroma.VectorReader", + HandlerType: (*VectorReaderServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GetVectors", + Handler: _VectorReader_GetVectors_Handler, + }, + { + MethodName: "QueryVectors", + Handler: _VectorReader_QueryVectors_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "chromadb/proto/chroma.proto", +} diff --git a/go/pkg/proto/coordinatorpb/coordinator.pb.go b/go/pkg/proto/coordinatorpb/coordinator.pb.go new file mode 100644 index 00000000000..3c44b540d9b --- /dev/null +++ b/go/pkg/proto/coordinatorpb/coordinator.pb.go @@ -0,0 +1,2970 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc v5.28.2 +// source: chromadb/proto/coordinator.proto + +package coordinatorpb + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + emptypb "google.golang.org/protobuf/types/known/emptypb" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type CreateDatabaseRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Tenant string `protobuf:"bytes,3,opt,name=tenant,proto3" json:"tenant,omitempty"` +} + +func (x *CreateDatabaseRequest) Reset() { + *x = CreateDatabaseRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateDatabaseRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateDatabaseRequest) ProtoMessage() {} + +func (x *CreateDatabaseRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateDatabaseRequest.ProtoReflect.Descriptor instead. +func (*CreateDatabaseRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{0} +} + +func (x *CreateDatabaseRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *CreateDatabaseRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *CreateDatabaseRequest) GetTenant() string { + if x != nil { + return x.Tenant + } + return "" +} + +type CreateDatabaseResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CreateDatabaseResponse) Reset() { + *x = CreateDatabaseResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateDatabaseResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateDatabaseResponse) ProtoMessage() {} + +func (x *CreateDatabaseResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateDatabaseResponse.ProtoReflect.Descriptor instead. +func (*CreateDatabaseResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{1} +} + +type GetDatabaseRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Tenant string `protobuf:"bytes,2,opt,name=tenant,proto3" json:"tenant,omitempty"` +} + +func (x *GetDatabaseRequest) Reset() { + *x = GetDatabaseRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetDatabaseRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetDatabaseRequest) ProtoMessage() {} + +func (x *GetDatabaseRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetDatabaseRequest.ProtoReflect.Descriptor instead. +func (*GetDatabaseRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{2} +} + +func (x *GetDatabaseRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *GetDatabaseRequest) GetTenant() string { + if x != nil { + return x.Tenant + } + return "" +} + +type GetDatabaseResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Database *Database `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"` +} + +func (x *GetDatabaseResponse) Reset() { + *x = GetDatabaseResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetDatabaseResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetDatabaseResponse) ProtoMessage() {} + +func (x *GetDatabaseResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetDatabaseResponse.ProtoReflect.Descriptor instead. +func (*GetDatabaseResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{3} +} + +func (x *GetDatabaseResponse) GetDatabase() *Database { + if x != nil { + return x.Database + } + return nil +} + +type CreateTenantRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // Names are globally unique +} + +func (x *CreateTenantRequest) Reset() { + *x = CreateTenantRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateTenantRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateTenantRequest) ProtoMessage() {} + +func (x *CreateTenantRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateTenantRequest.ProtoReflect.Descriptor instead. +func (*CreateTenantRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{4} +} + +func (x *CreateTenantRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +type CreateTenantResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CreateTenantResponse) Reset() { + *x = CreateTenantResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateTenantResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateTenantResponse) ProtoMessage() {} + +func (x *CreateTenantResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateTenantResponse.ProtoReflect.Descriptor instead. +func (*CreateTenantResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{5} +} + +type GetTenantRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *GetTenantRequest) Reset() { + *x = GetTenantRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetTenantRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetTenantRequest) ProtoMessage() {} + +func (x *GetTenantRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetTenantRequest.ProtoReflect.Descriptor instead. +func (*GetTenantRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{6} +} + +func (x *GetTenantRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +type GetTenantResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Tenant *Tenant `protobuf:"bytes,1,opt,name=tenant,proto3" json:"tenant,omitempty"` +} + +func (x *GetTenantResponse) Reset() { + *x = GetTenantResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetTenantResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetTenantResponse) ProtoMessage() {} + +func (x *GetTenantResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetTenantResponse.ProtoReflect.Descriptor instead. +func (*GetTenantResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{7} +} + +func (x *GetTenantResponse) GetTenant() *Tenant { + if x != nil { + return x.Tenant + } + return nil +} + +type CreateSegmentRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Segment *Segment `protobuf:"bytes,1,opt,name=segment,proto3" json:"segment,omitempty"` +} + +func (x *CreateSegmentRequest) Reset() { + *x = CreateSegmentRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateSegmentRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateSegmentRequest) ProtoMessage() {} + +func (x *CreateSegmentRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateSegmentRequest.ProtoReflect.Descriptor instead. +func (*CreateSegmentRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{8} +} + +func (x *CreateSegmentRequest) GetSegment() *Segment { + if x != nil { + return x.Segment + } + return nil +} + +type CreateSegmentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *CreateSegmentResponse) Reset() { + *x = CreateSegmentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateSegmentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateSegmentResponse) ProtoMessage() {} + +func (x *CreateSegmentResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateSegmentResponse.ProtoReflect.Descriptor instead. +func (*CreateSegmentResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{9} +} + +type DeleteSegmentRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Collection string `protobuf:"bytes,2,opt,name=collection,proto3" json:"collection,omitempty"` +} + +func (x *DeleteSegmentRequest) Reset() { + *x = DeleteSegmentRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteSegmentRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteSegmentRequest) ProtoMessage() {} + +func (x *DeleteSegmentRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteSegmentRequest.ProtoReflect.Descriptor instead. +func (*DeleteSegmentRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{10} +} + +func (x *DeleteSegmentRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DeleteSegmentRequest) GetCollection() string { + if x != nil { + return x.Collection + } + return "" +} + +type DeleteSegmentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *DeleteSegmentResponse) Reset() { + *x = DeleteSegmentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteSegmentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteSegmentResponse) ProtoMessage() {} + +func (x *DeleteSegmentResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteSegmentResponse.ProtoReflect.Descriptor instead. +func (*DeleteSegmentResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{11} +} + +type GetSegmentsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id *string `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"` + Type *string `protobuf:"bytes,2,opt,name=type,proto3,oneof" json:"type,omitempty"` + Scope *SegmentScope `protobuf:"varint,3,opt,name=scope,proto3,enum=chroma.SegmentScope,oneof" json:"scope,omitempty"` + Collection string `protobuf:"bytes,4,opt,name=collection,proto3" json:"collection,omitempty"` // Collection ID +} + +func (x *GetSegmentsRequest) Reset() { + *x = GetSegmentsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetSegmentsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetSegmentsRequest) ProtoMessage() {} + +func (x *GetSegmentsRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetSegmentsRequest.ProtoReflect.Descriptor instead. +func (*GetSegmentsRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{12} +} + +func (x *GetSegmentsRequest) GetId() string { + if x != nil && x.Id != nil { + return *x.Id + } + return "" +} + +func (x *GetSegmentsRequest) GetType() string { + if x != nil && x.Type != nil { + return *x.Type + } + return "" +} + +func (x *GetSegmentsRequest) GetScope() SegmentScope { + if x != nil && x.Scope != nil { + return *x.Scope + } + return SegmentScope_VECTOR +} + +func (x *GetSegmentsRequest) GetCollection() string { + if x != nil { + return x.Collection + } + return "" +} + +type GetSegmentsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Segments []*Segment `protobuf:"bytes,1,rep,name=segments,proto3" json:"segments,omitempty"` +} + +func (x *GetSegmentsResponse) Reset() { + *x = GetSegmentsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetSegmentsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetSegmentsResponse) ProtoMessage() {} + +func (x *GetSegmentsResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetSegmentsResponse.ProtoReflect.Descriptor instead. +func (*GetSegmentsResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{13} +} + +func (x *GetSegmentsResponse) GetSegments() []*Segment { + if x != nil { + return x.Segments + } + return nil +} + +type UpdateSegmentRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Collection string `protobuf:"bytes,4,opt,name=collection,proto3" json:"collection,omitempty"` + // Types that are assignable to MetadataUpdate: + // + // *UpdateSegmentRequest_Metadata + // *UpdateSegmentRequest_ResetMetadata + MetadataUpdate isUpdateSegmentRequest_MetadataUpdate `protobuf_oneof:"metadata_update"` +} + +func (x *UpdateSegmentRequest) Reset() { + *x = UpdateSegmentRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateSegmentRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateSegmentRequest) ProtoMessage() {} + +func (x *UpdateSegmentRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateSegmentRequest.ProtoReflect.Descriptor instead. +func (*UpdateSegmentRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{14} +} + +func (x *UpdateSegmentRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *UpdateSegmentRequest) GetCollection() string { + if x != nil { + return x.Collection + } + return "" +} + +func (m *UpdateSegmentRequest) GetMetadataUpdate() isUpdateSegmentRequest_MetadataUpdate { + if m != nil { + return m.MetadataUpdate + } + return nil +} + +func (x *UpdateSegmentRequest) GetMetadata() *UpdateMetadata { + if x, ok := x.GetMetadataUpdate().(*UpdateSegmentRequest_Metadata); ok { + return x.Metadata + } + return nil +} + +func (x *UpdateSegmentRequest) GetResetMetadata() bool { + if x, ok := x.GetMetadataUpdate().(*UpdateSegmentRequest_ResetMetadata); ok { + return x.ResetMetadata + } + return false +} + +type isUpdateSegmentRequest_MetadataUpdate interface { + isUpdateSegmentRequest_MetadataUpdate() +} + +type UpdateSegmentRequest_Metadata struct { + Metadata *UpdateMetadata `protobuf:"bytes,6,opt,name=metadata,proto3,oneof"` +} + +type UpdateSegmentRequest_ResetMetadata struct { + ResetMetadata bool `protobuf:"varint,7,opt,name=reset_metadata,json=resetMetadata,proto3,oneof"` +} + +func (*UpdateSegmentRequest_Metadata) isUpdateSegmentRequest_MetadataUpdate() {} + +func (*UpdateSegmentRequest_ResetMetadata) isUpdateSegmentRequest_MetadataUpdate() {} + +type UpdateSegmentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *UpdateSegmentResponse) Reset() { + *x = UpdateSegmentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateSegmentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateSegmentResponse) ProtoMessage() {} + +func (x *UpdateSegmentResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateSegmentResponse.ProtoReflect.Descriptor instead. +func (*UpdateSegmentResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{15} +} + +type CreateCollectionRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + ConfigurationJsonStr string `protobuf:"bytes,3,opt,name=configuration_json_str,json=configurationJsonStr,proto3" json:"configuration_json_str,omitempty"` + Metadata *UpdateMetadata `protobuf:"bytes,4,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` + Dimension *int32 `protobuf:"varint,5,opt,name=dimension,proto3,oneof" json:"dimension,omitempty"` + GetOrCreate *bool `protobuf:"varint,6,opt,name=get_or_create,json=getOrCreate,proto3,oneof" json:"get_or_create,omitempty"` + Tenant string `protobuf:"bytes,7,opt,name=tenant,proto3" json:"tenant,omitempty"` + Database string `protobuf:"bytes,8,opt,name=database,proto3" json:"database,omitempty"` + // When segments are set, then the collection and segments will be created as + // a single atomic operation. + Segments []*Segment `protobuf:"bytes,9,rep,name=segments,proto3" json:"segments,omitempty"` // Optional. +} + +func (x *CreateCollectionRequest) Reset() { + *x = CreateCollectionRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateCollectionRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateCollectionRequest) ProtoMessage() {} + +func (x *CreateCollectionRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateCollectionRequest.ProtoReflect.Descriptor instead. +func (*CreateCollectionRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{16} +} + +func (x *CreateCollectionRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *CreateCollectionRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *CreateCollectionRequest) GetConfigurationJsonStr() string { + if x != nil { + return x.ConfigurationJsonStr + } + return "" +} + +func (x *CreateCollectionRequest) GetMetadata() *UpdateMetadata { + if x != nil { + return x.Metadata + } + return nil +} + +func (x *CreateCollectionRequest) GetDimension() int32 { + if x != nil && x.Dimension != nil { + return *x.Dimension + } + return 0 +} + +func (x *CreateCollectionRequest) GetGetOrCreate() bool { + if x != nil && x.GetOrCreate != nil { + return *x.GetOrCreate + } + return false +} + +func (x *CreateCollectionRequest) GetTenant() string { + if x != nil { + return x.Tenant + } + return "" +} + +func (x *CreateCollectionRequest) GetDatabase() string { + if x != nil { + return x.Database + } + return "" +} + +func (x *CreateCollectionRequest) GetSegments() []*Segment { + if x != nil { + return x.Segments + } + return nil +} + +type CreateCollectionResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Collection *Collection `protobuf:"bytes,1,opt,name=collection,proto3" json:"collection,omitempty"` + Created bool `protobuf:"varint,2,opt,name=created,proto3" json:"created,omitempty"` +} + +func (x *CreateCollectionResponse) Reset() { + *x = CreateCollectionResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateCollectionResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateCollectionResponse) ProtoMessage() {} + +func (x *CreateCollectionResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CreateCollectionResponse.ProtoReflect.Descriptor instead. +func (*CreateCollectionResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{17} +} + +func (x *CreateCollectionResponse) GetCollection() *Collection { + if x != nil { + return x.Collection + } + return nil +} + +func (x *CreateCollectionResponse) GetCreated() bool { + if x != nil { + return x.Created + } + return false +} + +type DeleteCollectionRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Tenant string `protobuf:"bytes,2,opt,name=tenant,proto3" json:"tenant,omitempty"` + Database string `protobuf:"bytes,3,opt,name=database,proto3" json:"database,omitempty"` + SegmentIds []string `protobuf:"bytes,4,rep,name=segment_ids,json=segmentIds,proto3" json:"segment_ids,omitempty"` +} + +func (x *DeleteCollectionRequest) Reset() { + *x = DeleteCollectionRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteCollectionRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteCollectionRequest) ProtoMessage() {} + +func (x *DeleteCollectionRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteCollectionRequest.ProtoReflect.Descriptor instead. +func (*DeleteCollectionRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{18} +} + +func (x *DeleteCollectionRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DeleteCollectionRequest) GetTenant() string { + if x != nil { + return x.Tenant + } + return "" +} + +func (x *DeleteCollectionRequest) GetDatabase() string { + if x != nil { + return x.Database + } + return "" +} + +func (x *DeleteCollectionRequest) GetSegmentIds() []string { + if x != nil { + return x.SegmentIds + } + return nil +} + +type DeleteCollectionResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *DeleteCollectionResponse) Reset() { + *x = DeleteCollectionResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteCollectionResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteCollectionResponse) ProtoMessage() {} + +func (x *DeleteCollectionResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteCollectionResponse.ProtoReflect.Descriptor instead. +func (*DeleteCollectionResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{19} +} + +type GetCollectionsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id *string `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"` + Name *string `protobuf:"bytes,2,opt,name=name,proto3,oneof" json:"name,omitempty"` + Tenant string `protobuf:"bytes,4,opt,name=tenant,proto3" json:"tenant,omitempty"` + Database string `protobuf:"bytes,5,opt,name=database,proto3" json:"database,omitempty"` + Limit *int32 `protobuf:"varint,6,opt,name=limit,proto3,oneof" json:"limit,omitempty"` + Offset *int32 `protobuf:"varint,7,opt,name=offset,proto3,oneof" json:"offset,omitempty"` +} + +func (x *GetCollectionsRequest) Reset() { + *x = GetCollectionsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetCollectionsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetCollectionsRequest) ProtoMessage() {} + +func (x *GetCollectionsRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetCollectionsRequest.ProtoReflect.Descriptor instead. +func (*GetCollectionsRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{20} +} + +func (x *GetCollectionsRequest) GetId() string { + if x != nil && x.Id != nil { + return *x.Id + } + return "" +} + +func (x *GetCollectionsRequest) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *GetCollectionsRequest) GetTenant() string { + if x != nil { + return x.Tenant + } + return "" +} + +func (x *GetCollectionsRequest) GetDatabase() string { + if x != nil { + return x.Database + } + return "" +} + +func (x *GetCollectionsRequest) GetLimit() int32 { + if x != nil && x.Limit != nil { + return *x.Limit + } + return 0 +} + +func (x *GetCollectionsRequest) GetOffset() int32 { + if x != nil && x.Offset != nil { + return *x.Offset + } + return 0 +} + +type GetCollectionsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Collections []*Collection `protobuf:"bytes,1,rep,name=collections,proto3" json:"collections,omitempty"` +} + +func (x *GetCollectionsResponse) Reset() { + *x = GetCollectionsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetCollectionsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetCollectionsResponse) ProtoMessage() {} + +func (x *GetCollectionsResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetCollectionsResponse.ProtoReflect.Descriptor instead. +func (*GetCollectionsResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{21} +} + +func (x *GetCollectionsResponse) GetCollections() []*Collection { + if x != nil { + return x.Collections + } + return nil +} + +type GetCollectionWithSegmentsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` +} + +func (x *GetCollectionWithSegmentsRequest) Reset() { + *x = GetCollectionWithSegmentsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetCollectionWithSegmentsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetCollectionWithSegmentsRequest) ProtoMessage() {} + +func (x *GetCollectionWithSegmentsRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetCollectionWithSegmentsRequest.ProtoReflect.Descriptor instead. +func (*GetCollectionWithSegmentsRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{22} +} + +func (x *GetCollectionWithSegmentsRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type GetCollectionWithSegmentsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Collection *Collection `protobuf:"bytes,1,opt,name=collection,proto3" json:"collection,omitempty"` + Segments []*Segment `protobuf:"bytes,2,rep,name=segments,proto3" json:"segments,omitempty"` +} + +func (x *GetCollectionWithSegmentsResponse) Reset() { + *x = GetCollectionWithSegmentsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetCollectionWithSegmentsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetCollectionWithSegmentsResponse) ProtoMessage() {} + +func (x *GetCollectionWithSegmentsResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetCollectionWithSegmentsResponse.ProtoReflect.Descriptor instead. +func (*GetCollectionWithSegmentsResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{23} +} + +func (x *GetCollectionWithSegmentsResponse) GetCollection() *Collection { + if x != nil { + return x.Collection + } + return nil +} + +func (x *GetCollectionWithSegmentsResponse) GetSegments() []*Segment { + if x != nil { + return x.Segments + } + return nil +} + +type CheckCollectionsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CollectionIds []string `protobuf:"bytes,1,rep,name=collection_ids,json=collectionIds,proto3" json:"collection_ids,omitempty"` +} + +func (x *CheckCollectionsRequest) Reset() { + *x = CheckCollectionsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CheckCollectionsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CheckCollectionsRequest) ProtoMessage() {} + +func (x *CheckCollectionsRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CheckCollectionsRequest.ProtoReflect.Descriptor instead. +func (*CheckCollectionsRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{24} +} + +func (x *CheckCollectionsRequest) GetCollectionIds() []string { + if x != nil { + return x.CollectionIds + } + return nil +} + +type CheckCollectionsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Deleted []bool `protobuf:"varint,1,rep,packed,name=deleted,proto3" json:"deleted,omitempty"` +} + +func (x *CheckCollectionsResponse) Reset() { + *x = CheckCollectionsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CheckCollectionsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CheckCollectionsResponse) ProtoMessage() {} + +func (x *CheckCollectionsResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CheckCollectionsResponse.ProtoReflect.Descriptor instead. +func (*CheckCollectionsResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{25} +} + +func (x *CheckCollectionsResponse) GetDeleted() []bool { + if x != nil { + return x.Deleted + } + return nil +} + +type UpdateCollectionRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Name *string `protobuf:"bytes,3,opt,name=name,proto3,oneof" json:"name,omitempty"` + Dimension *int32 `protobuf:"varint,4,opt,name=dimension,proto3,oneof" json:"dimension,omitempty"` + // Types that are assignable to MetadataUpdate: + // + // *UpdateCollectionRequest_Metadata + // *UpdateCollectionRequest_ResetMetadata + MetadataUpdate isUpdateCollectionRequest_MetadataUpdate `protobuf_oneof:"metadata_update"` +} + +func (x *UpdateCollectionRequest) Reset() { + *x = UpdateCollectionRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateCollectionRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateCollectionRequest) ProtoMessage() {} + +func (x *UpdateCollectionRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateCollectionRequest.ProtoReflect.Descriptor instead. +func (*UpdateCollectionRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{26} +} + +func (x *UpdateCollectionRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *UpdateCollectionRequest) GetName() string { + if x != nil && x.Name != nil { + return *x.Name + } + return "" +} + +func (x *UpdateCollectionRequest) GetDimension() int32 { + if x != nil && x.Dimension != nil { + return *x.Dimension + } + return 0 +} + +func (m *UpdateCollectionRequest) GetMetadataUpdate() isUpdateCollectionRequest_MetadataUpdate { + if m != nil { + return m.MetadataUpdate + } + return nil +} + +func (x *UpdateCollectionRequest) GetMetadata() *UpdateMetadata { + if x, ok := x.GetMetadataUpdate().(*UpdateCollectionRequest_Metadata); ok { + return x.Metadata + } + return nil +} + +func (x *UpdateCollectionRequest) GetResetMetadata() bool { + if x, ok := x.GetMetadataUpdate().(*UpdateCollectionRequest_ResetMetadata); ok { + return x.ResetMetadata + } + return false +} + +type isUpdateCollectionRequest_MetadataUpdate interface { + isUpdateCollectionRequest_MetadataUpdate() +} + +type UpdateCollectionRequest_Metadata struct { + Metadata *UpdateMetadata `protobuf:"bytes,5,opt,name=metadata,proto3,oneof"` +} + +type UpdateCollectionRequest_ResetMetadata struct { + ResetMetadata bool `protobuf:"varint,6,opt,name=reset_metadata,json=resetMetadata,proto3,oneof"` +} + +func (*UpdateCollectionRequest_Metadata) isUpdateCollectionRequest_MetadataUpdate() {} + +func (*UpdateCollectionRequest_ResetMetadata) isUpdateCollectionRequest_MetadataUpdate() {} + +type UpdateCollectionResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *UpdateCollectionResponse) Reset() { + *x = UpdateCollectionResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateCollectionResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateCollectionResponse) ProtoMessage() {} + +func (x *UpdateCollectionResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateCollectionResponse.ProtoReflect.Descriptor instead. +func (*UpdateCollectionResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{27} +} + +type ResetStateResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *ResetStateResponse) Reset() { + *x = ResetStateResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ResetStateResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResetStateResponse) ProtoMessage() {} + +func (x *ResetStateResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResetStateResponse.ProtoReflect.Descriptor instead. +func (*ResetStateResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{28} +} + +type GetLastCompactionTimeForTenantRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TenantId []string `protobuf:"bytes,1,rep,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` +} + +func (x *GetLastCompactionTimeForTenantRequest) Reset() { + *x = GetLastCompactionTimeForTenantRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetLastCompactionTimeForTenantRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetLastCompactionTimeForTenantRequest) ProtoMessage() {} + +func (x *GetLastCompactionTimeForTenantRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetLastCompactionTimeForTenantRequest.ProtoReflect.Descriptor instead. +func (*GetLastCompactionTimeForTenantRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{29} +} + +func (x *GetLastCompactionTimeForTenantRequest) GetTenantId() []string { + if x != nil { + return x.TenantId + } + return nil +} + +type TenantLastCompactionTime struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TenantId string `protobuf:"bytes,1,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` + LastCompactionTime int64 `protobuf:"varint,2,opt,name=last_compaction_time,json=lastCompactionTime,proto3" json:"last_compaction_time,omitempty"` +} + +func (x *TenantLastCompactionTime) Reset() { + *x = TenantLastCompactionTime{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TenantLastCompactionTime) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TenantLastCompactionTime) ProtoMessage() {} + +func (x *TenantLastCompactionTime) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TenantLastCompactionTime.ProtoReflect.Descriptor instead. +func (*TenantLastCompactionTime) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{30} +} + +func (x *TenantLastCompactionTime) GetTenantId() string { + if x != nil { + return x.TenantId + } + return "" +} + +func (x *TenantLastCompactionTime) GetLastCompactionTime() int64 { + if x != nil { + return x.LastCompactionTime + } + return 0 +} + +type GetLastCompactionTimeForTenantResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TenantLastCompactionTime []*TenantLastCompactionTime `protobuf:"bytes,1,rep,name=tenant_last_compaction_time,json=tenantLastCompactionTime,proto3" json:"tenant_last_compaction_time,omitempty"` +} + +func (x *GetLastCompactionTimeForTenantResponse) Reset() { + *x = GetLastCompactionTimeForTenantResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetLastCompactionTimeForTenantResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetLastCompactionTimeForTenantResponse) ProtoMessage() {} + +func (x *GetLastCompactionTimeForTenantResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetLastCompactionTimeForTenantResponse.ProtoReflect.Descriptor instead. +func (*GetLastCompactionTimeForTenantResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{31} +} + +func (x *GetLastCompactionTimeForTenantResponse) GetTenantLastCompactionTime() []*TenantLastCompactionTime { + if x != nil { + return x.TenantLastCompactionTime + } + return nil +} + +type SetLastCompactionTimeForTenantRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TenantLastCompactionTime *TenantLastCompactionTime `protobuf:"bytes,1,opt,name=tenant_last_compaction_time,json=tenantLastCompactionTime,proto3" json:"tenant_last_compaction_time,omitempty"` +} + +func (x *SetLastCompactionTimeForTenantRequest) Reset() { + *x = SetLastCompactionTimeForTenantRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SetLastCompactionTimeForTenantRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SetLastCompactionTimeForTenantRequest) ProtoMessage() {} + +func (x *SetLastCompactionTimeForTenantRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SetLastCompactionTimeForTenantRequest.ProtoReflect.Descriptor instead. +func (*SetLastCompactionTimeForTenantRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{32} +} + +func (x *SetLastCompactionTimeForTenantRequest) GetTenantLastCompactionTime() *TenantLastCompactionTime { + if x != nil { + return x.TenantLastCompactionTime + } + return nil +} + +type FlushSegmentCompactionInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SegmentId string `protobuf:"bytes,1,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"` + FilePaths map[string]*FilePaths `protobuf:"bytes,2,rep,name=file_paths,json=filePaths,proto3" json:"file_paths,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` +} + +func (x *FlushSegmentCompactionInfo) Reset() { + *x = FlushSegmentCompactionInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FlushSegmentCompactionInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FlushSegmentCompactionInfo) ProtoMessage() {} + +func (x *FlushSegmentCompactionInfo) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FlushSegmentCompactionInfo.ProtoReflect.Descriptor instead. +func (*FlushSegmentCompactionInfo) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{33} +} + +func (x *FlushSegmentCompactionInfo) GetSegmentId() string { + if x != nil { + return x.SegmentId + } + return "" +} + +func (x *FlushSegmentCompactionInfo) GetFilePaths() map[string]*FilePaths { + if x != nil { + return x.FilePaths + } + return nil +} + +type FlushCollectionCompactionRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TenantId string `protobuf:"bytes,1,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` + CollectionId string `protobuf:"bytes,2,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` + LogPosition int64 `protobuf:"varint,3,opt,name=log_position,json=logPosition,proto3" json:"log_position,omitempty"` + CollectionVersion int32 `protobuf:"varint,4,opt,name=collection_version,json=collectionVersion,proto3" json:"collection_version,omitempty"` + SegmentCompactionInfo []*FlushSegmentCompactionInfo `protobuf:"bytes,5,rep,name=segment_compaction_info,json=segmentCompactionInfo,proto3" json:"segment_compaction_info,omitempty"` +} + +func (x *FlushCollectionCompactionRequest) Reset() { + *x = FlushCollectionCompactionRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FlushCollectionCompactionRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FlushCollectionCompactionRequest) ProtoMessage() {} + +func (x *FlushCollectionCompactionRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FlushCollectionCompactionRequest.ProtoReflect.Descriptor instead. +func (*FlushCollectionCompactionRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{34} +} + +func (x *FlushCollectionCompactionRequest) GetTenantId() string { + if x != nil { + return x.TenantId + } + return "" +} + +func (x *FlushCollectionCompactionRequest) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *FlushCollectionCompactionRequest) GetLogPosition() int64 { + if x != nil { + return x.LogPosition + } + return 0 +} + +func (x *FlushCollectionCompactionRequest) GetCollectionVersion() int32 { + if x != nil { + return x.CollectionVersion + } + return 0 +} + +func (x *FlushCollectionCompactionRequest) GetSegmentCompactionInfo() []*FlushSegmentCompactionInfo { + if x != nil { + return x.SegmentCompactionInfo + } + return nil +} + +type FlushCollectionCompactionResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CollectionId string `protobuf:"bytes,1,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` + CollectionVersion int32 `protobuf:"varint,2,opt,name=collection_version,json=collectionVersion,proto3" json:"collection_version,omitempty"` + LastCompactionTime int64 `protobuf:"varint,3,opt,name=last_compaction_time,json=lastCompactionTime,proto3" json:"last_compaction_time,omitempty"` +} + +func (x *FlushCollectionCompactionResponse) Reset() { + *x = FlushCollectionCompactionResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FlushCollectionCompactionResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FlushCollectionCompactionResponse) ProtoMessage() {} + +func (x *FlushCollectionCompactionResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_coordinator_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FlushCollectionCompactionResponse.ProtoReflect.Descriptor instead. +func (*FlushCollectionCompactionResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{35} +} + +func (x *FlushCollectionCompactionResponse) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *FlushCollectionCompactionResponse) GetCollectionVersion() int32 { + if x != nil { + return x.CollectionVersion + } + return 0 +} + +func (x *FlushCollectionCompactionResponse) GetLastCompactionTime() int64 { + if x != nil { + return x.LastCompactionTime + } + return 0 +} + +var File_chromadb_proto_coordinator_proto protoreflect.FileDescriptor + +var file_chromadb_proto_coordinator_proto_rawDesc = []byte{ + 0x0a, 0x20, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2f, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x06, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x1a, 0x1b, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, + 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x53, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x22, 0x26, 0x0a, 0x16, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x22, 0x40, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, + 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, + 0x61, 0x6e, 0x74, 0x22, 0x51, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x64, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x08, + 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x29, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0x24, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x26, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x54, 0x65, + 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0x49, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x54, 0x65, + 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4a, 0x04, 0x08, 0x02, + 0x10, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x41, 0x0a, 0x14, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x29, 0x0a, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x65, 0x67, + 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x25, 0x0a, + 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x22, 0x46, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, + 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, + 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x25, 0x0a, 0x15, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x22, 0xad, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, + 0x17, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x70, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, + 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x48, 0x02, 0x52, + 0x05, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, + 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x63, + 0x6f, 0x70, 0x65, 0x22, 0x50, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x73, 0x65, + 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, + 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xb8, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, + 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0d, + 0x72, 0x65, 0x73, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x11, 0x0a, + 0x0f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x22, 0x25, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x86, 0x03, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x73, 0x74, + 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4a, 0x73, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x12, 0x37, 0x0a, + 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x48, 0x01, 0x52, 0x09, 0x64, 0x69, 0x6d, + 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0d, 0x67, 0x65, 0x74, + 0x5f, 0x6f, 0x72, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, + 0x48, 0x02, 0x52, 0x0b, 0x67, 0x65, 0x74, 0x4f, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x88, + 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, + 0x61, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x10, + 0x0a, 0x0e, 0x5f, 0x67, 0x65, 0x74, 0x5f, 0x6f, 0x72, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x22, 0x76, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x0a, + 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x7e, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x67, 0x6d, 0x65, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, + 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0x28, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x22, 0xd6, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01, + 0x01, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, + 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, + 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, + 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x19, + 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x48, 0x02, 0x52, + 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x6f, 0x66, 0x66, + 0x73, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x48, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, + 0x73, 0x65, 0x74, 0x88, 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x42, 0x07, 0x0a, + 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x5c, 0x0a, 0x16, 0x47, + 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x68, 0x72, + 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, + 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4a, 0x04, 0x08, 0x02, 0x10, + 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x32, 0x0a, 0x20, 0x47, 0x65, 0x74, + 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x53, 0x65, + 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x84, 0x01, + 0x0a, 0x21, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x57, + 0x69, 0x74, 0x68, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, + 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x63, 0x6f, 0x6c, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, 0x65, 0x67, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x22, 0x40, 0x0a, 0x17, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6f, 0x6c, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x22, 0x34, 0x0a, 0x18, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0xee, 0x01, 0x0a, + 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, + 0x01, 0x12, 0x21, 0x0a, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x48, 0x02, 0x52, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, + 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x0e, 0x72, 0x65, + 0x73, 0x65, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x48, 0x00, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x42, 0x11, 0x0a, 0x0f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, + 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x28, 0x0a, + 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x22, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x65, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, + 0x01, 0x10, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x44, 0x0a, 0x25, 0x47, + 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x54, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, + 0x64, 0x22, 0x69, 0x0a, 0x18, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, + 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, + 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, + 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, + 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x89, 0x01, 0x0a, + 0x26, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x1b, 0x74, 0x65, 0x6e, 0x61, 0x6e, + 0x74, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x73, 0x74, + 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x18, + 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x88, 0x01, 0x0a, 0x25, 0x53, 0x65, 0x74, + 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, + 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x5f, 0x0a, 0x1b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x6c, 0x61, 0x73, + 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, + 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x18, 0x74, 0x65, 0x6e, 0x61, 0x6e, + 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, + 0x69, 0x6d, 0x65, 0x22, 0xde, 0x01, 0x0a, 0x1a, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x53, 0x65, 0x67, + 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x50, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x46, + 0x6c, 0x75, 0x73, 0x68, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, + 0x74, 0x68, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, + 0x74, 0x68, 0x73, 0x1a, 0x4f, 0x0a, 0x0e, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, + 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0x92, 0x02, 0x0a, 0x20, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, + 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, + 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, + 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, + 0x6f, 0x67, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0b, 0x6c, 0x6f, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2d, + 0x0a, 0x12, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x63, 0x6f, 0x6c, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, + 0x17, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x53, 0x65, 0x67, + 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x15, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xa9, 0x01, 0x0a, 0x21, 0x46, 0x6c, + 0x75, 0x73, 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, + 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x11, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x32, 0xc1, 0x0c, 0x0a, 0x05, 0x53, 0x79, 0x73, 0x44, 0x42, 0x12, + 0x51, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x12, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, + 0x65, 0x12, 0x1a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, + 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, + 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0c, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x1b, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x09, 0x47, 0x65, 0x74, + 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x18, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, + 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x19, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, + 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, + 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, + 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, + 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, + 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, + 0x0b, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1a, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, + 0x61, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, + 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x2e, 0x63, 0x68, + 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x12, 0x57, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x0e, 0x47, 0x65, 0x74, + 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x2e, 0x63, 0x68, + 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x68, 0x72, + 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x72, 0x0a, 0x19, + 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x69, 0x74, + 0x68, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x57, 0x69, 0x74, 0x68, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, + 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x53, 0x65, + 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x12, 0x57, 0x0a, 0x10, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, + 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x10, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x2e, + 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0a, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, + 0x61, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x81, 0x01, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x4c, 0x61, + 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, + 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, + 0x61, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x69, 0x0a, 0x1e, 0x53, 0x65, + 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, + 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x2d, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, + 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, + 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x72, 0x0a, 0x19, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x28, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x46, 0x6c, 0x75, 0x73, + 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, + 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x3a, 0x5a, 0x38, 0x67, 0x69, 0x74, + 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2d, 0x63, + 0x6f, 0x72, 0x65, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2f, 0x67, 0x6f, 0x2f, 0x70, 0x6b, + 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, + 0x74, 0x6f, 0x72, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_chromadb_proto_coordinator_proto_rawDescOnce sync.Once + file_chromadb_proto_coordinator_proto_rawDescData = file_chromadb_proto_coordinator_proto_rawDesc +) + +func file_chromadb_proto_coordinator_proto_rawDescGZIP() []byte { + file_chromadb_proto_coordinator_proto_rawDescOnce.Do(func() { + file_chromadb_proto_coordinator_proto_rawDescData = protoimpl.X.CompressGZIP(file_chromadb_proto_coordinator_proto_rawDescData) + }) + return file_chromadb_proto_coordinator_proto_rawDescData +} + +var file_chromadb_proto_coordinator_proto_msgTypes = make([]protoimpl.MessageInfo, 37) +var file_chromadb_proto_coordinator_proto_goTypes = []any{ + (*CreateDatabaseRequest)(nil), // 0: chroma.CreateDatabaseRequest + (*CreateDatabaseResponse)(nil), // 1: chroma.CreateDatabaseResponse + (*GetDatabaseRequest)(nil), // 2: chroma.GetDatabaseRequest + (*GetDatabaseResponse)(nil), // 3: chroma.GetDatabaseResponse + (*CreateTenantRequest)(nil), // 4: chroma.CreateTenantRequest + (*CreateTenantResponse)(nil), // 5: chroma.CreateTenantResponse + (*GetTenantRequest)(nil), // 6: chroma.GetTenantRequest + (*GetTenantResponse)(nil), // 7: chroma.GetTenantResponse + (*CreateSegmentRequest)(nil), // 8: chroma.CreateSegmentRequest + (*CreateSegmentResponse)(nil), // 9: chroma.CreateSegmentResponse + (*DeleteSegmentRequest)(nil), // 10: chroma.DeleteSegmentRequest + (*DeleteSegmentResponse)(nil), // 11: chroma.DeleteSegmentResponse + (*GetSegmentsRequest)(nil), // 12: chroma.GetSegmentsRequest + (*GetSegmentsResponse)(nil), // 13: chroma.GetSegmentsResponse + (*UpdateSegmentRequest)(nil), // 14: chroma.UpdateSegmentRequest + (*UpdateSegmentResponse)(nil), // 15: chroma.UpdateSegmentResponse + (*CreateCollectionRequest)(nil), // 16: chroma.CreateCollectionRequest + (*CreateCollectionResponse)(nil), // 17: chroma.CreateCollectionResponse + (*DeleteCollectionRequest)(nil), // 18: chroma.DeleteCollectionRequest + (*DeleteCollectionResponse)(nil), // 19: chroma.DeleteCollectionResponse + (*GetCollectionsRequest)(nil), // 20: chroma.GetCollectionsRequest + (*GetCollectionsResponse)(nil), // 21: chroma.GetCollectionsResponse + (*GetCollectionWithSegmentsRequest)(nil), // 22: chroma.GetCollectionWithSegmentsRequest + (*GetCollectionWithSegmentsResponse)(nil), // 23: chroma.GetCollectionWithSegmentsResponse + (*CheckCollectionsRequest)(nil), // 24: chroma.CheckCollectionsRequest + (*CheckCollectionsResponse)(nil), // 25: chroma.CheckCollectionsResponse + (*UpdateCollectionRequest)(nil), // 26: chroma.UpdateCollectionRequest + (*UpdateCollectionResponse)(nil), // 27: chroma.UpdateCollectionResponse + (*ResetStateResponse)(nil), // 28: chroma.ResetStateResponse + (*GetLastCompactionTimeForTenantRequest)(nil), // 29: chroma.GetLastCompactionTimeForTenantRequest + (*TenantLastCompactionTime)(nil), // 30: chroma.TenantLastCompactionTime + (*GetLastCompactionTimeForTenantResponse)(nil), // 31: chroma.GetLastCompactionTimeForTenantResponse + (*SetLastCompactionTimeForTenantRequest)(nil), // 32: chroma.SetLastCompactionTimeForTenantRequest + (*FlushSegmentCompactionInfo)(nil), // 33: chroma.FlushSegmentCompactionInfo + (*FlushCollectionCompactionRequest)(nil), // 34: chroma.FlushCollectionCompactionRequest + (*FlushCollectionCompactionResponse)(nil), // 35: chroma.FlushCollectionCompactionResponse + nil, // 36: chroma.FlushSegmentCompactionInfo.FilePathsEntry + (*Database)(nil), // 37: chroma.Database + (*Tenant)(nil), // 38: chroma.Tenant + (*Segment)(nil), // 39: chroma.Segment + (SegmentScope)(0), // 40: chroma.SegmentScope + (*UpdateMetadata)(nil), // 41: chroma.UpdateMetadata + (*Collection)(nil), // 42: chroma.Collection + (*FilePaths)(nil), // 43: chroma.FilePaths + (*emptypb.Empty)(nil), // 44: google.protobuf.Empty +} +var file_chromadb_proto_coordinator_proto_depIdxs = []int32{ + 37, // 0: chroma.GetDatabaseResponse.database:type_name -> chroma.Database + 38, // 1: chroma.GetTenantResponse.tenant:type_name -> chroma.Tenant + 39, // 2: chroma.CreateSegmentRequest.segment:type_name -> chroma.Segment + 40, // 3: chroma.GetSegmentsRequest.scope:type_name -> chroma.SegmentScope + 39, // 4: chroma.GetSegmentsResponse.segments:type_name -> chroma.Segment + 41, // 5: chroma.UpdateSegmentRequest.metadata:type_name -> chroma.UpdateMetadata + 41, // 6: chroma.CreateCollectionRequest.metadata:type_name -> chroma.UpdateMetadata + 39, // 7: chroma.CreateCollectionRequest.segments:type_name -> chroma.Segment + 42, // 8: chroma.CreateCollectionResponse.collection:type_name -> chroma.Collection + 42, // 9: chroma.GetCollectionsResponse.collections:type_name -> chroma.Collection + 42, // 10: chroma.GetCollectionWithSegmentsResponse.collection:type_name -> chroma.Collection + 39, // 11: chroma.GetCollectionWithSegmentsResponse.segments:type_name -> chroma.Segment + 41, // 12: chroma.UpdateCollectionRequest.metadata:type_name -> chroma.UpdateMetadata + 30, // 13: chroma.GetLastCompactionTimeForTenantResponse.tenant_last_compaction_time:type_name -> chroma.TenantLastCompactionTime + 30, // 14: chroma.SetLastCompactionTimeForTenantRequest.tenant_last_compaction_time:type_name -> chroma.TenantLastCompactionTime + 36, // 15: chroma.FlushSegmentCompactionInfo.file_paths:type_name -> chroma.FlushSegmentCompactionInfo.FilePathsEntry + 33, // 16: chroma.FlushCollectionCompactionRequest.segment_compaction_info:type_name -> chroma.FlushSegmentCompactionInfo + 43, // 17: chroma.FlushSegmentCompactionInfo.FilePathsEntry.value:type_name -> chroma.FilePaths + 0, // 18: chroma.SysDB.CreateDatabase:input_type -> chroma.CreateDatabaseRequest + 2, // 19: chroma.SysDB.GetDatabase:input_type -> chroma.GetDatabaseRequest + 4, // 20: chroma.SysDB.CreateTenant:input_type -> chroma.CreateTenantRequest + 6, // 21: chroma.SysDB.GetTenant:input_type -> chroma.GetTenantRequest + 8, // 22: chroma.SysDB.CreateSegment:input_type -> chroma.CreateSegmentRequest + 10, // 23: chroma.SysDB.DeleteSegment:input_type -> chroma.DeleteSegmentRequest + 12, // 24: chroma.SysDB.GetSegments:input_type -> chroma.GetSegmentsRequest + 14, // 25: chroma.SysDB.UpdateSegment:input_type -> chroma.UpdateSegmentRequest + 16, // 26: chroma.SysDB.CreateCollection:input_type -> chroma.CreateCollectionRequest + 18, // 27: chroma.SysDB.DeleteCollection:input_type -> chroma.DeleteCollectionRequest + 20, // 28: chroma.SysDB.GetCollections:input_type -> chroma.GetCollectionsRequest + 22, // 29: chroma.SysDB.GetCollectionWithSegments:input_type -> chroma.GetCollectionWithSegmentsRequest + 24, // 30: chroma.SysDB.CheckCollections:input_type -> chroma.CheckCollectionsRequest + 26, // 31: chroma.SysDB.UpdateCollection:input_type -> chroma.UpdateCollectionRequest + 44, // 32: chroma.SysDB.ResetState:input_type -> google.protobuf.Empty + 29, // 33: chroma.SysDB.GetLastCompactionTimeForTenant:input_type -> chroma.GetLastCompactionTimeForTenantRequest + 32, // 34: chroma.SysDB.SetLastCompactionTimeForTenant:input_type -> chroma.SetLastCompactionTimeForTenantRequest + 34, // 35: chroma.SysDB.FlushCollectionCompaction:input_type -> chroma.FlushCollectionCompactionRequest + 1, // 36: chroma.SysDB.CreateDatabase:output_type -> chroma.CreateDatabaseResponse + 3, // 37: chroma.SysDB.GetDatabase:output_type -> chroma.GetDatabaseResponse + 5, // 38: chroma.SysDB.CreateTenant:output_type -> chroma.CreateTenantResponse + 7, // 39: chroma.SysDB.GetTenant:output_type -> chroma.GetTenantResponse + 9, // 40: chroma.SysDB.CreateSegment:output_type -> chroma.CreateSegmentResponse + 11, // 41: chroma.SysDB.DeleteSegment:output_type -> chroma.DeleteSegmentResponse + 13, // 42: chroma.SysDB.GetSegments:output_type -> chroma.GetSegmentsResponse + 15, // 43: chroma.SysDB.UpdateSegment:output_type -> chroma.UpdateSegmentResponse + 17, // 44: chroma.SysDB.CreateCollection:output_type -> chroma.CreateCollectionResponse + 19, // 45: chroma.SysDB.DeleteCollection:output_type -> chroma.DeleteCollectionResponse + 21, // 46: chroma.SysDB.GetCollections:output_type -> chroma.GetCollectionsResponse + 23, // 47: chroma.SysDB.GetCollectionWithSegments:output_type -> chroma.GetCollectionWithSegmentsResponse + 25, // 48: chroma.SysDB.CheckCollections:output_type -> chroma.CheckCollectionsResponse + 27, // 49: chroma.SysDB.UpdateCollection:output_type -> chroma.UpdateCollectionResponse + 28, // 50: chroma.SysDB.ResetState:output_type -> chroma.ResetStateResponse + 31, // 51: chroma.SysDB.GetLastCompactionTimeForTenant:output_type -> chroma.GetLastCompactionTimeForTenantResponse + 44, // 52: chroma.SysDB.SetLastCompactionTimeForTenant:output_type -> google.protobuf.Empty + 35, // 53: chroma.SysDB.FlushCollectionCompaction:output_type -> chroma.FlushCollectionCompactionResponse + 36, // [36:54] is the sub-list for method output_type + 18, // [18:36] is the sub-list for method input_type + 18, // [18:18] is the sub-list for extension type_name + 18, // [18:18] is the sub-list for extension extendee + 0, // [0:18] is the sub-list for field type_name +} + +func init() { file_chromadb_proto_coordinator_proto_init() } +func file_chromadb_proto_coordinator_proto_init() { + if File_chromadb_proto_coordinator_proto != nil { + return + } + file_chromadb_proto_chroma_proto_init() + if !protoimpl.UnsafeEnabled { + file_chromadb_proto_coordinator_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*CreateDatabaseRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*CreateDatabaseResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*GetDatabaseRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[3].Exporter = func(v any, i int) any { + switch v := v.(*GetDatabaseResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[4].Exporter = func(v any, i int) any { + switch v := v.(*CreateTenantRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[5].Exporter = func(v any, i int) any { + switch v := v.(*CreateTenantResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[6].Exporter = func(v any, i int) any { + switch v := v.(*GetTenantRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[7].Exporter = func(v any, i int) any { + switch v := v.(*GetTenantResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[8].Exporter = func(v any, i int) any { + switch v := v.(*CreateSegmentRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[9].Exporter = func(v any, i int) any { + switch v := v.(*CreateSegmentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[10].Exporter = func(v any, i int) any { + switch v := v.(*DeleteSegmentRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[11].Exporter = func(v any, i int) any { + switch v := v.(*DeleteSegmentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[12].Exporter = func(v any, i int) any { + switch v := v.(*GetSegmentsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[13].Exporter = func(v any, i int) any { + switch v := v.(*GetSegmentsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[14].Exporter = func(v any, i int) any { + switch v := v.(*UpdateSegmentRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[15].Exporter = func(v any, i int) any { + switch v := v.(*UpdateSegmentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[16].Exporter = func(v any, i int) any { + switch v := v.(*CreateCollectionRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[17].Exporter = func(v any, i int) any { + switch v := v.(*CreateCollectionResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[18].Exporter = func(v any, i int) any { + switch v := v.(*DeleteCollectionRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[19].Exporter = func(v any, i int) any { + switch v := v.(*DeleteCollectionResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[20].Exporter = func(v any, i int) any { + switch v := v.(*GetCollectionsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[21].Exporter = func(v any, i int) any { + switch v := v.(*GetCollectionsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[22].Exporter = func(v any, i int) any { + switch v := v.(*GetCollectionWithSegmentsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[23].Exporter = func(v any, i int) any { + switch v := v.(*GetCollectionWithSegmentsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[24].Exporter = func(v any, i int) any { + switch v := v.(*CheckCollectionsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[25].Exporter = func(v any, i int) any { + switch v := v.(*CheckCollectionsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[26].Exporter = func(v any, i int) any { + switch v := v.(*UpdateCollectionRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[27].Exporter = func(v any, i int) any { + switch v := v.(*UpdateCollectionResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[28].Exporter = func(v any, i int) any { + switch v := v.(*ResetStateResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[29].Exporter = func(v any, i int) any { + switch v := v.(*GetLastCompactionTimeForTenantRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[30].Exporter = func(v any, i int) any { + switch v := v.(*TenantLastCompactionTime); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[31].Exporter = func(v any, i int) any { + switch v := v.(*GetLastCompactionTimeForTenantResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[32].Exporter = func(v any, i int) any { + switch v := v.(*SetLastCompactionTimeForTenantRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[33].Exporter = func(v any, i int) any { + switch v := v.(*FlushSegmentCompactionInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[34].Exporter = func(v any, i int) any { + switch v := v.(*FlushCollectionCompactionRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_coordinator_proto_msgTypes[35].Exporter = func(v any, i int) any { + switch v := v.(*FlushCollectionCompactionResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + file_chromadb_proto_coordinator_proto_msgTypes[12].OneofWrappers = []any{} + file_chromadb_proto_coordinator_proto_msgTypes[14].OneofWrappers = []any{ + (*UpdateSegmentRequest_Metadata)(nil), + (*UpdateSegmentRequest_ResetMetadata)(nil), + } + file_chromadb_proto_coordinator_proto_msgTypes[16].OneofWrappers = []any{} + file_chromadb_proto_coordinator_proto_msgTypes[20].OneofWrappers = []any{} + file_chromadb_proto_coordinator_proto_msgTypes[26].OneofWrappers = []any{ + (*UpdateCollectionRequest_Metadata)(nil), + (*UpdateCollectionRequest_ResetMetadata)(nil), + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_chromadb_proto_coordinator_proto_rawDesc, + NumEnums: 0, + NumMessages: 37, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_chromadb_proto_coordinator_proto_goTypes, + DependencyIndexes: file_chromadb_proto_coordinator_proto_depIdxs, + MessageInfos: file_chromadb_proto_coordinator_proto_msgTypes, + }.Build() + File_chromadb_proto_coordinator_proto = out.File + file_chromadb_proto_coordinator_proto_rawDesc = nil + file_chromadb_proto_coordinator_proto_goTypes = nil + file_chromadb_proto_coordinator_proto_depIdxs = nil +} diff --git a/go/pkg/proto/coordinatorpb/coordinator_grpc.pb.go b/go/pkg/proto/coordinatorpb/coordinator_grpc.pb.go new file mode 100644 index 00000000000..51a51a388fc --- /dev/null +++ b/go/pkg/proto/coordinatorpb/coordinator_grpc.pb.go @@ -0,0 +1,768 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.5.1 +// - protoc v5.28.2 +// source: chromadb/proto/coordinator.proto + +package coordinatorpb + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + emptypb "google.golang.org/protobuf/types/known/emptypb" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + SysDB_CreateDatabase_FullMethodName = "/chroma.SysDB/CreateDatabase" + SysDB_GetDatabase_FullMethodName = "/chroma.SysDB/GetDatabase" + SysDB_CreateTenant_FullMethodName = "/chroma.SysDB/CreateTenant" + SysDB_GetTenant_FullMethodName = "/chroma.SysDB/GetTenant" + SysDB_CreateSegment_FullMethodName = "/chroma.SysDB/CreateSegment" + SysDB_DeleteSegment_FullMethodName = "/chroma.SysDB/DeleteSegment" + SysDB_GetSegments_FullMethodName = "/chroma.SysDB/GetSegments" + SysDB_UpdateSegment_FullMethodName = "/chroma.SysDB/UpdateSegment" + SysDB_CreateCollection_FullMethodName = "/chroma.SysDB/CreateCollection" + SysDB_DeleteCollection_FullMethodName = "/chroma.SysDB/DeleteCollection" + SysDB_GetCollections_FullMethodName = "/chroma.SysDB/GetCollections" + SysDB_GetCollectionWithSegments_FullMethodName = "/chroma.SysDB/GetCollectionWithSegments" + SysDB_CheckCollections_FullMethodName = "/chroma.SysDB/CheckCollections" + SysDB_UpdateCollection_FullMethodName = "/chroma.SysDB/UpdateCollection" + SysDB_ResetState_FullMethodName = "/chroma.SysDB/ResetState" + SysDB_GetLastCompactionTimeForTenant_FullMethodName = "/chroma.SysDB/GetLastCompactionTimeForTenant" + SysDB_SetLastCompactionTimeForTenant_FullMethodName = "/chroma.SysDB/SetLastCompactionTimeForTenant" + SysDB_FlushCollectionCompaction_FullMethodName = "/chroma.SysDB/FlushCollectionCompaction" +) + +// SysDBClient is the client API for SysDB service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type SysDBClient interface { + CreateDatabase(ctx context.Context, in *CreateDatabaseRequest, opts ...grpc.CallOption) (*CreateDatabaseResponse, error) + GetDatabase(ctx context.Context, in *GetDatabaseRequest, opts ...grpc.CallOption) (*GetDatabaseResponse, error) + CreateTenant(ctx context.Context, in *CreateTenantRequest, opts ...grpc.CallOption) (*CreateTenantResponse, error) + GetTenant(ctx context.Context, in *GetTenantRequest, opts ...grpc.CallOption) (*GetTenantResponse, error) + CreateSegment(ctx context.Context, in *CreateSegmentRequest, opts ...grpc.CallOption) (*CreateSegmentResponse, error) + DeleteSegment(ctx context.Context, in *DeleteSegmentRequest, opts ...grpc.CallOption) (*DeleteSegmentResponse, error) + GetSegments(ctx context.Context, in *GetSegmentsRequest, opts ...grpc.CallOption) (*GetSegmentsResponse, error) + UpdateSegment(ctx context.Context, in *UpdateSegmentRequest, opts ...grpc.CallOption) (*UpdateSegmentResponse, error) + CreateCollection(ctx context.Context, in *CreateCollectionRequest, opts ...grpc.CallOption) (*CreateCollectionResponse, error) + DeleteCollection(ctx context.Context, in *DeleteCollectionRequest, opts ...grpc.CallOption) (*DeleteCollectionResponse, error) + GetCollections(ctx context.Context, in *GetCollectionsRequest, opts ...grpc.CallOption) (*GetCollectionsResponse, error) + GetCollectionWithSegments(ctx context.Context, in *GetCollectionWithSegmentsRequest, opts ...grpc.CallOption) (*GetCollectionWithSegmentsResponse, error) + CheckCollections(ctx context.Context, in *CheckCollectionsRequest, opts ...grpc.CallOption) (*CheckCollectionsResponse, error) + UpdateCollection(ctx context.Context, in *UpdateCollectionRequest, opts ...grpc.CallOption) (*UpdateCollectionResponse, error) + ResetState(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ResetStateResponse, error) + GetLastCompactionTimeForTenant(ctx context.Context, in *GetLastCompactionTimeForTenantRequest, opts ...grpc.CallOption) (*GetLastCompactionTimeForTenantResponse, error) + SetLastCompactionTimeForTenant(ctx context.Context, in *SetLastCompactionTimeForTenantRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + FlushCollectionCompaction(ctx context.Context, in *FlushCollectionCompactionRequest, opts ...grpc.CallOption) (*FlushCollectionCompactionResponse, error) +} + +type sysDBClient struct { + cc grpc.ClientConnInterface +} + +func NewSysDBClient(cc grpc.ClientConnInterface) SysDBClient { + return &sysDBClient{cc} +} + +func (c *sysDBClient) CreateDatabase(ctx context.Context, in *CreateDatabaseRequest, opts ...grpc.CallOption) (*CreateDatabaseResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(CreateDatabaseResponse) + err := c.cc.Invoke(ctx, SysDB_CreateDatabase_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) GetDatabase(ctx context.Context, in *GetDatabaseRequest, opts ...grpc.CallOption) (*GetDatabaseResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetDatabaseResponse) + err := c.cc.Invoke(ctx, SysDB_GetDatabase_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) CreateTenant(ctx context.Context, in *CreateTenantRequest, opts ...grpc.CallOption) (*CreateTenantResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(CreateTenantResponse) + err := c.cc.Invoke(ctx, SysDB_CreateTenant_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) GetTenant(ctx context.Context, in *GetTenantRequest, opts ...grpc.CallOption) (*GetTenantResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetTenantResponse) + err := c.cc.Invoke(ctx, SysDB_GetTenant_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) CreateSegment(ctx context.Context, in *CreateSegmentRequest, opts ...grpc.CallOption) (*CreateSegmentResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(CreateSegmentResponse) + err := c.cc.Invoke(ctx, SysDB_CreateSegment_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) DeleteSegment(ctx context.Context, in *DeleteSegmentRequest, opts ...grpc.CallOption) (*DeleteSegmentResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(DeleteSegmentResponse) + err := c.cc.Invoke(ctx, SysDB_DeleteSegment_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) GetSegments(ctx context.Context, in *GetSegmentsRequest, opts ...grpc.CallOption) (*GetSegmentsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetSegmentsResponse) + err := c.cc.Invoke(ctx, SysDB_GetSegments_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) UpdateSegment(ctx context.Context, in *UpdateSegmentRequest, opts ...grpc.CallOption) (*UpdateSegmentResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(UpdateSegmentResponse) + err := c.cc.Invoke(ctx, SysDB_UpdateSegment_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) CreateCollection(ctx context.Context, in *CreateCollectionRequest, opts ...grpc.CallOption) (*CreateCollectionResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(CreateCollectionResponse) + err := c.cc.Invoke(ctx, SysDB_CreateCollection_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) DeleteCollection(ctx context.Context, in *DeleteCollectionRequest, opts ...grpc.CallOption) (*DeleteCollectionResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(DeleteCollectionResponse) + err := c.cc.Invoke(ctx, SysDB_DeleteCollection_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) GetCollections(ctx context.Context, in *GetCollectionsRequest, opts ...grpc.CallOption) (*GetCollectionsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetCollectionsResponse) + err := c.cc.Invoke(ctx, SysDB_GetCollections_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) GetCollectionWithSegments(ctx context.Context, in *GetCollectionWithSegmentsRequest, opts ...grpc.CallOption) (*GetCollectionWithSegmentsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetCollectionWithSegmentsResponse) + err := c.cc.Invoke(ctx, SysDB_GetCollectionWithSegments_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) CheckCollections(ctx context.Context, in *CheckCollectionsRequest, opts ...grpc.CallOption) (*CheckCollectionsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(CheckCollectionsResponse) + err := c.cc.Invoke(ctx, SysDB_CheckCollections_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) UpdateCollection(ctx context.Context, in *UpdateCollectionRequest, opts ...grpc.CallOption) (*UpdateCollectionResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(UpdateCollectionResponse) + err := c.cc.Invoke(ctx, SysDB_UpdateCollection_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) ResetState(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ResetStateResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ResetStateResponse) + err := c.cc.Invoke(ctx, SysDB_ResetState_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) GetLastCompactionTimeForTenant(ctx context.Context, in *GetLastCompactionTimeForTenantRequest, opts ...grpc.CallOption) (*GetLastCompactionTimeForTenantResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetLastCompactionTimeForTenantResponse) + err := c.cc.Invoke(ctx, SysDB_GetLastCompactionTimeForTenant_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) SetLastCompactionTimeForTenant(ctx context.Context, in *SetLastCompactionTimeForTenantRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(emptypb.Empty) + err := c.cc.Invoke(ctx, SysDB_SetLastCompactionTimeForTenant_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sysDBClient) FlushCollectionCompaction(ctx context.Context, in *FlushCollectionCompactionRequest, opts ...grpc.CallOption) (*FlushCollectionCompactionResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(FlushCollectionCompactionResponse) + err := c.cc.Invoke(ctx, SysDB_FlushCollectionCompaction_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// SysDBServer is the server API for SysDB service. +// All implementations must embed UnimplementedSysDBServer +// for forward compatibility. +type SysDBServer interface { + CreateDatabase(context.Context, *CreateDatabaseRequest) (*CreateDatabaseResponse, error) + GetDatabase(context.Context, *GetDatabaseRequest) (*GetDatabaseResponse, error) + CreateTenant(context.Context, *CreateTenantRequest) (*CreateTenantResponse, error) + GetTenant(context.Context, *GetTenantRequest) (*GetTenantResponse, error) + CreateSegment(context.Context, *CreateSegmentRequest) (*CreateSegmentResponse, error) + DeleteSegment(context.Context, *DeleteSegmentRequest) (*DeleteSegmentResponse, error) + GetSegments(context.Context, *GetSegmentsRequest) (*GetSegmentsResponse, error) + UpdateSegment(context.Context, *UpdateSegmentRequest) (*UpdateSegmentResponse, error) + CreateCollection(context.Context, *CreateCollectionRequest) (*CreateCollectionResponse, error) + DeleteCollection(context.Context, *DeleteCollectionRequest) (*DeleteCollectionResponse, error) + GetCollections(context.Context, *GetCollectionsRequest) (*GetCollectionsResponse, error) + GetCollectionWithSegments(context.Context, *GetCollectionWithSegmentsRequest) (*GetCollectionWithSegmentsResponse, error) + CheckCollections(context.Context, *CheckCollectionsRequest) (*CheckCollectionsResponse, error) + UpdateCollection(context.Context, *UpdateCollectionRequest) (*UpdateCollectionResponse, error) + ResetState(context.Context, *emptypb.Empty) (*ResetStateResponse, error) + GetLastCompactionTimeForTenant(context.Context, *GetLastCompactionTimeForTenantRequest) (*GetLastCompactionTimeForTenantResponse, error) + SetLastCompactionTimeForTenant(context.Context, *SetLastCompactionTimeForTenantRequest) (*emptypb.Empty, error) + FlushCollectionCompaction(context.Context, *FlushCollectionCompactionRequest) (*FlushCollectionCompactionResponse, error) + mustEmbedUnimplementedSysDBServer() +} + +// UnimplementedSysDBServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedSysDBServer struct{} + +func (UnimplementedSysDBServer) CreateDatabase(context.Context, *CreateDatabaseRequest) (*CreateDatabaseResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateDatabase not implemented") +} +func (UnimplementedSysDBServer) GetDatabase(context.Context, *GetDatabaseRequest) (*GetDatabaseResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetDatabase not implemented") +} +func (UnimplementedSysDBServer) CreateTenant(context.Context, *CreateTenantRequest) (*CreateTenantResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateTenant not implemented") +} +func (UnimplementedSysDBServer) GetTenant(context.Context, *GetTenantRequest) (*GetTenantResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetTenant not implemented") +} +func (UnimplementedSysDBServer) CreateSegment(context.Context, *CreateSegmentRequest) (*CreateSegmentResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateSegment not implemented") +} +func (UnimplementedSysDBServer) DeleteSegment(context.Context, *DeleteSegmentRequest) (*DeleteSegmentResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteSegment not implemented") +} +func (UnimplementedSysDBServer) GetSegments(context.Context, *GetSegmentsRequest) (*GetSegmentsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetSegments not implemented") +} +func (UnimplementedSysDBServer) UpdateSegment(context.Context, *UpdateSegmentRequest) (*UpdateSegmentResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateSegment not implemented") +} +func (UnimplementedSysDBServer) CreateCollection(context.Context, *CreateCollectionRequest) (*CreateCollectionResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateCollection not implemented") +} +func (UnimplementedSysDBServer) DeleteCollection(context.Context, *DeleteCollectionRequest) (*DeleteCollectionResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteCollection not implemented") +} +func (UnimplementedSysDBServer) GetCollections(context.Context, *GetCollectionsRequest) (*GetCollectionsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetCollections not implemented") +} +func (UnimplementedSysDBServer) GetCollectionWithSegments(context.Context, *GetCollectionWithSegmentsRequest) (*GetCollectionWithSegmentsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetCollectionWithSegments not implemented") +} +func (UnimplementedSysDBServer) CheckCollections(context.Context, *CheckCollectionsRequest) (*CheckCollectionsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CheckCollections not implemented") +} +func (UnimplementedSysDBServer) UpdateCollection(context.Context, *UpdateCollectionRequest) (*UpdateCollectionResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateCollection not implemented") +} +func (UnimplementedSysDBServer) ResetState(context.Context, *emptypb.Empty) (*ResetStateResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ResetState not implemented") +} +func (UnimplementedSysDBServer) GetLastCompactionTimeForTenant(context.Context, *GetLastCompactionTimeForTenantRequest) (*GetLastCompactionTimeForTenantResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetLastCompactionTimeForTenant not implemented") +} +func (UnimplementedSysDBServer) SetLastCompactionTimeForTenant(context.Context, *SetLastCompactionTimeForTenantRequest) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method SetLastCompactionTimeForTenant not implemented") +} +func (UnimplementedSysDBServer) FlushCollectionCompaction(context.Context, *FlushCollectionCompactionRequest) (*FlushCollectionCompactionResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method FlushCollectionCompaction not implemented") +} +func (UnimplementedSysDBServer) mustEmbedUnimplementedSysDBServer() {} +func (UnimplementedSysDBServer) testEmbeddedByValue() {} + +// UnsafeSysDBServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to SysDBServer will +// result in compilation errors. +type UnsafeSysDBServer interface { + mustEmbedUnimplementedSysDBServer() +} + +func RegisterSysDBServer(s grpc.ServiceRegistrar, srv SysDBServer) { + // If the following call pancis, it indicates UnimplementedSysDBServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&SysDB_ServiceDesc, srv) +} + +func _SysDB_CreateDatabase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateDatabaseRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).CreateDatabase(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_CreateDatabase_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).CreateDatabase(ctx, req.(*CreateDatabaseRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_GetDatabase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetDatabaseRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).GetDatabase(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_GetDatabase_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).GetDatabase(ctx, req.(*GetDatabaseRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_CreateTenant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateTenantRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).CreateTenant(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_CreateTenant_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).CreateTenant(ctx, req.(*CreateTenantRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_GetTenant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetTenantRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).GetTenant(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_GetTenant_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).GetTenant(ctx, req.(*GetTenantRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_CreateSegment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateSegmentRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).CreateSegment(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_CreateSegment_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).CreateSegment(ctx, req.(*CreateSegmentRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_DeleteSegment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteSegmentRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).DeleteSegment(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_DeleteSegment_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).DeleteSegment(ctx, req.(*DeleteSegmentRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_GetSegments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetSegmentsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).GetSegments(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_GetSegments_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).GetSegments(ctx, req.(*GetSegmentsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_UpdateSegment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateSegmentRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).UpdateSegment(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_UpdateSegment_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).UpdateSegment(ctx, req.(*UpdateSegmentRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_CreateCollection_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateCollectionRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).CreateCollection(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_CreateCollection_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).CreateCollection(ctx, req.(*CreateCollectionRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_DeleteCollection_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteCollectionRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).DeleteCollection(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_DeleteCollection_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).DeleteCollection(ctx, req.(*DeleteCollectionRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_GetCollections_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetCollectionsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).GetCollections(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_GetCollections_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).GetCollections(ctx, req.(*GetCollectionsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_GetCollectionWithSegments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetCollectionWithSegmentsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).GetCollectionWithSegments(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_GetCollectionWithSegments_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).GetCollectionWithSegments(ctx, req.(*GetCollectionWithSegmentsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_CheckCollections_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CheckCollectionsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).CheckCollections(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_CheckCollections_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).CheckCollections(ctx, req.(*CheckCollectionsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_UpdateCollection_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateCollectionRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).UpdateCollection(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_UpdateCollection_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).UpdateCollection(ctx, req.(*UpdateCollectionRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_ResetState_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(emptypb.Empty) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).ResetState(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_ResetState_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).ResetState(ctx, req.(*emptypb.Empty)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_GetLastCompactionTimeForTenant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetLastCompactionTimeForTenantRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).GetLastCompactionTimeForTenant(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_GetLastCompactionTimeForTenant_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).GetLastCompactionTimeForTenant(ctx, req.(*GetLastCompactionTimeForTenantRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_SetLastCompactionTimeForTenant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SetLastCompactionTimeForTenantRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).SetLastCompactionTimeForTenant(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_SetLastCompactionTimeForTenant_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).SetLastCompactionTimeForTenant(ctx, req.(*SetLastCompactionTimeForTenantRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _SysDB_FlushCollectionCompaction_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(FlushCollectionCompactionRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SysDBServer).FlushCollectionCompaction(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: SysDB_FlushCollectionCompaction_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SysDBServer).FlushCollectionCompaction(ctx, req.(*FlushCollectionCompactionRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// SysDB_ServiceDesc is the grpc.ServiceDesc for SysDB service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var SysDB_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "chroma.SysDB", + HandlerType: (*SysDBServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "CreateDatabase", + Handler: _SysDB_CreateDatabase_Handler, + }, + { + MethodName: "GetDatabase", + Handler: _SysDB_GetDatabase_Handler, + }, + { + MethodName: "CreateTenant", + Handler: _SysDB_CreateTenant_Handler, + }, + { + MethodName: "GetTenant", + Handler: _SysDB_GetTenant_Handler, + }, + { + MethodName: "CreateSegment", + Handler: _SysDB_CreateSegment_Handler, + }, + { + MethodName: "DeleteSegment", + Handler: _SysDB_DeleteSegment_Handler, + }, + { + MethodName: "GetSegments", + Handler: _SysDB_GetSegments_Handler, + }, + { + MethodName: "UpdateSegment", + Handler: _SysDB_UpdateSegment_Handler, + }, + { + MethodName: "CreateCollection", + Handler: _SysDB_CreateCollection_Handler, + }, + { + MethodName: "DeleteCollection", + Handler: _SysDB_DeleteCollection_Handler, + }, + { + MethodName: "GetCollections", + Handler: _SysDB_GetCollections_Handler, + }, + { + MethodName: "GetCollectionWithSegments", + Handler: _SysDB_GetCollectionWithSegments_Handler, + }, + { + MethodName: "CheckCollections", + Handler: _SysDB_CheckCollections_Handler, + }, + { + MethodName: "UpdateCollection", + Handler: _SysDB_UpdateCollection_Handler, + }, + { + MethodName: "ResetState", + Handler: _SysDB_ResetState_Handler, + }, + { + MethodName: "GetLastCompactionTimeForTenant", + Handler: _SysDB_GetLastCompactionTimeForTenant_Handler, + }, + { + MethodName: "SetLastCompactionTimeForTenant", + Handler: _SysDB_SetLastCompactionTimeForTenant_Handler, + }, + { + MethodName: "FlushCollectionCompaction", + Handler: _SysDB_FlushCollectionCompaction_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "chromadb/proto/coordinator.proto", +} diff --git a/go/pkg/proto/logservicepb/logservice.pb.go b/go/pkg/proto/logservicepb/logservice.pb.go new file mode 100644 index 00000000000..89401ef2b8b --- /dev/null +++ b/go/pkg/proto/logservicepb/logservice.pb.go @@ -0,0 +1,844 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc v5.28.2 +// source: chromadb/proto/logservice.proto + +package logservicepb + +import ( + coordinatorpb "github.com/chroma-core/chroma/go/pkg/proto/coordinatorpb" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type PushLogsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CollectionId string `protobuf:"bytes,1,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` + Records []*coordinatorpb.OperationRecord `protobuf:"bytes,2,rep,name=records,proto3" json:"records,omitempty"` +} + +func (x *PushLogsRequest) Reset() { + *x = PushLogsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_logservice_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PushLogsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PushLogsRequest) ProtoMessage() {} + +func (x *PushLogsRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_logservice_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PushLogsRequest.ProtoReflect.Descriptor instead. +func (*PushLogsRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{0} +} + +func (x *PushLogsRequest) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *PushLogsRequest) GetRecords() []*coordinatorpb.OperationRecord { + if x != nil { + return x.Records + } + return nil +} + +type PushLogsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RecordCount int32 `protobuf:"varint,1,opt,name=record_count,json=recordCount,proto3" json:"record_count,omitempty"` +} + +func (x *PushLogsResponse) Reset() { + *x = PushLogsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_logservice_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PushLogsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PushLogsResponse) ProtoMessage() {} + +func (x *PushLogsResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_logservice_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PushLogsResponse.ProtoReflect.Descriptor instead. +func (*PushLogsResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{1} +} + +func (x *PushLogsResponse) GetRecordCount() int32 { + if x != nil { + return x.RecordCount + } + return 0 +} + +type PullLogsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CollectionId string `protobuf:"bytes,1,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` + StartFromOffset int64 `protobuf:"varint,2,opt,name=start_from_offset,json=startFromOffset,proto3" json:"start_from_offset,omitempty"` + BatchSize int32 `protobuf:"varint,3,opt,name=batch_size,json=batchSize,proto3" json:"batch_size,omitempty"` + EndTimestamp int64 `protobuf:"varint,4,opt,name=end_timestamp,json=endTimestamp,proto3" json:"end_timestamp,omitempty"` +} + +func (x *PullLogsRequest) Reset() { + *x = PullLogsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_logservice_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PullLogsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PullLogsRequest) ProtoMessage() {} + +func (x *PullLogsRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_logservice_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PullLogsRequest.ProtoReflect.Descriptor instead. +func (*PullLogsRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{2} +} + +func (x *PullLogsRequest) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *PullLogsRequest) GetStartFromOffset() int64 { + if x != nil { + return x.StartFromOffset + } + return 0 +} + +func (x *PullLogsRequest) GetBatchSize() int32 { + if x != nil { + return x.BatchSize + } + return 0 +} + +func (x *PullLogsRequest) GetEndTimestamp() int64 { + if x != nil { + return x.EndTimestamp + } + return 0 +} + +// Represents an operation from the log +type LogRecord struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + LogOffset int64 `protobuf:"varint,1,opt,name=log_offset,json=logOffset,proto3" json:"log_offset,omitempty"` + Record *coordinatorpb.OperationRecord `protobuf:"bytes,2,opt,name=record,proto3" json:"record,omitempty"` +} + +func (x *LogRecord) Reset() { + *x = LogRecord{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_logservice_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LogRecord) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LogRecord) ProtoMessage() {} + +func (x *LogRecord) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_logservice_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LogRecord.ProtoReflect.Descriptor instead. +func (*LogRecord) Descriptor() ([]byte, []int) { + return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{3} +} + +func (x *LogRecord) GetLogOffset() int64 { + if x != nil { + return x.LogOffset + } + return 0 +} + +func (x *LogRecord) GetRecord() *coordinatorpb.OperationRecord { + if x != nil { + return x.Record + } + return nil +} + +type PullLogsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Records []*LogRecord `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"` +} + +func (x *PullLogsResponse) Reset() { + *x = PullLogsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_logservice_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PullLogsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PullLogsResponse) ProtoMessage() {} + +func (x *PullLogsResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_logservice_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PullLogsResponse.ProtoReflect.Descriptor instead. +func (*PullLogsResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{4} +} + +func (x *PullLogsResponse) GetRecords() []*LogRecord { + if x != nil { + return x.Records + } + return nil +} + +type CollectionInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CollectionId string `protobuf:"bytes,1,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` + // The log offset of the first log entry of the collection that needs to be compacted + FirstLogOffset int64 `protobuf:"varint,2,opt,name=first_log_offset,json=firstLogOffset,proto3" json:"first_log_offset,omitempty"` + // The timestamp of the first log entry of the collection that needs to be compacted + FirstLogTs int64 `protobuf:"varint,3,opt,name=first_log_ts,json=firstLogTs,proto3" json:"first_log_ts,omitempty"` +} + +func (x *CollectionInfo) Reset() { + *x = CollectionInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_logservice_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CollectionInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CollectionInfo) ProtoMessage() {} + +func (x *CollectionInfo) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_logservice_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CollectionInfo.ProtoReflect.Descriptor instead. +func (*CollectionInfo) Descriptor() ([]byte, []int) { + return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{5} +} + +func (x *CollectionInfo) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *CollectionInfo) GetFirstLogOffset() int64 { + if x != nil { + return x.FirstLogOffset + } + return 0 +} + +func (x *CollectionInfo) GetFirstLogTs() int64 { + if x != nil { + return x.FirstLogTs + } + return 0 +} + +type GetAllCollectionInfoToCompactRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The minimum number of log entries that a collection should have before it should + // be returned for compaction + MinCompactionSize uint64 `protobuf:"varint,1,opt,name=min_compaction_size,json=minCompactionSize,proto3" json:"min_compaction_size,omitempty"` +} + +func (x *GetAllCollectionInfoToCompactRequest) Reset() { + *x = GetAllCollectionInfoToCompactRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_logservice_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetAllCollectionInfoToCompactRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetAllCollectionInfoToCompactRequest) ProtoMessage() {} + +func (x *GetAllCollectionInfoToCompactRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_logservice_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetAllCollectionInfoToCompactRequest.ProtoReflect.Descriptor instead. +func (*GetAllCollectionInfoToCompactRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{6} +} + +func (x *GetAllCollectionInfoToCompactRequest) GetMinCompactionSize() uint64 { + if x != nil { + return x.MinCompactionSize + } + return 0 +} + +type GetAllCollectionInfoToCompactResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AllCollectionInfo []*CollectionInfo `protobuf:"bytes,1,rep,name=all_collection_info,json=allCollectionInfo,proto3" json:"all_collection_info,omitempty"` +} + +func (x *GetAllCollectionInfoToCompactResponse) Reset() { + *x = GetAllCollectionInfoToCompactResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_logservice_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetAllCollectionInfoToCompactResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetAllCollectionInfoToCompactResponse) ProtoMessage() {} + +func (x *GetAllCollectionInfoToCompactResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_logservice_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetAllCollectionInfoToCompactResponse.ProtoReflect.Descriptor instead. +func (*GetAllCollectionInfoToCompactResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{7} +} + +func (x *GetAllCollectionInfoToCompactResponse) GetAllCollectionInfo() []*CollectionInfo { + if x != nil { + return x.AllCollectionInfo + } + return nil +} + +type UpdateCollectionLogOffsetRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CollectionId string `protobuf:"bytes,1,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` + LogOffset int64 `protobuf:"varint,2,opt,name=log_offset,json=logOffset,proto3" json:"log_offset,omitempty"` +} + +func (x *UpdateCollectionLogOffsetRequest) Reset() { + *x = UpdateCollectionLogOffsetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_logservice_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateCollectionLogOffsetRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateCollectionLogOffsetRequest) ProtoMessage() {} + +func (x *UpdateCollectionLogOffsetRequest) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_logservice_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateCollectionLogOffsetRequest.ProtoReflect.Descriptor instead. +func (*UpdateCollectionLogOffsetRequest) Descriptor() ([]byte, []int) { + return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{8} +} + +func (x *UpdateCollectionLogOffsetRequest) GetCollectionId() string { + if x != nil { + return x.CollectionId + } + return "" +} + +func (x *UpdateCollectionLogOffsetRequest) GetLogOffset() int64 { + if x != nil { + return x.LogOffset + } + return 0 +} + +type UpdateCollectionLogOffsetResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *UpdateCollectionLogOffsetResponse) Reset() { + *x = UpdateCollectionLogOffsetResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_chromadb_proto_logservice_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateCollectionLogOffsetResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateCollectionLogOffsetResponse) ProtoMessage() {} + +func (x *UpdateCollectionLogOffsetResponse) ProtoReflect() protoreflect.Message { + mi := &file_chromadb_proto_logservice_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateCollectionLogOffsetResponse.ProtoReflect.Descriptor instead. +func (*UpdateCollectionLogOffsetResponse) Descriptor() ([]byte, []int) { + return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{9} +} + +var File_chromadb_proto_logservice_proto protoreflect.FileDescriptor + +var file_chromadb_proto_logservice_proto_rawDesc = []byte{ + 0x0a, 0x1f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2f, 0x6c, 0x6f, 0x67, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x12, 0x06, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x1a, 0x1b, 0x63, 0x68, 0x72, 0x6f, 0x6d, + 0x61, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x69, 0x0a, 0x0f, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x6f, + 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x31, + 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, + 0x73, 0x22, 0x35, 0x0a, 0x10, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x65, 0x63, + 0x6f, 0x72, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa6, 0x01, 0x0a, 0x0f, 0x50, 0x75, 0x6c, + 0x6c, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, + 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, + 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x46, 0x72, 0x6f, 0x6d, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1d, 0x0a, + 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, + 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0c, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x22, 0x5b, 0x0a, 0x09, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1d, + 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2f, 0x0a, + 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x3f, + 0x0a, 0x10, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4c, 0x6f, 0x67, + 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x22, + 0x81, 0x01, 0x0a, 0x0e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, + 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, + 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x74, + 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4c, 0x6f, + 0x67, 0x54, 0x73, 0x22, 0x56, 0x0a, 0x24, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, + 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x54, 0x6f, 0x43, 0x6f, 0x6d, + 0x70, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x6d, + 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, + 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6d, + 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x6f, 0x0a, 0x25, 0x47, + 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, + 0x6e, 0x66, 0x6f, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x13, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, + 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x11, 0x61, 0x6c, 0x6c, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x66, 0x0a, 0x20, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x4c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x66, 0x66, + 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x4f, 0x66, + 0x66, 0x73, 0x65, 0x74, 0x22, 0x23, 0x0a, 0x21, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x82, 0x03, 0x0a, 0x0a, 0x4c, 0x6f, + 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x50, 0x75, 0x73, 0x68, + 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x17, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x50, 0x75, + 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, + 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x08, 0x50, 0x75, 0x6c, + 0x6c, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x17, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x50, + 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, + 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x67, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x7e, 0x0a, 0x1d, 0x47, 0x65, + 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, + 0x66, 0x6f, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x12, 0x2c, 0x2e, 0x63, 0x68, + 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x61, + 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f, + 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x72, 0x0a, 0x19, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, + 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x28, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, + 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x4c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x4f, 0x66, + 0x66, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x39, + 0x5a, 0x37, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x72, + 0x6f, 0x6d, 0x61, 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2f, + 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6c, 0x6f, 0x67, + 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, +} + +var ( + file_chromadb_proto_logservice_proto_rawDescOnce sync.Once + file_chromadb_proto_logservice_proto_rawDescData = file_chromadb_proto_logservice_proto_rawDesc +) + +func file_chromadb_proto_logservice_proto_rawDescGZIP() []byte { + file_chromadb_proto_logservice_proto_rawDescOnce.Do(func() { + file_chromadb_proto_logservice_proto_rawDescData = protoimpl.X.CompressGZIP(file_chromadb_proto_logservice_proto_rawDescData) + }) + return file_chromadb_proto_logservice_proto_rawDescData +} + +var file_chromadb_proto_logservice_proto_msgTypes = make([]protoimpl.MessageInfo, 10) +var file_chromadb_proto_logservice_proto_goTypes = []any{ + (*PushLogsRequest)(nil), // 0: chroma.PushLogsRequest + (*PushLogsResponse)(nil), // 1: chroma.PushLogsResponse + (*PullLogsRequest)(nil), // 2: chroma.PullLogsRequest + (*LogRecord)(nil), // 3: chroma.LogRecord + (*PullLogsResponse)(nil), // 4: chroma.PullLogsResponse + (*CollectionInfo)(nil), // 5: chroma.CollectionInfo + (*GetAllCollectionInfoToCompactRequest)(nil), // 6: chroma.GetAllCollectionInfoToCompactRequest + (*GetAllCollectionInfoToCompactResponse)(nil), // 7: chroma.GetAllCollectionInfoToCompactResponse + (*UpdateCollectionLogOffsetRequest)(nil), // 8: chroma.UpdateCollectionLogOffsetRequest + (*UpdateCollectionLogOffsetResponse)(nil), // 9: chroma.UpdateCollectionLogOffsetResponse + (*coordinatorpb.OperationRecord)(nil), // 10: chroma.OperationRecord +} +var file_chromadb_proto_logservice_proto_depIdxs = []int32{ + 10, // 0: chroma.PushLogsRequest.records:type_name -> chroma.OperationRecord + 10, // 1: chroma.LogRecord.record:type_name -> chroma.OperationRecord + 3, // 2: chroma.PullLogsResponse.records:type_name -> chroma.LogRecord + 5, // 3: chroma.GetAllCollectionInfoToCompactResponse.all_collection_info:type_name -> chroma.CollectionInfo + 0, // 4: chroma.LogService.PushLogs:input_type -> chroma.PushLogsRequest + 2, // 5: chroma.LogService.PullLogs:input_type -> chroma.PullLogsRequest + 6, // 6: chroma.LogService.GetAllCollectionInfoToCompact:input_type -> chroma.GetAllCollectionInfoToCompactRequest + 8, // 7: chroma.LogService.UpdateCollectionLogOffset:input_type -> chroma.UpdateCollectionLogOffsetRequest + 1, // 8: chroma.LogService.PushLogs:output_type -> chroma.PushLogsResponse + 4, // 9: chroma.LogService.PullLogs:output_type -> chroma.PullLogsResponse + 7, // 10: chroma.LogService.GetAllCollectionInfoToCompact:output_type -> chroma.GetAllCollectionInfoToCompactResponse + 9, // 11: chroma.LogService.UpdateCollectionLogOffset:output_type -> chroma.UpdateCollectionLogOffsetResponse + 8, // [8:12] is the sub-list for method output_type + 4, // [4:8] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name +} + +func init() { file_chromadb_proto_logservice_proto_init() } +func file_chromadb_proto_logservice_proto_init() { + if File_chromadb_proto_logservice_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_chromadb_proto_logservice_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*PushLogsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_logservice_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*PushLogsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_logservice_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*PullLogsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_logservice_proto_msgTypes[3].Exporter = func(v any, i int) any { + switch v := v.(*LogRecord); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_logservice_proto_msgTypes[4].Exporter = func(v any, i int) any { + switch v := v.(*PullLogsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_logservice_proto_msgTypes[5].Exporter = func(v any, i int) any { + switch v := v.(*CollectionInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_logservice_proto_msgTypes[6].Exporter = func(v any, i int) any { + switch v := v.(*GetAllCollectionInfoToCompactRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_logservice_proto_msgTypes[7].Exporter = func(v any, i int) any { + switch v := v.(*GetAllCollectionInfoToCompactResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_logservice_proto_msgTypes[8].Exporter = func(v any, i int) any { + switch v := v.(*UpdateCollectionLogOffsetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_chromadb_proto_logservice_proto_msgTypes[9].Exporter = func(v any, i int) any { + switch v := v.(*UpdateCollectionLogOffsetResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_chromadb_proto_logservice_proto_rawDesc, + NumEnums: 0, + NumMessages: 10, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_chromadb_proto_logservice_proto_goTypes, + DependencyIndexes: file_chromadb_proto_logservice_proto_depIdxs, + MessageInfos: file_chromadb_proto_logservice_proto_msgTypes, + }.Build() + File_chromadb_proto_logservice_proto = out.File + file_chromadb_proto_logservice_proto_rawDesc = nil + file_chromadb_proto_logservice_proto_goTypes = nil + file_chromadb_proto_logservice_proto_depIdxs = nil +} diff --git a/go/pkg/proto/logservicepb/logservice_grpc.pb.go b/go/pkg/proto/logservicepb/logservice_grpc.pb.go new file mode 100644 index 00000000000..af03bda28d0 --- /dev/null +++ b/go/pkg/proto/logservicepb/logservice_grpc.pb.go @@ -0,0 +1,235 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.5.1 +// - protoc v5.28.2 +// source: chromadb/proto/logservice.proto + +package logservicepb + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + LogService_PushLogs_FullMethodName = "/chroma.LogService/PushLogs" + LogService_PullLogs_FullMethodName = "/chroma.LogService/PullLogs" + LogService_GetAllCollectionInfoToCompact_FullMethodName = "/chroma.LogService/GetAllCollectionInfoToCompact" + LogService_UpdateCollectionLogOffset_FullMethodName = "/chroma.LogService/UpdateCollectionLogOffset" +) + +// LogServiceClient is the client API for LogService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type LogServiceClient interface { + PushLogs(ctx context.Context, in *PushLogsRequest, opts ...grpc.CallOption) (*PushLogsResponse, error) + PullLogs(ctx context.Context, in *PullLogsRequest, opts ...grpc.CallOption) (*PullLogsResponse, error) + GetAllCollectionInfoToCompact(ctx context.Context, in *GetAllCollectionInfoToCompactRequest, opts ...grpc.CallOption) (*GetAllCollectionInfoToCompactResponse, error) + UpdateCollectionLogOffset(ctx context.Context, in *UpdateCollectionLogOffsetRequest, opts ...grpc.CallOption) (*UpdateCollectionLogOffsetResponse, error) +} + +type logServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewLogServiceClient(cc grpc.ClientConnInterface) LogServiceClient { + return &logServiceClient{cc} +} + +func (c *logServiceClient) PushLogs(ctx context.Context, in *PushLogsRequest, opts ...grpc.CallOption) (*PushLogsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(PushLogsResponse) + err := c.cc.Invoke(ctx, LogService_PushLogs_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *logServiceClient) PullLogs(ctx context.Context, in *PullLogsRequest, opts ...grpc.CallOption) (*PullLogsResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(PullLogsResponse) + err := c.cc.Invoke(ctx, LogService_PullLogs_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *logServiceClient) GetAllCollectionInfoToCompact(ctx context.Context, in *GetAllCollectionInfoToCompactRequest, opts ...grpc.CallOption) (*GetAllCollectionInfoToCompactResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetAllCollectionInfoToCompactResponse) + err := c.cc.Invoke(ctx, LogService_GetAllCollectionInfoToCompact_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *logServiceClient) UpdateCollectionLogOffset(ctx context.Context, in *UpdateCollectionLogOffsetRequest, opts ...grpc.CallOption) (*UpdateCollectionLogOffsetResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(UpdateCollectionLogOffsetResponse) + err := c.cc.Invoke(ctx, LogService_UpdateCollectionLogOffset_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// LogServiceServer is the server API for LogService service. +// All implementations must embed UnimplementedLogServiceServer +// for forward compatibility. +type LogServiceServer interface { + PushLogs(context.Context, *PushLogsRequest) (*PushLogsResponse, error) + PullLogs(context.Context, *PullLogsRequest) (*PullLogsResponse, error) + GetAllCollectionInfoToCompact(context.Context, *GetAllCollectionInfoToCompactRequest) (*GetAllCollectionInfoToCompactResponse, error) + UpdateCollectionLogOffset(context.Context, *UpdateCollectionLogOffsetRequest) (*UpdateCollectionLogOffsetResponse, error) + mustEmbedUnimplementedLogServiceServer() +} + +// UnimplementedLogServiceServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedLogServiceServer struct{} + +func (UnimplementedLogServiceServer) PushLogs(context.Context, *PushLogsRequest) (*PushLogsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PushLogs not implemented") +} +func (UnimplementedLogServiceServer) PullLogs(context.Context, *PullLogsRequest) (*PullLogsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PullLogs not implemented") +} +func (UnimplementedLogServiceServer) GetAllCollectionInfoToCompact(context.Context, *GetAllCollectionInfoToCompactRequest) (*GetAllCollectionInfoToCompactResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetAllCollectionInfoToCompact not implemented") +} +func (UnimplementedLogServiceServer) UpdateCollectionLogOffset(context.Context, *UpdateCollectionLogOffsetRequest) (*UpdateCollectionLogOffsetResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateCollectionLogOffset not implemented") +} +func (UnimplementedLogServiceServer) mustEmbedUnimplementedLogServiceServer() {} +func (UnimplementedLogServiceServer) testEmbeddedByValue() {} + +// UnsafeLogServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to LogServiceServer will +// result in compilation errors. +type UnsafeLogServiceServer interface { + mustEmbedUnimplementedLogServiceServer() +} + +func RegisterLogServiceServer(s grpc.ServiceRegistrar, srv LogServiceServer) { + // If the following call pancis, it indicates UnimplementedLogServiceServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&LogService_ServiceDesc, srv) +} + +func _LogService_PushLogs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(PushLogsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(LogServiceServer).PushLogs(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: LogService_PushLogs_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(LogServiceServer).PushLogs(ctx, req.(*PushLogsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _LogService_PullLogs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(PullLogsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(LogServiceServer).PullLogs(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: LogService_PullLogs_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(LogServiceServer).PullLogs(ctx, req.(*PullLogsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _LogService_GetAllCollectionInfoToCompact_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetAllCollectionInfoToCompactRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(LogServiceServer).GetAllCollectionInfoToCompact(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: LogService_GetAllCollectionInfoToCompact_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(LogServiceServer).GetAllCollectionInfoToCompact(ctx, req.(*GetAllCollectionInfoToCompactRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _LogService_UpdateCollectionLogOffset_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateCollectionLogOffsetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(LogServiceServer).UpdateCollectionLogOffset(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: LogService_UpdateCollectionLogOffset_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(LogServiceServer).UpdateCollectionLogOffset(ctx, req.(*UpdateCollectionLogOffsetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// LogService_ServiceDesc is the grpc.ServiceDesc for LogService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var LogService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "chroma.LogService", + HandlerType: (*LogServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "PushLogs", + Handler: _LogService_PushLogs_Handler, + }, + { + MethodName: "PullLogs", + Handler: _LogService_PullLogs_Handler, + }, + { + MethodName: "GetAllCollectionInfoToCompact", + Handler: _LogService_GetAllCollectionInfoToCompact_Handler, + }, + { + MethodName: "UpdateCollectionLogOffset", + Handler: _LogService_UpdateCollectionLogOffset_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "chromadb/proto/logservice.proto", +} diff --git a/rust/blockstore/src/arrow/flusher.rs b/rust/blockstore/src/arrow/flusher.rs index e6e2903d0b1..24ebbd6ccaa 100644 --- a/rust/blockstore/src/arrow/flusher.rs +++ b/rust/blockstore/src/arrow/flusher.rs @@ -44,19 +44,15 @@ impl ArrowBlockfileFlusher { // Flush all blocks in parallel using futures unordered // NOTE(hammadb) we do not use try_join_all here because we want to flush all blocks // in parallel and try_join_all / join_all switches to using futures_ordered if the - // number of futures is high. However, our NAC controls the number of futures that can be - // created at once, so that behavior is redudant and suboptimal for us. - // As of 10/28 the NAC does not impact the write path, only the read path. - // As a workaround we used buffered futures to reduce concurrency - // once the NAC supports write path admission control we can switch back - // to unbuffered futures. + // number of futures is high. let mut futures = Vec::new(); for block in &self.blocks { futures.push(self.block_manager.flush(block)); } + let num_futures = futures.len(); futures::stream::iter(futures) - .buffer_unordered(30) + .buffer_unordered(num_futures) .try_collect::>() .await?; diff --git a/rust/storage/src/admissioncontrolleds3.rs b/rust/storage/src/admissioncontrolleds3.rs index 91fa3d6d7ca..bca719671f9 100644 --- a/rust/storage/src/admissioncontrolleds3.rs +++ b/rust/storage/src/admissioncontrolleds3.rs @@ -4,10 +4,14 @@ use crate::{ s3::{S3GetError, S3PutError, S3Storage}, }; use async_trait::async_trait; +use aws_sdk_s3::primitives::{ByteStream, Length}; +use bytes::Bytes; use chroma_config::Configurable; use chroma_error::{ChromaError, ErrorCodes}; +use futures::future::BoxFuture; use futures::{future::Shared, stream, FutureExt, StreamExt}; use parking_lot::Mutex; +use std::ops::Range; use std::{collections::HashMap, future::Future, pin::Pin, sync::Arc}; use thiserror::Error; use tokio::{ @@ -18,11 +22,14 @@ use tracing::{Instrument, Span}; /// Wrapper over s3 storage that provides proxy features such as /// request coalescing, rate limiting, etc. +/// For reads, it will coalesce requests for the same key and rate limit +/// the number of concurrent requests. +/// For writes, it will rate limit the number of concurrent requests. #[derive(Clone)] pub struct AdmissionControlledS3Storage { storage: S3Storage, #[allow(clippy::type_complexity)] - outstanding_requests: Arc< + outstanding_read_requests: Arc< Mutex< HashMap< String, @@ -63,7 +70,7 @@ impl AdmissionControlledS3Storage { pub fn new_with_default_policy(storage: S3Storage) -> Self { Self { storage, - outstanding_requests: Arc::new(Mutex::new(HashMap::new())), + outstanding_read_requests: Arc::new(Mutex::new(HashMap::new())), rate_limiter: Arc::new(RateLimitPolicy::CountBasedPolicy(CountBasedPolicy::new(2))), } } @@ -71,7 +78,7 @@ impl AdmissionControlledS3Storage { pub fn new(storage: S3Storage, policy: RateLimitPolicy) -> Self { Self { storage, - outstanding_requests: Arc::new(Mutex::new(HashMap::new())), + outstanding_read_requests: Arc::new(Mutex::new(HashMap::new())), rate_limiter: Arc::new(policy), } } @@ -180,7 +187,7 @@ impl AdmissionControlledS3Storage { // request to S3. let future_to_await; { - let mut requests = self.outstanding_requests.lock(); + let mut requests = self.outstanding_read_requests.lock(); let maybe_inflight = requests.get(&key).cloned(); future_to_await = match maybe_inflight { Some(fut) => { @@ -203,7 +210,7 @@ impl AdmissionControlledS3Storage { let res = future_to_await.await; { - let mut requests = self.outstanding_requests.lock(); + let mut requests = self.outstanding_read_requests.lock(); requests.remove(&key); } res @@ -218,7 +225,7 @@ impl AdmissionControlledS3Storage { // request to S3. let future_to_await; { - let mut requests = self.outstanding_requests.lock(); + let mut requests = self.outstanding_read_requests.lock(); let maybe_inflight = requests.get(&key).cloned(); future_to_await = match maybe_inflight { Some(fut) => fut, @@ -238,18 +245,115 @@ impl AdmissionControlledS3Storage { let res = future_to_await.await; { - let mut requests = self.outstanding_requests.lock(); + let mut requests = self.outstanding_read_requests.lock(); requests.remove(&key); } res } + async fn oneshot_upload( + &self, + key: &str, + total_size_bytes: usize, + create_bytestream_fn: impl Fn( + Range, + ) -> BoxFuture<'static, Result>, + ) -> Result<(), S3PutError> { + // Acquire permit. + let _permit = self.rate_limiter.enter().await; + self.storage + .oneshot_upload(key, total_size_bytes, create_bytestream_fn) + .await + // Permit gets dropped due to RAII. + } + + async fn multipart_upload( + &self, + key: &str, + total_size_bytes: usize, + create_bytestream_fn: impl Fn( + Range, + ) -> BoxFuture<'static, Result>, + ) -> Result<(), S3PutError> { + let (part_count, size_of_last_part, upload_id) = self + .storage + .prepare_multipart_upload(key, total_size_bytes) + .await?; + let mut upload_parts = Vec::new(); + for part_index in 0..part_count { + // Acquire token. + let _permit = self.rate_limiter.enter().await; + let completed_part = self + .storage + .upload_part( + key, + &upload_id, + part_count, + part_index, + size_of_last_part, + &create_bytestream_fn, + ) + .await?; + upload_parts.push(completed_part); + // Permit gets dropped due to RAII. + } + + self.storage + .finish_multipart_upload(key, &upload_id, upload_parts) + .await + } + + async fn put_object( + &self, + key: &str, + total_size_bytes: usize, + create_bytestream_fn: impl Fn( + Range, + ) -> BoxFuture<'static, Result>, + ) -> Result<(), S3PutError> { + if self.storage.is_oneshot_upload(total_size_bytes) { + return self + .oneshot_upload(key, total_size_bytes, create_bytestream_fn) + .await; + } + + self.multipart_upload(key, total_size_bytes, create_bytestream_fn) + .await + } + pub async fn put_file(&self, key: &str, path: &str) -> Result<(), S3PutError> { - self.storage.put_file(key, path).await + let file_size = tokio::fs::metadata(path) + .await + .map_err(|err| S3PutError::S3PutError(err.to_string()))? + .len(); + + let path = path.to_string(); + + self.put_object(key, file_size as usize, move |range| { + let path = path.clone(); + + async move { + ByteStream::read_from() + .path(path) + .offset(range.start as u64) + .length(Length::Exact(range.len() as u64)) + .build() + .await + .map_err(|err| S3PutError::S3PutError(err.to_string())) + } + .boxed() + }) + .await } pub async fn put_bytes(&self, key: &str, bytes: Vec) -> Result<(), S3PutError> { - self.storage.put_bytes(key, bytes).await + let bytes = Arc::new(Bytes::from(bytes)); + + self.put_object(key, bytes.len(), move |range| { + let bytes = bytes.clone(); + async move { Ok(ByteStream::from(bytes.slice(range))) }.boxed() + }) + .await } } diff --git a/rust/storage/src/s3.rs b/rust/storage/src/s3.rs index bcecb987038..b1e9567e333 100644 --- a/rust/storage/src/s3.rs +++ b/rust/storage/src/s3.rs @@ -339,6 +339,10 @@ impl S3Storage { } } + pub(super) fn is_oneshot_upload(&self, total_size_bytes: usize) -> bool { + total_size_bytes < self.upload_part_size_bytes + } + pub async fn put_bytes(&self, key: &str, bytes: Vec) -> Result<(), S3PutError> { let bytes = Arc::new(Bytes::from(bytes)); @@ -382,7 +386,7 @@ impl S3Storage { Range, ) -> BoxFuture<'static, Result>, ) -> Result<(), S3PutError> { - if total_size_bytes < self.upload_part_size_bytes { + if self.is_oneshot_upload(total_size_bytes) { return self .oneshot_upload(key, total_size_bytes, create_bytestream_fn) .await; @@ -392,7 +396,7 @@ impl S3Storage { .await } - async fn oneshot_upload( + pub(super) async fn oneshot_upload( &self, key: &str, total_size_bytes: usize, @@ -412,14 +416,11 @@ impl S3Storage { Ok(()) } - async fn multipart_upload( + pub(super) async fn prepare_multipart_upload( &self, key: &str, total_size_bytes: usize, - create_bytestream_fn: impl Fn( - Range, - ) -> BoxFuture<'static, Result>, - ) -> Result<(), S3PutError> { + ) -> Result<(usize, usize, String), S3PutError> { let mut part_count = (total_size_bytes / self.upload_part_size_bytes) + 1; let mut size_of_last_part = total_size_bytes % self.upload_part_size_bytes; if size_of_last_part == 0 { @@ -445,39 +446,55 @@ impl S3Storage { } }; - let mut upload_parts = Vec::new(); - for part_index in 0..part_count { - let this_part = if part_count - 1 == part_index { - size_of_last_part - } else { - self.upload_part_size_bytes - }; - let part_number = part_index as i32 + 1; // Part numbers start at 1 - let offset = part_index * self.upload_part_size_bytes; - let length = this_part; - - let stream = create_bytestream_fn(offset..(offset + length)).await?; - - let upload_part_res = self - .client - .upload_part() - .key(key) - .bucket(&self.bucket) - .upload_id(&upload_id) - .body(stream) - .part_number(part_number) - .send() - .await - .map_err(|err| S3PutError::S3PutError(err.to_string()))?; - - upload_parts.push( - CompletedPart::builder() - .e_tag(upload_part_res.e_tag.unwrap_or_default()) - .part_number(part_number) - .build(), - ); - } + Ok((part_count, size_of_last_part, upload_id)) + } + + pub(super) async fn upload_part( + &self, + key: &str, + upload_id: &str, + part_count: usize, + part_index: usize, + size_of_last_part: usize, + create_bytestream_fn: &impl Fn( + Range, + ) -> BoxFuture<'static, Result>, + ) -> Result { + let this_part = if part_count - 1 == part_index { + size_of_last_part + } else { + self.upload_part_size_bytes + }; + let part_number = part_index as i32 + 1; // Part numbers start at 1 + let offset = part_index * self.upload_part_size_bytes; + let length = this_part; + + let stream = create_bytestream_fn(offset..(offset + length)).await?; + let upload_part_res = self + .client + .upload_part() + .key(key) + .bucket(&self.bucket) + .upload_id(upload_id) + .body(stream) + .part_number(part_number) + .send() + .await + .map_err(|err| S3PutError::S3PutError(err.to_string()))?; + + Ok(CompletedPart::builder() + .e_tag(upload_part_res.e_tag.unwrap_or_default()) + .part_number(part_number) + .build()) + } + + pub(super) async fn finish_multipart_upload( + &self, + key: &str, + upload_id: &str, + upload_parts: Vec, + ) -> Result<(), S3PutError> { self.client .complete_multipart_upload() .bucket(&self.bucket) @@ -487,13 +504,44 @@ impl S3Storage { .set_parts(Some(upload_parts)) .build(), ) - .upload_id(&upload_id) + .upload_id(upload_id) .send() .await .map_err(|err| S3PutError::S3PutError(err.to_string()))?; Ok(()) } + + async fn multipart_upload( + &self, + key: &str, + total_size_bytes: usize, + create_bytestream_fn: impl Fn( + Range, + ) -> BoxFuture<'static, Result>, + ) -> Result<(), S3PutError> { + let (part_count, size_of_last_part, upload_id) = + self.prepare_multipart_upload(key, total_size_bytes).await?; + + let mut upload_parts = Vec::new(); + for part_index in 0..part_count { + let completed_part = self + .upload_part( + key, + &upload_id, + part_count, + part_index, + size_of_last_part, + &create_bytestream_fn, + ) + .await?; + + upload_parts.push(completed_part); + } + + self.finish_multipart_upload(key, &upload_id, upload_parts) + .await + } } #[async_trait] diff --git a/rust/worker/chroma_config.yaml b/rust/worker/chroma_config.yaml index 623a8bc47df..2400668ccd4 100644 --- a/rust/worker/chroma_config.yaml +++ b/rust/worker/chroma_config.yaml @@ -91,7 +91,7 @@ compaction_service: download_part_size_bytes: 8388608 # 8MiB rate_limiting_policy: CountBasedPolicy: - max_concurrent_requests: 15 + max_concurrent_requests: 30 log: Grpc: host: "logservice.chroma" From b87b5514d344b9103f04676a0b2ecb93ace08f5d Mon Sep 17 00:00:00 2001 From: Sanket Kedia Date: Thu, 19 Dec 2024 11:23:15 -0800 Subject: [PATCH 2/4] Remove proto files --- go/pkg/proto/coordinatorpb/chroma.pb.go | 4007 ----------------- go/pkg/proto/coordinatorpb/chroma_grpc.pb.go | 299 -- go/pkg/proto/coordinatorpb/coordinator.pb.go | 2970 ------------ .../coordinatorpb/coordinator_grpc.pb.go | 768 ---- go/pkg/proto/logservicepb/logservice.pb.go | 844 ---- .../proto/logservicepb/logservice_grpc.pb.go | 235 - 6 files changed, 9123 deletions(-) delete mode 100644 go/pkg/proto/coordinatorpb/chroma.pb.go delete mode 100644 go/pkg/proto/coordinatorpb/chroma_grpc.pb.go delete mode 100644 go/pkg/proto/coordinatorpb/coordinator.pb.go delete mode 100644 go/pkg/proto/coordinatorpb/coordinator_grpc.pb.go delete mode 100644 go/pkg/proto/logservicepb/logservice.pb.go delete mode 100644 go/pkg/proto/logservicepb/logservice_grpc.pb.go diff --git a/go/pkg/proto/coordinatorpb/chroma.pb.go b/go/pkg/proto/coordinatorpb/chroma.pb.go deleted file mode 100644 index 3a74be06400..00000000000 --- a/go/pkg/proto/coordinatorpb/chroma.pb.go +++ /dev/null @@ -1,4007 +0,0 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.34.2 -// protoc v5.28.2 -// source: chromadb/proto/chroma.proto - -package coordinatorpb - -import ( - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -// Types here should mirror chromadb/types.py -type Operation int32 - -const ( - Operation_ADD Operation = 0 - Operation_UPDATE Operation = 1 - Operation_UPSERT Operation = 2 - Operation_DELETE Operation = 3 -) - -// Enum value maps for Operation. -var ( - Operation_name = map[int32]string{ - 0: "ADD", - 1: "UPDATE", - 2: "UPSERT", - 3: "DELETE", - } - Operation_value = map[string]int32{ - "ADD": 0, - "UPDATE": 1, - "UPSERT": 2, - "DELETE": 3, - } -) - -func (x Operation) Enum() *Operation { - p := new(Operation) - *p = x - return p -} - -func (x Operation) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (Operation) Descriptor() protoreflect.EnumDescriptor { - return file_chromadb_proto_chroma_proto_enumTypes[0].Descriptor() -} - -func (Operation) Type() protoreflect.EnumType { - return &file_chromadb_proto_chroma_proto_enumTypes[0] -} - -func (x Operation) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use Operation.Descriptor instead. -func (Operation) EnumDescriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{0} -} - -type ScalarEncoding int32 - -const ( - ScalarEncoding_FLOAT32 ScalarEncoding = 0 - ScalarEncoding_INT32 ScalarEncoding = 1 -) - -// Enum value maps for ScalarEncoding. -var ( - ScalarEncoding_name = map[int32]string{ - 0: "FLOAT32", - 1: "INT32", - } - ScalarEncoding_value = map[string]int32{ - "FLOAT32": 0, - "INT32": 1, - } -) - -func (x ScalarEncoding) Enum() *ScalarEncoding { - p := new(ScalarEncoding) - *p = x - return p -} - -func (x ScalarEncoding) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (ScalarEncoding) Descriptor() protoreflect.EnumDescriptor { - return file_chromadb_proto_chroma_proto_enumTypes[1].Descriptor() -} - -func (ScalarEncoding) Type() protoreflect.EnumType { - return &file_chromadb_proto_chroma_proto_enumTypes[1] -} - -func (x ScalarEncoding) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use ScalarEncoding.Descriptor instead. -func (ScalarEncoding) EnumDescriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{1} -} - -type SegmentScope int32 - -const ( - SegmentScope_VECTOR SegmentScope = 0 - SegmentScope_METADATA SegmentScope = 1 - SegmentScope_RECORD SegmentScope = 2 - SegmentScope_SQLITE SegmentScope = 3 -) - -// Enum value maps for SegmentScope. -var ( - SegmentScope_name = map[int32]string{ - 0: "VECTOR", - 1: "METADATA", - 2: "RECORD", - 3: "SQLITE", - } - SegmentScope_value = map[string]int32{ - "VECTOR": 0, - "METADATA": 1, - "RECORD": 2, - "SQLITE": 3, - } -) - -func (x SegmentScope) Enum() *SegmentScope { - p := new(SegmentScope) - *p = x - return p -} - -func (x SegmentScope) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (SegmentScope) Descriptor() protoreflect.EnumDescriptor { - return file_chromadb_proto_chroma_proto_enumTypes[2].Descriptor() -} - -func (SegmentScope) Type() protoreflect.EnumType { - return &file_chromadb_proto_chroma_proto_enumTypes[2] -} - -func (x SegmentScope) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use SegmentScope.Descriptor instead. -func (SegmentScope) EnumDescriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{2} -} - -// Types of operators for `WhereDocument` clauses. A `WhereDocument` clause can -// either require that a document contains a value or that it does not contain -// a value. -type WhereDocumentOperator int32 - -const ( - WhereDocumentOperator_CONTAINS WhereDocumentOperator = 0 - WhereDocumentOperator_NOT_CONTAINS WhereDocumentOperator = 1 -) - -// Enum value maps for WhereDocumentOperator. -var ( - WhereDocumentOperator_name = map[int32]string{ - 0: "CONTAINS", - 1: "NOT_CONTAINS", - } - WhereDocumentOperator_value = map[string]int32{ - "CONTAINS": 0, - "NOT_CONTAINS": 1, - } -) - -func (x WhereDocumentOperator) Enum() *WhereDocumentOperator { - p := new(WhereDocumentOperator) - *p = x - return p -} - -func (x WhereDocumentOperator) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (WhereDocumentOperator) Descriptor() protoreflect.EnumDescriptor { - return file_chromadb_proto_chroma_proto_enumTypes[3].Descriptor() -} - -func (WhereDocumentOperator) Type() protoreflect.EnumType { - return &file_chromadb_proto_chroma_proto_enumTypes[3] -} - -func (x WhereDocumentOperator) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use WhereDocumentOperator.Descriptor instead. -func (WhereDocumentOperator) EnumDescriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{3} -} - -// A `Where` clause may have a list of children. This enum specifies how the -// children should be combined. -type BooleanOperator int32 - -const ( - BooleanOperator_AND BooleanOperator = 0 - BooleanOperator_OR BooleanOperator = 1 -) - -// Enum value maps for BooleanOperator. -var ( - BooleanOperator_name = map[int32]string{ - 0: "AND", - 1: "OR", - } - BooleanOperator_value = map[string]int32{ - "AND": 0, - "OR": 1, - } -) - -func (x BooleanOperator) Enum() *BooleanOperator { - p := new(BooleanOperator) - *p = x - return p -} - -func (x BooleanOperator) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (BooleanOperator) Descriptor() protoreflect.EnumDescriptor { - return file_chromadb_proto_chroma_proto_enumTypes[4].Descriptor() -} - -func (BooleanOperator) Type() protoreflect.EnumType { - return &file_chromadb_proto_chroma_proto_enumTypes[4] -} - -func (x BooleanOperator) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use BooleanOperator.Descriptor instead. -func (BooleanOperator) EnumDescriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{4} -} - -// A `Where` clause may have a list of allowed or disallowed values. This enum -// specifies which type of list it is. -type ListOperator int32 - -const ( - ListOperator_IN ListOperator = 0 - ListOperator_NIN ListOperator = 1 -) - -// Enum value maps for ListOperator. -var ( - ListOperator_name = map[int32]string{ - 0: "IN", - 1: "NIN", - } - ListOperator_value = map[string]int32{ - "IN": 0, - "NIN": 1, - } -) - -func (x ListOperator) Enum() *ListOperator { - p := new(ListOperator) - *p = x - return p -} - -func (x ListOperator) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (ListOperator) Descriptor() protoreflect.EnumDescriptor { - return file_chromadb_proto_chroma_proto_enumTypes[5].Descriptor() -} - -func (ListOperator) Type() protoreflect.EnumType { - return &file_chromadb_proto_chroma_proto_enumTypes[5] -} - -func (x ListOperator) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use ListOperator.Descriptor instead. -func (ListOperator) EnumDescriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{5} -} - -// A leaf-node `Where` clause may compare a string, int, or float to a single -// value of the same type. These comparators apply to all three of those types. -type GenericComparator int32 - -const ( - GenericComparator_EQ GenericComparator = 0 - GenericComparator_NE GenericComparator = 1 -) - -// Enum value maps for GenericComparator. -var ( - GenericComparator_name = map[int32]string{ - 0: "EQ", - 1: "NE", - } - GenericComparator_value = map[string]int32{ - "EQ": 0, - "NE": 1, - } -) - -func (x GenericComparator) Enum() *GenericComparator { - p := new(GenericComparator) - *p = x - return p -} - -func (x GenericComparator) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (GenericComparator) Descriptor() protoreflect.EnumDescriptor { - return file_chromadb_proto_chroma_proto_enumTypes[6].Descriptor() -} - -func (GenericComparator) Type() protoreflect.EnumType { - return &file_chromadb_proto_chroma_proto_enumTypes[6] -} - -func (x GenericComparator) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use GenericComparator.Descriptor instead. -func (GenericComparator) EnumDescriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{6} -} - -// Used when a leaf-node `Where` clause compares an int or float to a single -// value of the same type. -type NumberComparator int32 - -const ( - NumberComparator_GT NumberComparator = 0 - NumberComparator_GTE NumberComparator = 1 - NumberComparator_LT NumberComparator = 2 - NumberComparator_LTE NumberComparator = 3 -) - -// Enum value maps for NumberComparator. -var ( - NumberComparator_name = map[int32]string{ - 0: "GT", - 1: "GTE", - 2: "LT", - 3: "LTE", - } - NumberComparator_value = map[string]int32{ - "GT": 0, - "GTE": 1, - "LT": 2, - "LTE": 3, - } -) - -func (x NumberComparator) Enum() *NumberComparator { - p := new(NumberComparator) - *p = x - return p -} - -func (x NumberComparator) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (NumberComparator) Descriptor() protoreflect.EnumDescriptor { - return file_chromadb_proto_chroma_proto_enumTypes[7].Descriptor() -} - -func (NumberComparator) Type() protoreflect.EnumType { - return &file_chromadb_proto_chroma_proto_enumTypes[7] -} - -func (x NumberComparator) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use NumberComparator.Descriptor instead. -func (NumberComparator) EnumDescriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{7} -} - -type Vector struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Dimension int32 `protobuf:"varint,1,opt,name=dimension,proto3" json:"dimension,omitempty"` - Vector []byte `protobuf:"bytes,2,opt,name=vector,proto3" json:"vector,omitempty"` - Encoding ScalarEncoding `protobuf:"varint,3,opt,name=encoding,proto3,enum=chroma.ScalarEncoding" json:"encoding,omitempty"` -} - -func (x *Vector) Reset() { - *x = Vector{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Vector) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Vector) ProtoMessage() {} - -func (x *Vector) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Vector.ProtoReflect.Descriptor instead. -func (*Vector) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{0} -} - -func (x *Vector) GetDimension() int32 { - if x != nil { - return x.Dimension - } - return 0 -} - -func (x *Vector) GetVector() []byte { - if x != nil { - return x.Vector - } - return nil -} - -func (x *Vector) GetEncoding() ScalarEncoding { - if x != nil { - return x.Encoding - } - return ScalarEncoding_FLOAT32 -} - -type FilePaths struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Paths []string `protobuf:"bytes,1,rep,name=paths,proto3" json:"paths,omitempty"` -} - -func (x *FilePaths) Reset() { - *x = FilePaths{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FilePaths) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FilePaths) ProtoMessage() {} - -func (x *FilePaths) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FilePaths.ProtoReflect.Descriptor instead. -func (*FilePaths) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{1} -} - -func (x *FilePaths) GetPaths() []string { - if x != nil { - return x.Paths - } - return nil -} - -type Segment struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Type string `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"` - Scope SegmentScope `protobuf:"varint,3,opt,name=scope,proto3,enum=chroma.SegmentScope" json:"scope,omitempty"` - Collection string `protobuf:"bytes,5,opt,name=collection,proto3" json:"collection,omitempty"` - Metadata *UpdateMetadata `protobuf:"bytes,6,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` - FilePaths map[string]*FilePaths `protobuf:"bytes,7,rep,name=file_paths,json=filePaths,proto3" json:"file_paths,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` -} - -func (x *Segment) Reset() { - *x = Segment{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Segment) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Segment) ProtoMessage() {} - -func (x *Segment) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Segment.ProtoReflect.Descriptor instead. -func (*Segment) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{2} -} - -func (x *Segment) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *Segment) GetType() string { - if x != nil { - return x.Type - } - return "" -} - -func (x *Segment) GetScope() SegmentScope { - if x != nil { - return x.Scope - } - return SegmentScope_VECTOR -} - -func (x *Segment) GetCollection() string { - if x != nil { - return x.Collection - } - return "" -} - -func (x *Segment) GetMetadata() *UpdateMetadata { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *Segment) GetFilePaths() map[string]*FilePaths { - if x != nil { - return x.FilePaths - } - return nil -} - -type Collection struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - ConfigurationJsonStr string `protobuf:"bytes,3,opt,name=configuration_json_str,json=configurationJsonStr,proto3" json:"configuration_json_str,omitempty"` - Metadata *UpdateMetadata `protobuf:"bytes,4,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` - Dimension *int32 `protobuf:"varint,5,opt,name=dimension,proto3,oneof" json:"dimension,omitempty"` - Tenant string `protobuf:"bytes,6,opt,name=tenant,proto3" json:"tenant,omitempty"` - Database string `protobuf:"bytes,7,opt,name=database,proto3" json:"database,omitempty"` - LogPosition int64 `protobuf:"varint,8,opt,name=log_position,json=logPosition,proto3" json:"log_position,omitempty"` - Version int32 `protobuf:"varint,9,opt,name=version,proto3" json:"version,omitempty"` -} - -func (x *Collection) Reset() { - *x = Collection{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Collection) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Collection) ProtoMessage() {} - -func (x *Collection) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Collection.ProtoReflect.Descriptor instead. -func (*Collection) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{3} -} - -func (x *Collection) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *Collection) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *Collection) GetConfigurationJsonStr() string { - if x != nil { - return x.ConfigurationJsonStr - } - return "" -} - -func (x *Collection) GetMetadata() *UpdateMetadata { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *Collection) GetDimension() int32 { - if x != nil && x.Dimension != nil { - return *x.Dimension - } - return 0 -} - -func (x *Collection) GetTenant() string { - if x != nil { - return x.Tenant - } - return "" -} - -func (x *Collection) GetDatabase() string { - if x != nil { - return x.Database - } - return "" -} - -func (x *Collection) GetLogPosition() int64 { - if x != nil { - return x.LogPosition - } - return 0 -} - -func (x *Collection) GetVersion() int32 { - if x != nil { - return x.Version - } - return 0 -} - -type Database struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Tenant string `protobuf:"bytes,3,opt,name=tenant,proto3" json:"tenant,omitempty"` -} - -func (x *Database) Reset() { - *x = Database{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Database) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Database) ProtoMessage() {} - -func (x *Database) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Database.ProtoReflect.Descriptor instead. -func (*Database) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{4} -} - -func (x *Database) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *Database) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *Database) GetTenant() string { - if x != nil { - return x.Tenant - } - return "" -} - -type Tenant struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` -} - -func (x *Tenant) Reset() { - *x = Tenant{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Tenant) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Tenant) ProtoMessage() {} - -func (x *Tenant) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Tenant.ProtoReflect.Descriptor instead. -func (*Tenant) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{5} -} - -func (x *Tenant) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -type UpdateMetadataValue struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Not set if user wants to delete the key. - // TODO(Sanket): Should we make this more explicit? - // - // Types that are assignable to Value: - // - // *UpdateMetadataValue_StringValue - // *UpdateMetadataValue_IntValue - // *UpdateMetadataValue_FloatValue - // *UpdateMetadataValue_BoolValue - Value isUpdateMetadataValue_Value `protobuf_oneof:"value"` -} - -func (x *UpdateMetadataValue) Reset() { - *x = UpdateMetadataValue{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateMetadataValue) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateMetadataValue) ProtoMessage() {} - -func (x *UpdateMetadataValue) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateMetadataValue.ProtoReflect.Descriptor instead. -func (*UpdateMetadataValue) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{6} -} - -func (m *UpdateMetadataValue) GetValue() isUpdateMetadataValue_Value { - if m != nil { - return m.Value - } - return nil -} - -func (x *UpdateMetadataValue) GetStringValue() string { - if x, ok := x.GetValue().(*UpdateMetadataValue_StringValue); ok { - return x.StringValue - } - return "" -} - -func (x *UpdateMetadataValue) GetIntValue() int64 { - if x, ok := x.GetValue().(*UpdateMetadataValue_IntValue); ok { - return x.IntValue - } - return 0 -} - -func (x *UpdateMetadataValue) GetFloatValue() float64 { - if x, ok := x.GetValue().(*UpdateMetadataValue_FloatValue); ok { - return x.FloatValue - } - return 0 -} - -func (x *UpdateMetadataValue) GetBoolValue() bool { - if x, ok := x.GetValue().(*UpdateMetadataValue_BoolValue); ok { - return x.BoolValue - } - return false -} - -type isUpdateMetadataValue_Value interface { - isUpdateMetadataValue_Value() -} - -type UpdateMetadataValue_StringValue struct { - StringValue string `protobuf:"bytes,1,opt,name=string_value,json=stringValue,proto3,oneof"` -} - -type UpdateMetadataValue_IntValue struct { - IntValue int64 `protobuf:"varint,2,opt,name=int_value,json=intValue,proto3,oneof"` -} - -type UpdateMetadataValue_FloatValue struct { - FloatValue float64 `protobuf:"fixed64,3,opt,name=float_value,json=floatValue,proto3,oneof"` -} - -type UpdateMetadataValue_BoolValue struct { - BoolValue bool `protobuf:"varint,4,opt,name=bool_value,json=boolValue,proto3,oneof"` -} - -func (*UpdateMetadataValue_StringValue) isUpdateMetadataValue_Value() {} - -func (*UpdateMetadataValue_IntValue) isUpdateMetadataValue_Value() {} - -func (*UpdateMetadataValue_FloatValue) isUpdateMetadataValue_Value() {} - -func (*UpdateMetadataValue_BoolValue) isUpdateMetadataValue_Value() {} - -type UpdateMetadata struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Metadata map[string]*UpdateMetadataValue `protobuf:"bytes,1,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` -} - -func (x *UpdateMetadata) Reset() { - *x = UpdateMetadata{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateMetadata) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateMetadata) ProtoMessage() {} - -func (x *UpdateMetadata) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateMetadata.ProtoReflect.Descriptor instead. -func (*UpdateMetadata) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{7} -} - -func (x *UpdateMetadata) GetMetadata() map[string]*UpdateMetadataValue { - if x != nil { - return x.Metadata - } - return nil -} - -// Represents an operation the user submits -type OperationRecord struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Vector *Vector `protobuf:"bytes,2,opt,name=vector,proto3,oneof" json:"vector,omitempty"` - Metadata *UpdateMetadata `protobuf:"bytes,3,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` - Operation Operation `protobuf:"varint,4,opt,name=operation,proto3,enum=chroma.Operation" json:"operation,omitempty"` -} - -func (x *OperationRecord) Reset() { - *x = OperationRecord{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OperationRecord) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OperationRecord) ProtoMessage() {} - -func (x *OperationRecord) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use OperationRecord.ProtoReflect.Descriptor instead. -func (*OperationRecord) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{8} -} - -func (x *OperationRecord) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *OperationRecord) GetVector() *Vector { - if x != nil { - return x.Vector - } - return nil -} - -func (x *OperationRecord) GetMetadata() *UpdateMetadata { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *OperationRecord) GetOperation() Operation { - if x != nil { - return x.Operation - } - return Operation_ADD -} - -type RequestVersionContext struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CollectionVersion uint32 `protobuf:"varint,1,opt,name=collection_version,json=collectionVersion,proto3" json:"collection_version,omitempty"` - LogPosition uint64 `protobuf:"varint,2,opt,name=log_position,json=logPosition,proto3" json:"log_position,omitempty"` -} - -func (x *RequestVersionContext) Reset() { - *x = RequestVersionContext{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RequestVersionContext) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RequestVersionContext) ProtoMessage() {} - -func (x *RequestVersionContext) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use RequestVersionContext.ProtoReflect.Descriptor instead. -func (*RequestVersionContext) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{9} -} - -func (x *RequestVersionContext) GetCollectionVersion() uint32 { - if x != nil { - return x.CollectionVersion - } - return 0 -} - -func (x *RequestVersionContext) GetLogPosition() uint64 { - if x != nil { - return x.LogPosition - } - return 0 -} - -type CountRecordsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SegmentId string `protobuf:"bytes,1,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"` - CollectionId string `protobuf:"bytes,2,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` - VersionContext *RequestVersionContext `protobuf:"bytes,3,opt,name=version_context,json=versionContext,proto3" json:"version_context,omitempty"` -} - -func (x *CountRecordsRequest) Reset() { - *x = CountRecordsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CountRecordsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CountRecordsRequest) ProtoMessage() {} - -func (x *CountRecordsRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CountRecordsRequest.ProtoReflect.Descriptor instead. -func (*CountRecordsRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{10} -} - -func (x *CountRecordsRequest) GetSegmentId() string { - if x != nil { - return x.SegmentId - } - return "" -} - -func (x *CountRecordsRequest) GetCollectionId() string { - if x != nil { - return x.CollectionId - } - return "" -} - -func (x *CountRecordsRequest) GetVersionContext() *RequestVersionContext { - if x != nil { - return x.VersionContext - } - return nil -} - -// TODO: Add error propagation in the response. -type CountRecordsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Count uint32 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` -} - -func (x *CountRecordsResponse) Reset() { - *x = CountRecordsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CountRecordsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CountRecordsResponse) ProtoMessage() {} - -func (x *CountRecordsResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CountRecordsResponse.ProtoReflect.Descriptor instead. -func (*CountRecordsResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{11} -} - -func (x *CountRecordsResponse) GetCount() uint32 { - if x != nil { - return x.Count - } - return 0 -} - -type QueryMetadataRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SegmentId string `protobuf:"bytes,1,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"` - Where *Where `protobuf:"bytes,2,opt,name=where,proto3" json:"where,omitempty"` - WhereDocument *WhereDocument `protobuf:"bytes,3,opt,name=where_document,json=whereDocument,proto3" json:"where_document,omitempty"` - Ids *UserIds `protobuf:"bytes,4,opt,name=ids,proto3,oneof" json:"ids,omitempty"` - Limit *uint32 `protobuf:"varint,5,opt,name=limit,proto3,oneof" json:"limit,omitempty"` - Offset *uint32 `protobuf:"varint,6,opt,name=offset,proto3,oneof" json:"offset,omitempty"` - CollectionId string `protobuf:"bytes,7,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` - IncludeMetadata bool `protobuf:"varint,8,opt,name=include_metadata,json=includeMetadata,proto3" json:"include_metadata,omitempty"` - VersionContext *RequestVersionContext `protobuf:"bytes,9,opt,name=version_context,json=versionContext,proto3" json:"version_context,omitempty"` -} - -func (x *QueryMetadataRequest) Reset() { - *x = QueryMetadataRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QueryMetadataRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QueryMetadataRequest) ProtoMessage() {} - -func (x *QueryMetadataRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use QueryMetadataRequest.ProtoReflect.Descriptor instead. -func (*QueryMetadataRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{12} -} - -func (x *QueryMetadataRequest) GetSegmentId() string { - if x != nil { - return x.SegmentId - } - return "" -} - -func (x *QueryMetadataRequest) GetWhere() *Where { - if x != nil { - return x.Where - } - return nil -} - -func (x *QueryMetadataRequest) GetWhereDocument() *WhereDocument { - if x != nil { - return x.WhereDocument - } - return nil -} - -func (x *QueryMetadataRequest) GetIds() *UserIds { - if x != nil { - return x.Ids - } - return nil -} - -func (x *QueryMetadataRequest) GetLimit() uint32 { - if x != nil && x.Limit != nil { - return *x.Limit - } - return 0 -} - -func (x *QueryMetadataRequest) GetOffset() uint32 { - if x != nil && x.Offset != nil { - return *x.Offset - } - return 0 -} - -func (x *QueryMetadataRequest) GetCollectionId() string { - if x != nil { - return x.CollectionId - } - return "" -} - -func (x *QueryMetadataRequest) GetIncludeMetadata() bool { - if x != nil { - return x.IncludeMetadata - } - return false -} - -func (x *QueryMetadataRequest) GetVersionContext() *RequestVersionContext { - if x != nil { - return x.VersionContext - } - return nil -} - -type QueryMetadataResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Records []*MetadataEmbeddingRecord `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"` -} - -func (x *QueryMetadataResponse) Reset() { - *x = QueryMetadataResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QueryMetadataResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QueryMetadataResponse) ProtoMessage() {} - -func (x *QueryMetadataResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use QueryMetadataResponse.ProtoReflect.Descriptor instead. -func (*QueryMetadataResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{13} -} - -func (x *QueryMetadataResponse) GetRecords() []*MetadataEmbeddingRecord { - if x != nil { - return x.Records - } - return nil -} - -type MetadataEmbeddingRecord struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Metadata *UpdateMetadata `protobuf:"bytes,2,opt,name=metadata,proto3" json:"metadata,omitempty"` -} - -func (x *MetadataEmbeddingRecord) Reset() { - *x = MetadataEmbeddingRecord{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *MetadataEmbeddingRecord) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*MetadataEmbeddingRecord) ProtoMessage() {} - -func (x *MetadataEmbeddingRecord) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use MetadataEmbeddingRecord.ProtoReflect.Descriptor instead. -func (*MetadataEmbeddingRecord) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{14} -} - -func (x *MetadataEmbeddingRecord) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *MetadataEmbeddingRecord) GetMetadata() *UpdateMetadata { - if x != nil { - return x.Metadata - } - return nil -} - -// A `UserIds` should contain the set of user provided ids allowed in the result. -type UserIds struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Ids []string `protobuf:"bytes,1,rep,name=ids,proto3" json:"ids,omitempty"` -} - -func (x *UserIds) Reset() { - *x = UserIds{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UserIds) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UserIds) ProtoMessage() {} - -func (x *UserIds) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UserIds.ProtoReflect.Descriptor instead. -func (*UserIds) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{15} -} - -func (x *UserIds) GetIds() []string { - if x != nil { - return x.Ids - } - return nil -} - -// A `WhereDocument` clause for filtering metadata. A `WhereDocument` clause is a tree of -// `WhereDocument` clauses, where each node is exactly one of: -// - A leaf node representing a `$contains` or `$not_contains` query directly. -// - An branch node with a list of children and a way to combine them (AND or OR). -type WhereDocument struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to WhereDocument: - // - // *WhereDocument_Direct - // *WhereDocument_Children - WhereDocument isWhereDocument_WhereDocument `protobuf_oneof:"where_document"` -} - -func (x *WhereDocument) Reset() { - *x = WhereDocument{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *WhereDocument) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*WhereDocument) ProtoMessage() {} - -func (x *WhereDocument) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use WhereDocument.ProtoReflect.Descriptor instead. -func (*WhereDocument) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{16} -} - -func (m *WhereDocument) GetWhereDocument() isWhereDocument_WhereDocument { - if m != nil { - return m.WhereDocument - } - return nil -} - -func (x *WhereDocument) GetDirect() *DirectWhereDocument { - if x, ok := x.GetWhereDocument().(*WhereDocument_Direct); ok { - return x.Direct - } - return nil -} - -func (x *WhereDocument) GetChildren() *WhereDocumentChildren { - if x, ok := x.GetWhereDocument().(*WhereDocument_Children); ok { - return x.Children - } - return nil -} - -type isWhereDocument_WhereDocument interface { - isWhereDocument_WhereDocument() -} - -type WhereDocument_Direct struct { - Direct *DirectWhereDocument `protobuf:"bytes,1,opt,name=direct,proto3,oneof"` -} - -type WhereDocument_Children struct { - Children *WhereDocumentChildren `protobuf:"bytes,2,opt,name=children,proto3,oneof"` -} - -func (*WhereDocument_Direct) isWhereDocument_WhereDocument() {} - -func (*WhereDocument_Children) isWhereDocument_WhereDocument() {} - -// A leaf-node `WhereDocument` clause may compare a document to a single value. -type DirectWhereDocument struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Document string `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"` - Operator WhereDocumentOperator `protobuf:"varint,2,opt,name=operator,proto3,enum=chroma.WhereDocumentOperator" json:"operator,omitempty"` -} - -func (x *DirectWhereDocument) Reset() { - *x = DirectWhereDocument{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DirectWhereDocument) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DirectWhereDocument) ProtoMessage() {} - -func (x *DirectWhereDocument) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DirectWhereDocument.ProtoReflect.Descriptor instead. -func (*DirectWhereDocument) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{17} -} - -func (x *DirectWhereDocument) GetDocument() string { - if x != nil { - return x.Document - } - return "" -} - -func (x *DirectWhereDocument) GetOperator() WhereDocumentOperator { - if x != nil { - return x.Operator - } - return WhereDocumentOperator_CONTAINS -} - -// A branch-node `WhereDocument` node has a list of children. -type WhereDocumentChildren struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Children []*WhereDocument `protobuf:"bytes,1,rep,name=children,proto3" json:"children,omitempty"` - Operator BooleanOperator `protobuf:"varint,2,opt,name=operator,proto3,enum=chroma.BooleanOperator" json:"operator,omitempty"` -} - -func (x *WhereDocumentChildren) Reset() { - *x = WhereDocumentChildren{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *WhereDocumentChildren) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*WhereDocumentChildren) ProtoMessage() {} - -func (x *WhereDocumentChildren) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use WhereDocumentChildren.ProtoReflect.Descriptor instead. -func (*WhereDocumentChildren) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{18} -} - -func (x *WhereDocumentChildren) GetChildren() []*WhereDocument { - if x != nil { - return x.Children - } - return nil -} - -func (x *WhereDocumentChildren) GetOperator() BooleanOperator { - if x != nil { - return x.Operator - } - return BooleanOperator_AND -} - -// A `Where` clause for filtering metadata. A `Where` clause is a tree of -// `Where` clauses, where each node is exactly one of: -// - A leaf node representing a direct comparison between a metadata key and a -// value or list of values. -// - An branch node with a list of children and a way to combine them (AND or OR). -type Where struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to Where: - // - // *Where_DirectComparison - // *Where_Children - Where isWhere_Where `protobuf_oneof:"where"` -} - -func (x *Where) Reset() { - *x = Where{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Where) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Where) ProtoMessage() {} - -func (x *Where) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Where.ProtoReflect.Descriptor instead. -func (*Where) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{19} -} - -func (m *Where) GetWhere() isWhere_Where { - if m != nil { - return m.Where - } - return nil -} - -func (x *Where) GetDirectComparison() *DirectComparison { - if x, ok := x.GetWhere().(*Where_DirectComparison); ok { - return x.DirectComparison - } - return nil -} - -func (x *Where) GetChildren() *WhereChildren { - if x, ok := x.GetWhere().(*Where_Children); ok { - return x.Children - } - return nil -} - -type isWhere_Where interface { - isWhere_Where() -} - -type Where_DirectComparison struct { - DirectComparison *DirectComparison `protobuf:"bytes,1,opt,name=direct_comparison,json=directComparison,proto3,oneof"` -} - -type Where_Children struct { - Children *WhereChildren `protobuf:"bytes,2,opt,name=children,proto3,oneof"` -} - -func (*Where_DirectComparison) isWhere_Where() {} - -func (*Where_Children) isWhere_Where() {} - -// A leaf-node `Where` clause. -type DirectComparison struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - // Types that are assignable to Comparison: - // - // *DirectComparison_SingleStringOperand - // *DirectComparison_StringListOperand - // *DirectComparison_SingleIntOperand - // *DirectComparison_IntListOperand - // *DirectComparison_SingleDoubleOperand - // *DirectComparison_DoubleListOperand - // *DirectComparison_BoolListOperand - // *DirectComparison_SingleBoolOperand - Comparison isDirectComparison_Comparison `protobuf_oneof:"comparison"` -} - -func (x *DirectComparison) Reset() { - *x = DirectComparison{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DirectComparison) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DirectComparison) ProtoMessage() {} - -func (x *DirectComparison) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[20] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DirectComparison.ProtoReflect.Descriptor instead. -func (*DirectComparison) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{20} -} - -func (x *DirectComparison) GetKey() string { - if x != nil { - return x.Key - } - return "" -} - -func (m *DirectComparison) GetComparison() isDirectComparison_Comparison { - if m != nil { - return m.Comparison - } - return nil -} - -func (x *DirectComparison) GetSingleStringOperand() *SingleStringComparison { - if x, ok := x.GetComparison().(*DirectComparison_SingleStringOperand); ok { - return x.SingleStringOperand - } - return nil -} - -func (x *DirectComparison) GetStringListOperand() *StringListComparison { - if x, ok := x.GetComparison().(*DirectComparison_StringListOperand); ok { - return x.StringListOperand - } - return nil -} - -func (x *DirectComparison) GetSingleIntOperand() *SingleIntComparison { - if x, ok := x.GetComparison().(*DirectComparison_SingleIntOperand); ok { - return x.SingleIntOperand - } - return nil -} - -func (x *DirectComparison) GetIntListOperand() *IntListComparison { - if x, ok := x.GetComparison().(*DirectComparison_IntListOperand); ok { - return x.IntListOperand - } - return nil -} - -func (x *DirectComparison) GetSingleDoubleOperand() *SingleDoubleComparison { - if x, ok := x.GetComparison().(*DirectComparison_SingleDoubleOperand); ok { - return x.SingleDoubleOperand - } - return nil -} - -func (x *DirectComparison) GetDoubleListOperand() *DoubleListComparison { - if x, ok := x.GetComparison().(*DirectComparison_DoubleListOperand); ok { - return x.DoubleListOperand - } - return nil -} - -func (x *DirectComparison) GetBoolListOperand() *BoolListComparison { - if x, ok := x.GetComparison().(*DirectComparison_BoolListOperand); ok { - return x.BoolListOperand - } - return nil -} - -func (x *DirectComparison) GetSingleBoolOperand() *SingleBoolComparison { - if x, ok := x.GetComparison().(*DirectComparison_SingleBoolOperand); ok { - return x.SingleBoolOperand - } - return nil -} - -type isDirectComparison_Comparison interface { - isDirectComparison_Comparison() -} - -type DirectComparison_SingleStringOperand struct { - SingleStringOperand *SingleStringComparison `protobuf:"bytes,2,opt,name=single_string_operand,json=singleStringOperand,proto3,oneof"` -} - -type DirectComparison_StringListOperand struct { - StringListOperand *StringListComparison `protobuf:"bytes,3,opt,name=string_list_operand,json=stringListOperand,proto3,oneof"` -} - -type DirectComparison_SingleIntOperand struct { - SingleIntOperand *SingleIntComparison `protobuf:"bytes,4,opt,name=single_int_operand,json=singleIntOperand,proto3,oneof"` -} - -type DirectComparison_IntListOperand struct { - IntListOperand *IntListComparison `protobuf:"bytes,5,opt,name=int_list_operand,json=intListOperand,proto3,oneof"` -} - -type DirectComparison_SingleDoubleOperand struct { - SingleDoubleOperand *SingleDoubleComparison `protobuf:"bytes,6,opt,name=single_double_operand,json=singleDoubleOperand,proto3,oneof"` -} - -type DirectComparison_DoubleListOperand struct { - DoubleListOperand *DoubleListComparison `protobuf:"bytes,7,opt,name=double_list_operand,json=doubleListOperand,proto3,oneof"` -} - -type DirectComparison_BoolListOperand struct { - BoolListOperand *BoolListComparison `protobuf:"bytes,8,opt,name=bool_list_operand,json=boolListOperand,proto3,oneof"` -} - -type DirectComparison_SingleBoolOperand struct { - SingleBoolOperand *SingleBoolComparison `protobuf:"bytes,9,opt,name=single_bool_operand,json=singleBoolOperand,proto3,oneof"` -} - -func (*DirectComparison_SingleStringOperand) isDirectComparison_Comparison() {} - -func (*DirectComparison_StringListOperand) isDirectComparison_Comparison() {} - -func (*DirectComparison_SingleIntOperand) isDirectComparison_Comparison() {} - -func (*DirectComparison_IntListOperand) isDirectComparison_Comparison() {} - -func (*DirectComparison_SingleDoubleOperand) isDirectComparison_Comparison() {} - -func (*DirectComparison_DoubleListOperand) isDirectComparison_Comparison() {} - -func (*DirectComparison_BoolListOperand) isDirectComparison_Comparison() {} - -func (*DirectComparison_SingleBoolOperand) isDirectComparison_Comparison() {} - -// A branch-node `Where` clause has a list of children and a specification -// for how to combine them. -type WhereChildren struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Children []*Where `protobuf:"bytes,1,rep,name=children,proto3" json:"children,omitempty"` - Operator BooleanOperator `protobuf:"varint,2,opt,name=operator,proto3,enum=chroma.BooleanOperator" json:"operator,omitempty"` -} - -func (x *WhereChildren) Reset() { - *x = WhereChildren{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *WhereChildren) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*WhereChildren) ProtoMessage() {} - -func (x *WhereChildren) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[21] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use WhereChildren.ProtoReflect.Descriptor instead. -func (*WhereChildren) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{21} -} - -func (x *WhereChildren) GetChildren() []*Where { - if x != nil { - return x.Children - } - return nil -} - -func (x *WhereChildren) GetOperator() BooleanOperator { - if x != nil { - return x.Operator - } - return BooleanOperator_AND -} - -// Used when a leaf-node `Where` clause compares a string to a list of strings. -// `ListOperator` specifies whether values in the list are allowed or disallowed. -type StringListComparison struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` - ListOperator ListOperator `protobuf:"varint,2,opt,name=list_operator,json=listOperator,proto3,enum=chroma.ListOperator" json:"list_operator,omitempty"` -} - -func (x *StringListComparison) Reset() { - *x = StringListComparison{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *StringListComparison) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*StringListComparison) ProtoMessage() {} - -func (x *StringListComparison) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use StringListComparison.ProtoReflect.Descriptor instead. -func (*StringListComparison) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{22} -} - -func (x *StringListComparison) GetValues() []string { - if x != nil { - return x.Values - } - return nil -} - -func (x *StringListComparison) GetListOperator() ListOperator { - if x != nil { - return x.ListOperator - } - return ListOperator_IN -} - -// Used when a leaf-node `Where` clause compares a string to a single string. -type SingleStringComparison struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Value string `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"` - Comparator GenericComparator `protobuf:"varint,2,opt,name=comparator,proto3,enum=chroma.GenericComparator" json:"comparator,omitempty"` -} - -func (x *SingleStringComparison) Reset() { - *x = SingleStringComparison{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SingleStringComparison) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SingleStringComparison) ProtoMessage() {} - -func (x *SingleStringComparison) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SingleStringComparison.ProtoReflect.Descriptor instead. -func (*SingleStringComparison) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{23} -} - -func (x *SingleStringComparison) GetValue() string { - if x != nil { - return x.Value - } - return "" -} - -func (x *SingleStringComparison) GetComparator() GenericComparator { - if x != nil { - return x.Comparator - } - return GenericComparator_EQ -} - -type SingleBoolComparison struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Value bool `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` - Comparator GenericComparator `protobuf:"varint,2,opt,name=comparator,proto3,enum=chroma.GenericComparator" json:"comparator,omitempty"` -} - -func (x *SingleBoolComparison) Reset() { - *x = SingleBoolComparison{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SingleBoolComparison) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SingleBoolComparison) ProtoMessage() {} - -func (x *SingleBoolComparison) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SingleBoolComparison.ProtoReflect.Descriptor instead. -func (*SingleBoolComparison) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{24} -} - -func (x *SingleBoolComparison) GetValue() bool { - if x != nil { - return x.Value - } - return false -} - -func (x *SingleBoolComparison) GetComparator() GenericComparator { - if x != nil { - return x.Comparator - } - return GenericComparator_EQ -} - -// Used when a leaf-node `Where` clause compares an int to a list of ints. -// `ListOperator` specifies whether values in the list are allowed or disallowed. -type IntListComparison struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Values []int64 `protobuf:"varint,1,rep,packed,name=values,proto3" json:"values,omitempty"` - ListOperator ListOperator `protobuf:"varint,2,opt,name=list_operator,json=listOperator,proto3,enum=chroma.ListOperator" json:"list_operator,omitempty"` -} - -func (x *IntListComparison) Reset() { - *x = IntListComparison{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *IntListComparison) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*IntListComparison) ProtoMessage() {} - -func (x *IntListComparison) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use IntListComparison.ProtoReflect.Descriptor instead. -func (*IntListComparison) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{25} -} - -func (x *IntListComparison) GetValues() []int64 { - if x != nil { - return x.Values - } - return nil -} - -func (x *IntListComparison) GetListOperator() ListOperator { - if x != nil { - return x.ListOperator - } - return ListOperator_IN -} - -// Used when a leaf-node `Where` clause compares an int to a single int. -type SingleIntComparison struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"` - // Types that are assignable to Comparator: - // - // *SingleIntComparison_GenericComparator - // *SingleIntComparison_NumberComparator - Comparator isSingleIntComparison_Comparator `protobuf_oneof:"comparator"` -} - -func (x *SingleIntComparison) Reset() { - *x = SingleIntComparison{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SingleIntComparison) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SingleIntComparison) ProtoMessage() {} - -func (x *SingleIntComparison) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[26] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SingleIntComparison.ProtoReflect.Descriptor instead. -func (*SingleIntComparison) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{26} -} - -func (x *SingleIntComparison) GetValue() int64 { - if x != nil { - return x.Value - } - return 0 -} - -func (m *SingleIntComparison) GetComparator() isSingleIntComparison_Comparator { - if m != nil { - return m.Comparator - } - return nil -} - -func (x *SingleIntComparison) GetGenericComparator() GenericComparator { - if x, ok := x.GetComparator().(*SingleIntComparison_GenericComparator); ok { - return x.GenericComparator - } - return GenericComparator_EQ -} - -func (x *SingleIntComparison) GetNumberComparator() NumberComparator { - if x, ok := x.GetComparator().(*SingleIntComparison_NumberComparator); ok { - return x.NumberComparator - } - return NumberComparator_GT -} - -type isSingleIntComparison_Comparator interface { - isSingleIntComparison_Comparator() -} - -type SingleIntComparison_GenericComparator struct { - GenericComparator GenericComparator `protobuf:"varint,2,opt,name=generic_comparator,json=genericComparator,proto3,enum=chroma.GenericComparator,oneof"` -} - -type SingleIntComparison_NumberComparator struct { - NumberComparator NumberComparator `protobuf:"varint,3,opt,name=number_comparator,json=numberComparator,proto3,enum=chroma.NumberComparator,oneof"` -} - -func (*SingleIntComparison_GenericComparator) isSingleIntComparison_Comparator() {} - -func (*SingleIntComparison_NumberComparator) isSingleIntComparison_Comparator() {} - -// Used when a leaf-node `Where` clause compares a float to a list of floats. -// `ListOperator` specifies whether values in the list are allowed or disallowed. -type DoubleListComparison struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Values []float64 `protobuf:"fixed64,1,rep,packed,name=values,proto3" json:"values,omitempty"` - ListOperator ListOperator `protobuf:"varint,2,opt,name=list_operator,json=listOperator,proto3,enum=chroma.ListOperator" json:"list_operator,omitempty"` -} - -func (x *DoubleListComparison) Reset() { - *x = DoubleListComparison{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DoubleListComparison) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DoubleListComparison) ProtoMessage() {} - -func (x *DoubleListComparison) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[27] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DoubleListComparison.ProtoReflect.Descriptor instead. -func (*DoubleListComparison) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{27} -} - -func (x *DoubleListComparison) GetValues() []float64 { - if x != nil { - return x.Values - } - return nil -} - -func (x *DoubleListComparison) GetListOperator() ListOperator { - if x != nil { - return x.ListOperator - } - return ListOperator_IN -} - -type BoolListComparison struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Values []bool `protobuf:"varint,1,rep,packed,name=values,proto3" json:"values,omitempty"` - ListOperator ListOperator `protobuf:"varint,2,opt,name=list_operator,json=listOperator,proto3,enum=chroma.ListOperator" json:"list_operator,omitempty"` -} - -func (x *BoolListComparison) Reset() { - *x = BoolListComparison{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BoolListComparison) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BoolListComparison) ProtoMessage() {} - -func (x *BoolListComparison) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[28] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use BoolListComparison.ProtoReflect.Descriptor instead. -func (*BoolListComparison) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{28} -} - -func (x *BoolListComparison) GetValues() []bool { - if x != nil { - return x.Values - } - return nil -} - -func (x *BoolListComparison) GetListOperator() ListOperator { - if x != nil { - return x.ListOperator - } - return ListOperator_IN -} - -type SingleDoubleComparison struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Value float64 `protobuf:"fixed64,1,opt,name=value,proto3" json:"value,omitempty"` - // Types that are assignable to Comparator: - // - // *SingleDoubleComparison_GenericComparator - // *SingleDoubleComparison_NumberComparator - Comparator isSingleDoubleComparison_Comparator `protobuf_oneof:"comparator"` -} - -func (x *SingleDoubleComparison) Reset() { - *x = SingleDoubleComparison{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SingleDoubleComparison) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SingleDoubleComparison) ProtoMessage() {} - -func (x *SingleDoubleComparison) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[29] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SingleDoubleComparison.ProtoReflect.Descriptor instead. -func (*SingleDoubleComparison) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{29} -} - -func (x *SingleDoubleComparison) GetValue() float64 { - if x != nil { - return x.Value - } - return 0 -} - -func (m *SingleDoubleComparison) GetComparator() isSingleDoubleComparison_Comparator { - if m != nil { - return m.Comparator - } - return nil -} - -func (x *SingleDoubleComparison) GetGenericComparator() GenericComparator { - if x, ok := x.GetComparator().(*SingleDoubleComparison_GenericComparator); ok { - return x.GenericComparator - } - return GenericComparator_EQ -} - -func (x *SingleDoubleComparison) GetNumberComparator() NumberComparator { - if x, ok := x.GetComparator().(*SingleDoubleComparison_NumberComparator); ok { - return x.NumberComparator - } - return NumberComparator_GT -} - -type isSingleDoubleComparison_Comparator interface { - isSingleDoubleComparison_Comparator() -} - -type SingleDoubleComparison_GenericComparator struct { - GenericComparator GenericComparator `protobuf:"varint,2,opt,name=generic_comparator,json=genericComparator,proto3,enum=chroma.GenericComparator,oneof"` -} - -type SingleDoubleComparison_NumberComparator struct { - NumberComparator NumberComparator `protobuf:"varint,3,opt,name=number_comparator,json=numberComparator,proto3,enum=chroma.NumberComparator,oneof"` -} - -func (*SingleDoubleComparison_GenericComparator) isSingleDoubleComparison_Comparator() {} - -func (*SingleDoubleComparison_NumberComparator) isSingleDoubleComparison_Comparator() {} - -type GetVectorsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Ids []string `protobuf:"bytes,1,rep,name=ids,proto3" json:"ids,omitempty"` - SegmentId string `protobuf:"bytes,2,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"` - CollectionId string `protobuf:"bytes,3,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` - VersionContext *RequestVersionContext `protobuf:"bytes,4,opt,name=version_context,json=versionContext,proto3" json:"version_context,omitempty"` -} - -func (x *GetVectorsRequest) Reset() { - *x = GetVectorsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetVectorsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetVectorsRequest) ProtoMessage() {} - -func (x *GetVectorsRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[30] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetVectorsRequest.ProtoReflect.Descriptor instead. -func (*GetVectorsRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{30} -} - -func (x *GetVectorsRequest) GetIds() []string { - if x != nil { - return x.Ids - } - return nil -} - -func (x *GetVectorsRequest) GetSegmentId() string { - if x != nil { - return x.SegmentId - } - return "" -} - -func (x *GetVectorsRequest) GetCollectionId() string { - if x != nil { - return x.CollectionId - } - return "" -} - -func (x *GetVectorsRequest) GetVersionContext() *RequestVersionContext { - if x != nil { - return x.VersionContext - } - return nil -} - -type GetVectorsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Records []*VectorEmbeddingRecord `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"` -} - -func (x *GetVectorsResponse) Reset() { - *x = GetVectorsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetVectorsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetVectorsResponse) ProtoMessage() {} - -func (x *GetVectorsResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[31] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetVectorsResponse.ProtoReflect.Descriptor instead. -func (*GetVectorsResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{31} -} - -func (x *GetVectorsResponse) GetRecords() []*VectorEmbeddingRecord { - if x != nil { - return x.Records - } - return nil -} - -type VectorEmbeddingRecord struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Vector *Vector `protobuf:"bytes,3,opt,name=vector,proto3" json:"vector,omitempty"` // TODO: we need to rethink source of truth for vector dimensionality and encoding -} - -func (x *VectorEmbeddingRecord) Reset() { - *x = VectorEmbeddingRecord{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *VectorEmbeddingRecord) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*VectorEmbeddingRecord) ProtoMessage() {} - -func (x *VectorEmbeddingRecord) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[32] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use VectorEmbeddingRecord.ProtoReflect.Descriptor instead. -func (*VectorEmbeddingRecord) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{32} -} - -func (x *VectorEmbeddingRecord) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *VectorEmbeddingRecord) GetVector() *Vector { - if x != nil { - return x.Vector - } - return nil -} - -type QueryVectorsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Vectors []*Vector `protobuf:"bytes,1,rep,name=vectors,proto3" json:"vectors,omitempty"` - K int32 `protobuf:"varint,2,opt,name=k,proto3" json:"k,omitempty"` - AllowedIds []string `protobuf:"bytes,3,rep,name=allowed_ids,json=allowedIds,proto3" json:"allowed_ids,omitempty"` - IncludeEmbeddings bool `protobuf:"varint,4,opt,name=include_embeddings,json=includeEmbeddings,proto3" json:"include_embeddings,omitempty"` - SegmentId string `protobuf:"bytes,5,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"` - CollectionId string `protobuf:"bytes,6,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` - VersionContext *RequestVersionContext `protobuf:"bytes,7,opt,name=version_context,json=versionContext,proto3" json:"version_context,omitempty"` // TODO: options as in types.py, its currently unused so can add later -} - -func (x *QueryVectorsRequest) Reset() { - *x = QueryVectorsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QueryVectorsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QueryVectorsRequest) ProtoMessage() {} - -func (x *QueryVectorsRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[33] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use QueryVectorsRequest.ProtoReflect.Descriptor instead. -func (*QueryVectorsRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{33} -} - -func (x *QueryVectorsRequest) GetVectors() []*Vector { - if x != nil { - return x.Vectors - } - return nil -} - -func (x *QueryVectorsRequest) GetK() int32 { - if x != nil { - return x.K - } - return 0 -} - -func (x *QueryVectorsRequest) GetAllowedIds() []string { - if x != nil { - return x.AllowedIds - } - return nil -} - -func (x *QueryVectorsRequest) GetIncludeEmbeddings() bool { - if x != nil { - return x.IncludeEmbeddings - } - return false -} - -func (x *QueryVectorsRequest) GetSegmentId() string { - if x != nil { - return x.SegmentId - } - return "" -} - -func (x *QueryVectorsRequest) GetCollectionId() string { - if x != nil { - return x.CollectionId - } - return "" -} - -func (x *QueryVectorsRequest) GetVersionContext() *RequestVersionContext { - if x != nil { - return x.VersionContext - } - return nil -} - -type QueryVectorsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Results []*VectorQueryResults `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"` -} - -func (x *QueryVectorsResponse) Reset() { - *x = QueryVectorsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QueryVectorsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QueryVectorsResponse) ProtoMessage() {} - -func (x *QueryVectorsResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[34] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use QueryVectorsResponse.ProtoReflect.Descriptor instead. -func (*QueryVectorsResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{34} -} - -func (x *QueryVectorsResponse) GetResults() []*VectorQueryResults { - if x != nil { - return x.Results - } - return nil -} - -type VectorQueryResults struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Results []*VectorQueryResult `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"` -} - -func (x *VectorQueryResults) Reset() { - *x = VectorQueryResults{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *VectorQueryResults) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*VectorQueryResults) ProtoMessage() {} - -func (x *VectorQueryResults) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[35] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use VectorQueryResults.ProtoReflect.Descriptor instead. -func (*VectorQueryResults) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{35} -} - -func (x *VectorQueryResults) GetResults() []*VectorQueryResult { - if x != nil { - return x.Results - } - return nil -} - -type VectorQueryResult struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Distance float32 `protobuf:"fixed32,3,opt,name=distance,proto3" json:"distance,omitempty"` - Vector *Vector `protobuf:"bytes,4,opt,name=vector,proto3,oneof" json:"vector,omitempty"` -} - -func (x *VectorQueryResult) Reset() { - *x = VectorQueryResult{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_chroma_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *VectorQueryResult) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*VectorQueryResult) ProtoMessage() {} - -func (x *VectorQueryResult) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_chroma_proto_msgTypes[36] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use VectorQueryResult.ProtoReflect.Descriptor instead. -func (*VectorQueryResult) Descriptor() ([]byte, []int) { - return file_chromadb_proto_chroma_proto_rawDescGZIP(), []int{36} -} - -func (x *VectorQueryResult) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *VectorQueryResult) GetDistance() float32 { - if x != nil { - return x.Distance - } - return 0 -} - -func (x *VectorQueryResult) GetVector() *Vector { - if x != nil { - return x.Vector - } - return nil -} - -var File_chromadb_proto_chroma_proto protoreflect.FileDescriptor - -var file_chromadb_proto_chroma_proto_rawDesc = []byte{ - 0x0a, 0x1b, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x22, 0x72, 0x0a, 0x06, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, - 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, - 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x76, - 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x32, 0x0a, 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, - 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, - 0x2e, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x52, - 0x08, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x22, 0x21, 0x0a, 0x09, 0x46, 0x69, 0x6c, - 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x22, 0xcf, 0x02, 0x0a, - 0x07, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x05, - 0x73, 0x63, 0x6f, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x68, - 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x70, - 0x65, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, - 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, - 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, - 0x01, 0x12, 0x3d, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, - 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, - 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, - 0x1a, 0x4f, 0x0a, 0x0e, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x46, 0x69, 0x6c, - 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xce, - 0x02, 0x0a, 0x0a, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, - 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x4a, 0x73, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x12, 0x37, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, - 0x12, 0x21, 0x0a, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x05, 0x48, 0x01, 0x52, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, - 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x5f, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x6c, - 0x6f, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, - 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, - 0x46, 0x0a, 0x08, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x22, 0x1c, 0x0a, 0x06, 0x54, 0x65, 0x6e, 0x61, 0x6e, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa6, 0x01, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, - 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x69, 0x6e, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6c, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xac, - 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x12, 0x40, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x1a, 0x58, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x31, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xd0, 0x01, - 0x0a, 0x0f, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x2b, 0x0a, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, - 0x72, 0x48, 0x00, 0x52, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x12, 0x37, - 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x01, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x09, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x63, 0x68, 0x72, - 0x6f, 0x6d, 0x61, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x76, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x22, 0x69, 0x0a, 0x15, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x2d, 0x0a, 0x12, 0x63, 0x6f, 0x6c, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x5f, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, - 0x6c, 0x6f, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa1, 0x01, 0x0a, 0x13, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x46, 0x0a, 0x0f, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, - 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, - 0x2c, 0x0a, 0x14, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xad, 0x03, - 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, - 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x05, 0x77, 0x68, 0x65, 0x72, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x57, 0x68, - 0x65, 0x72, 0x65, 0x52, 0x05, 0x77, 0x68, 0x65, 0x72, 0x65, 0x12, 0x3c, 0x0a, 0x0e, 0x77, 0x68, - 0x65, 0x72, 0x65, 0x5f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x57, 0x68, 0x65, 0x72, - 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0d, 0x77, 0x68, 0x65, 0x72, 0x65, - 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x03, 0x69, 0x64, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x48, 0x00, 0x52, 0x03, 0x69, 0x64, 0x73, 0x88, 0x01, 0x01, - 0x12, 0x19, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, - 0x01, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x6f, - 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x06, 0x6f, - 0x66, 0x66, 0x73, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x29, 0x0a, - 0x10, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x46, 0x0a, 0x0f, 0x76, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x52, 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x42, 0x06, 0x0a, 0x04, 0x5f, 0x69, 0x64, 0x73, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d, - 0x69, 0x74, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x52, 0x0a, - 0x15, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x39, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, - 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, - 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, - 0x73, 0x22, 0x5d, 0x0a, 0x17, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6d, 0x62, - 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x08, - 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x22, 0x1b, 0x0a, 0x07, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x69, - 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x69, 0x64, 0x73, 0x22, 0x95, 0x01, - 0x0a, 0x0d, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, - 0x35, 0x0a, 0x06, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x57, - 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x06, - 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x3b, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, - 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, - 0x61, 0x2e, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x43, - 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x48, 0x00, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, - 0x72, 0x65, 0x6e, 0x42, 0x10, 0x0a, 0x0e, 0x77, 0x68, 0x65, 0x72, 0x65, 0x5f, 0x64, 0x6f, 0x63, - 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x6c, 0x0a, 0x13, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x57, - 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, - 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x39, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, - 0x6f, 0x6d, 0x61, 0x2e, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, - 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x22, 0x7f, 0x0a, 0x15, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, - 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x31, 0x0a, 0x08, - 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, - 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, - 0x33, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x17, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x65, - 0x61, 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0x8e, 0x01, 0x0a, 0x05, 0x57, 0x68, 0x65, 0x72, 0x65, 0x12, 0x47, - 0x0a, 0x11, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, - 0x73, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, - 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x43, 0x6f, 0x6d, - 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, - 0x72, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x57, 0x68, 0x65, 0x72, 0x65, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, - 0x48, 0x00, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x42, 0x07, 0x0a, 0x05, - 0x77, 0x68, 0x65, 0x72, 0x65, 0x22, 0xac, 0x05, 0x0a, 0x10, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, - 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x54, 0x0a, 0x15, - 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x68, - 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x13, 0x73, - 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x6e, 0x64, 0x12, 0x4e, 0x0a, 0x13, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x69, 0x73, - 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4c, - 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, - 0x11, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x6e, 0x64, 0x12, 0x4b, 0x0a, 0x12, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x74, - 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x49, 0x6e, - 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x10, 0x73, - 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, - 0x45, 0x0a, 0x10, 0x69, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x6e, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x49, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, - 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x54, 0x0a, 0x15, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, - 0x5f, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, - 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x61, - 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x13, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x44, - 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x4e, 0x0a, 0x13, - 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, - 0x61, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, - 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x11, 0x64, 0x6f, 0x75, 0x62, 0x6c, - 0x65, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x48, 0x0a, 0x11, - 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, - 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, - 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, - 0x73, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0f, 0x62, 0x6f, 0x6f, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x4e, 0x0a, 0x13, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, - 0x5f, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x69, 0x6e, - 0x67, 0x6c, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, - 0x6e, 0x48, 0x00, 0x52, 0x11, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x6e, 0x64, 0x42, 0x0c, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, - 0x69, 0x73, 0x6f, 0x6e, 0x22, 0x6f, 0x0a, 0x0d, 0x57, 0x68, 0x65, 0x72, 0x65, 0x43, 0x68, 0x69, - 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x29, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, - 0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, - 0x2e, 0x57, 0x68, 0x65, 0x72, 0x65, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, - 0x12, 0x33, 0x0a, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, - 0x65, 0x61, 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x08, 0x6f, 0x70, 0x65, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x69, 0x0a, 0x14, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4c, - 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x16, 0x0a, - 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0d, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x52, 0x0c, 0x6c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x22, 0x69, 0x0a, 0x16, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, - 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x67, 0x0a, 0x14, 0x53, - 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x42, 0x6f, 0x6f, 0x6c, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, - 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, - 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, - 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, - 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x22, 0x66, 0x0a, 0x11, 0x49, 0x6e, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x43, - 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x73, 0x12, 0x39, 0x0a, 0x0d, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, - 0x61, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x0c, - 0x6c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xce, 0x01, 0x0a, - 0x13, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x49, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, - 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x4a, 0x0a, 0x12, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, - 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, - 0x72, 0x48, 0x00, 0x52, 0x11, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x70, - 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x47, 0x0a, 0x11, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x18, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x10, 0x6e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, - 0x0c, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x69, 0x0a, - 0x14, 0x44, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, - 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x01, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x39, 0x0a, - 0x0d, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x0c, 0x6c, 0x69, 0x73, 0x74, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0x67, 0x0a, 0x12, 0x42, 0x6f, 0x6f, 0x6c, - 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x16, - 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x08, 0x52, 0x06, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0d, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x6f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, - 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x52, 0x0c, 0x6c, 0x69, 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, - 0x72, 0x22, 0xd1, 0x01, 0x0a, 0x16, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x44, 0x6f, 0x75, 0x62, - 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x69, 0x73, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x12, 0x4a, 0x0a, 0x12, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x5f, 0x63, 0x6f, - 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, - 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x11, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x47, - 0x0a, 0x11, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, - 0x74, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x6d, - 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x42, 0x0c, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x70, 0x61, - 0x72, 0x61, 0x74, 0x6f, 0x72, 0x22, 0xb1, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x69, - 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x03, 0x69, 0x64, 0x73, 0x12, 0x1d, 0x0a, - 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, - 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x12, 0x46, 0x0a, 0x0f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x78, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, - 0x6f, 0x6d, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x4d, 0x0a, 0x12, 0x47, 0x65, 0x74, - 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x37, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, - 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x22, 0x4f, 0x0a, 0x15, 0x56, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x45, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, - 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x26, 0x0a, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, - 0x72, 0x52, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0xa9, 0x02, 0x0a, 0x13, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x28, 0x0a, 0x07, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x52, 0x07, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x0c, 0x0a, 0x01, 0x6b, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x01, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x6c, 0x6c, - 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, - 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x49, 0x64, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x69, 0x6e, - 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x65, 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x45, - 0x6d, 0x62, 0x65, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, - 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, - 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x46, 0x0a, - 0x0f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x4c, 0x0a, 0x14, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, - 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x51, 0x75, - 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x73, 0x22, 0x49, 0x0a, 0x12, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x33, 0x0a, 0x07, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x63, 0x68, 0x72, - 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x07, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x77, - 0x0a, 0x11, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x64, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, - 0x2b, 0x0a, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x48, - 0x00, 0x52, 0x06, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, - 0x5f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x2a, 0x38, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x44, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, - 0x06, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x50, 0x53, - 0x45, 0x52, 0x54, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, - 0x03, 0x2a, 0x28, 0x0a, 0x0e, 0x53, 0x63, 0x61, 0x6c, 0x61, 0x72, 0x45, 0x6e, 0x63, 0x6f, 0x64, - 0x69, 0x6e, 0x67, 0x12, 0x0b, 0x0a, 0x07, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x33, 0x32, 0x10, 0x00, - 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x01, 0x2a, 0x40, 0x0a, 0x0c, 0x53, - 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x56, - 0x45, 0x43, 0x54, 0x4f, 0x52, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4d, 0x45, 0x54, 0x41, 0x44, - 0x41, 0x54, 0x41, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x43, 0x4f, 0x52, 0x44, 0x10, - 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x51, 0x4c, 0x49, 0x54, 0x45, 0x10, 0x03, 0x2a, 0x37, 0x0a, - 0x15, 0x57, 0x68, 0x65, 0x72, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x4f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4e, 0x54, 0x41, 0x49, - 0x4e, 0x53, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4e, 0x4f, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x54, - 0x41, 0x49, 0x4e, 0x53, 0x10, 0x01, 0x2a, 0x22, 0x0a, 0x0f, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, - 0x6e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x44, - 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x52, 0x10, 0x01, 0x2a, 0x1f, 0x0a, 0x0c, 0x4c, 0x69, - 0x73, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, - 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x49, 0x4e, 0x10, 0x01, 0x2a, 0x23, 0x0a, 0x11, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x12, 0x06, 0x0a, 0x02, 0x45, 0x51, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x45, 0x10, 0x01, - 0x2a, 0x34, 0x0a, 0x10, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, - 0x61, 0x74, 0x6f, 0x72, 0x12, 0x06, 0x0a, 0x02, 0x47, 0x54, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, - 0x47, 0x54, 0x45, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x4c, 0x54, 0x10, 0x02, 0x12, 0x07, 0x0a, - 0x03, 0x4c, 0x54, 0x45, 0x10, 0x03, 0x32, 0xad, 0x01, 0x0a, 0x0e, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x4e, 0x0a, 0x0d, 0x51, 0x75, 0x65, - 0x72, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1c, 0x2e, 0x63, 0x68, 0x72, - 0x6f, 0x6d, 0x61, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, - 0x61, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0c, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x1b, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x32, 0xa2, 0x01, 0x0a, 0x0c, 0x56, 0x65, 0x63, 0x74, 0x6f, - 0x72, 0x52, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x45, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x56, 0x65, - 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x19, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, - 0x65, 0x74, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x1a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, - 0x0a, 0x0c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x1b, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x68, - 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x3a, 0x5a, 0x38, 0x67, - 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, - 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2f, 0x67, 0x6f, 0x2f, - 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, - 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_chromadb_proto_chroma_proto_rawDescOnce sync.Once - file_chromadb_proto_chroma_proto_rawDescData = file_chromadb_proto_chroma_proto_rawDesc -) - -func file_chromadb_proto_chroma_proto_rawDescGZIP() []byte { - file_chromadb_proto_chroma_proto_rawDescOnce.Do(func() { - file_chromadb_proto_chroma_proto_rawDescData = protoimpl.X.CompressGZIP(file_chromadb_proto_chroma_proto_rawDescData) - }) - return file_chromadb_proto_chroma_proto_rawDescData -} - -var file_chromadb_proto_chroma_proto_enumTypes = make([]protoimpl.EnumInfo, 8) -var file_chromadb_proto_chroma_proto_msgTypes = make([]protoimpl.MessageInfo, 39) -var file_chromadb_proto_chroma_proto_goTypes = []any{ - (Operation)(0), // 0: chroma.Operation - (ScalarEncoding)(0), // 1: chroma.ScalarEncoding - (SegmentScope)(0), // 2: chroma.SegmentScope - (WhereDocumentOperator)(0), // 3: chroma.WhereDocumentOperator - (BooleanOperator)(0), // 4: chroma.BooleanOperator - (ListOperator)(0), // 5: chroma.ListOperator - (GenericComparator)(0), // 6: chroma.GenericComparator - (NumberComparator)(0), // 7: chroma.NumberComparator - (*Vector)(nil), // 8: chroma.Vector - (*FilePaths)(nil), // 9: chroma.FilePaths - (*Segment)(nil), // 10: chroma.Segment - (*Collection)(nil), // 11: chroma.Collection - (*Database)(nil), // 12: chroma.Database - (*Tenant)(nil), // 13: chroma.Tenant - (*UpdateMetadataValue)(nil), // 14: chroma.UpdateMetadataValue - (*UpdateMetadata)(nil), // 15: chroma.UpdateMetadata - (*OperationRecord)(nil), // 16: chroma.OperationRecord - (*RequestVersionContext)(nil), // 17: chroma.RequestVersionContext - (*CountRecordsRequest)(nil), // 18: chroma.CountRecordsRequest - (*CountRecordsResponse)(nil), // 19: chroma.CountRecordsResponse - (*QueryMetadataRequest)(nil), // 20: chroma.QueryMetadataRequest - (*QueryMetadataResponse)(nil), // 21: chroma.QueryMetadataResponse - (*MetadataEmbeddingRecord)(nil), // 22: chroma.MetadataEmbeddingRecord - (*UserIds)(nil), // 23: chroma.UserIds - (*WhereDocument)(nil), // 24: chroma.WhereDocument - (*DirectWhereDocument)(nil), // 25: chroma.DirectWhereDocument - (*WhereDocumentChildren)(nil), // 26: chroma.WhereDocumentChildren - (*Where)(nil), // 27: chroma.Where - (*DirectComparison)(nil), // 28: chroma.DirectComparison - (*WhereChildren)(nil), // 29: chroma.WhereChildren - (*StringListComparison)(nil), // 30: chroma.StringListComparison - (*SingleStringComparison)(nil), // 31: chroma.SingleStringComparison - (*SingleBoolComparison)(nil), // 32: chroma.SingleBoolComparison - (*IntListComparison)(nil), // 33: chroma.IntListComparison - (*SingleIntComparison)(nil), // 34: chroma.SingleIntComparison - (*DoubleListComparison)(nil), // 35: chroma.DoubleListComparison - (*BoolListComparison)(nil), // 36: chroma.BoolListComparison - (*SingleDoubleComparison)(nil), // 37: chroma.SingleDoubleComparison - (*GetVectorsRequest)(nil), // 38: chroma.GetVectorsRequest - (*GetVectorsResponse)(nil), // 39: chroma.GetVectorsResponse - (*VectorEmbeddingRecord)(nil), // 40: chroma.VectorEmbeddingRecord - (*QueryVectorsRequest)(nil), // 41: chroma.QueryVectorsRequest - (*QueryVectorsResponse)(nil), // 42: chroma.QueryVectorsResponse - (*VectorQueryResults)(nil), // 43: chroma.VectorQueryResults - (*VectorQueryResult)(nil), // 44: chroma.VectorQueryResult - nil, // 45: chroma.Segment.FilePathsEntry - nil, // 46: chroma.UpdateMetadata.MetadataEntry -} -var file_chromadb_proto_chroma_proto_depIdxs = []int32{ - 1, // 0: chroma.Vector.encoding:type_name -> chroma.ScalarEncoding - 2, // 1: chroma.Segment.scope:type_name -> chroma.SegmentScope - 15, // 2: chroma.Segment.metadata:type_name -> chroma.UpdateMetadata - 45, // 3: chroma.Segment.file_paths:type_name -> chroma.Segment.FilePathsEntry - 15, // 4: chroma.Collection.metadata:type_name -> chroma.UpdateMetadata - 46, // 5: chroma.UpdateMetadata.metadata:type_name -> chroma.UpdateMetadata.MetadataEntry - 8, // 6: chroma.OperationRecord.vector:type_name -> chroma.Vector - 15, // 7: chroma.OperationRecord.metadata:type_name -> chroma.UpdateMetadata - 0, // 8: chroma.OperationRecord.operation:type_name -> chroma.Operation - 17, // 9: chroma.CountRecordsRequest.version_context:type_name -> chroma.RequestVersionContext - 27, // 10: chroma.QueryMetadataRequest.where:type_name -> chroma.Where - 24, // 11: chroma.QueryMetadataRequest.where_document:type_name -> chroma.WhereDocument - 23, // 12: chroma.QueryMetadataRequest.ids:type_name -> chroma.UserIds - 17, // 13: chroma.QueryMetadataRequest.version_context:type_name -> chroma.RequestVersionContext - 22, // 14: chroma.QueryMetadataResponse.records:type_name -> chroma.MetadataEmbeddingRecord - 15, // 15: chroma.MetadataEmbeddingRecord.metadata:type_name -> chroma.UpdateMetadata - 25, // 16: chroma.WhereDocument.direct:type_name -> chroma.DirectWhereDocument - 26, // 17: chroma.WhereDocument.children:type_name -> chroma.WhereDocumentChildren - 3, // 18: chroma.DirectWhereDocument.operator:type_name -> chroma.WhereDocumentOperator - 24, // 19: chroma.WhereDocumentChildren.children:type_name -> chroma.WhereDocument - 4, // 20: chroma.WhereDocumentChildren.operator:type_name -> chroma.BooleanOperator - 28, // 21: chroma.Where.direct_comparison:type_name -> chroma.DirectComparison - 29, // 22: chroma.Where.children:type_name -> chroma.WhereChildren - 31, // 23: chroma.DirectComparison.single_string_operand:type_name -> chroma.SingleStringComparison - 30, // 24: chroma.DirectComparison.string_list_operand:type_name -> chroma.StringListComparison - 34, // 25: chroma.DirectComparison.single_int_operand:type_name -> chroma.SingleIntComparison - 33, // 26: chroma.DirectComparison.int_list_operand:type_name -> chroma.IntListComparison - 37, // 27: chroma.DirectComparison.single_double_operand:type_name -> chroma.SingleDoubleComparison - 35, // 28: chroma.DirectComparison.double_list_operand:type_name -> chroma.DoubleListComparison - 36, // 29: chroma.DirectComparison.bool_list_operand:type_name -> chroma.BoolListComparison - 32, // 30: chroma.DirectComparison.single_bool_operand:type_name -> chroma.SingleBoolComparison - 27, // 31: chroma.WhereChildren.children:type_name -> chroma.Where - 4, // 32: chroma.WhereChildren.operator:type_name -> chroma.BooleanOperator - 5, // 33: chroma.StringListComparison.list_operator:type_name -> chroma.ListOperator - 6, // 34: chroma.SingleStringComparison.comparator:type_name -> chroma.GenericComparator - 6, // 35: chroma.SingleBoolComparison.comparator:type_name -> chroma.GenericComparator - 5, // 36: chroma.IntListComparison.list_operator:type_name -> chroma.ListOperator - 6, // 37: chroma.SingleIntComparison.generic_comparator:type_name -> chroma.GenericComparator - 7, // 38: chroma.SingleIntComparison.number_comparator:type_name -> chroma.NumberComparator - 5, // 39: chroma.DoubleListComparison.list_operator:type_name -> chroma.ListOperator - 5, // 40: chroma.BoolListComparison.list_operator:type_name -> chroma.ListOperator - 6, // 41: chroma.SingleDoubleComparison.generic_comparator:type_name -> chroma.GenericComparator - 7, // 42: chroma.SingleDoubleComparison.number_comparator:type_name -> chroma.NumberComparator - 17, // 43: chroma.GetVectorsRequest.version_context:type_name -> chroma.RequestVersionContext - 40, // 44: chroma.GetVectorsResponse.records:type_name -> chroma.VectorEmbeddingRecord - 8, // 45: chroma.VectorEmbeddingRecord.vector:type_name -> chroma.Vector - 8, // 46: chroma.QueryVectorsRequest.vectors:type_name -> chroma.Vector - 17, // 47: chroma.QueryVectorsRequest.version_context:type_name -> chroma.RequestVersionContext - 43, // 48: chroma.QueryVectorsResponse.results:type_name -> chroma.VectorQueryResults - 44, // 49: chroma.VectorQueryResults.results:type_name -> chroma.VectorQueryResult - 8, // 50: chroma.VectorQueryResult.vector:type_name -> chroma.Vector - 9, // 51: chroma.Segment.FilePathsEntry.value:type_name -> chroma.FilePaths - 14, // 52: chroma.UpdateMetadata.MetadataEntry.value:type_name -> chroma.UpdateMetadataValue - 20, // 53: chroma.MetadataReader.QueryMetadata:input_type -> chroma.QueryMetadataRequest - 18, // 54: chroma.MetadataReader.CountRecords:input_type -> chroma.CountRecordsRequest - 38, // 55: chroma.VectorReader.GetVectors:input_type -> chroma.GetVectorsRequest - 41, // 56: chroma.VectorReader.QueryVectors:input_type -> chroma.QueryVectorsRequest - 21, // 57: chroma.MetadataReader.QueryMetadata:output_type -> chroma.QueryMetadataResponse - 19, // 58: chroma.MetadataReader.CountRecords:output_type -> chroma.CountRecordsResponse - 39, // 59: chroma.VectorReader.GetVectors:output_type -> chroma.GetVectorsResponse - 42, // 60: chroma.VectorReader.QueryVectors:output_type -> chroma.QueryVectorsResponse - 57, // [57:61] is the sub-list for method output_type - 53, // [53:57] is the sub-list for method input_type - 53, // [53:53] is the sub-list for extension type_name - 53, // [53:53] is the sub-list for extension extendee - 0, // [0:53] is the sub-list for field type_name -} - -func init() { file_chromadb_proto_chroma_proto_init() } -func file_chromadb_proto_chroma_proto_init() { - if File_chromadb_proto_chroma_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_chromadb_proto_chroma_proto_msgTypes[0].Exporter = func(v any, i int) any { - switch v := v.(*Vector); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[1].Exporter = func(v any, i int) any { - switch v := v.(*FilePaths); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[2].Exporter = func(v any, i int) any { - switch v := v.(*Segment); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[3].Exporter = func(v any, i int) any { - switch v := v.(*Collection); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[4].Exporter = func(v any, i int) any { - switch v := v.(*Database); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[5].Exporter = func(v any, i int) any { - switch v := v.(*Tenant); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[6].Exporter = func(v any, i int) any { - switch v := v.(*UpdateMetadataValue); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[7].Exporter = func(v any, i int) any { - switch v := v.(*UpdateMetadata); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[8].Exporter = func(v any, i int) any { - switch v := v.(*OperationRecord); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[9].Exporter = func(v any, i int) any { - switch v := v.(*RequestVersionContext); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[10].Exporter = func(v any, i int) any { - switch v := v.(*CountRecordsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[11].Exporter = func(v any, i int) any { - switch v := v.(*CountRecordsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[12].Exporter = func(v any, i int) any { - switch v := v.(*QueryMetadataRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[13].Exporter = func(v any, i int) any { - switch v := v.(*QueryMetadataResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[14].Exporter = func(v any, i int) any { - switch v := v.(*MetadataEmbeddingRecord); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[15].Exporter = func(v any, i int) any { - switch v := v.(*UserIds); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[16].Exporter = func(v any, i int) any { - switch v := v.(*WhereDocument); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[17].Exporter = func(v any, i int) any { - switch v := v.(*DirectWhereDocument); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[18].Exporter = func(v any, i int) any { - switch v := v.(*WhereDocumentChildren); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[19].Exporter = func(v any, i int) any { - switch v := v.(*Where); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[20].Exporter = func(v any, i int) any { - switch v := v.(*DirectComparison); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[21].Exporter = func(v any, i int) any { - switch v := v.(*WhereChildren); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[22].Exporter = func(v any, i int) any { - switch v := v.(*StringListComparison); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[23].Exporter = func(v any, i int) any { - switch v := v.(*SingleStringComparison); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[24].Exporter = func(v any, i int) any { - switch v := v.(*SingleBoolComparison); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[25].Exporter = func(v any, i int) any { - switch v := v.(*IntListComparison); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[26].Exporter = func(v any, i int) any { - switch v := v.(*SingleIntComparison); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[27].Exporter = func(v any, i int) any { - switch v := v.(*DoubleListComparison); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[28].Exporter = func(v any, i int) any { - switch v := v.(*BoolListComparison); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[29].Exporter = func(v any, i int) any { - switch v := v.(*SingleDoubleComparison); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[30].Exporter = func(v any, i int) any { - switch v := v.(*GetVectorsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[31].Exporter = func(v any, i int) any { - switch v := v.(*GetVectorsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[32].Exporter = func(v any, i int) any { - switch v := v.(*VectorEmbeddingRecord); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[33].Exporter = func(v any, i int) any { - switch v := v.(*QueryVectorsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[34].Exporter = func(v any, i int) any { - switch v := v.(*QueryVectorsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[35].Exporter = func(v any, i int) any { - switch v := v.(*VectorQueryResults); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_chroma_proto_msgTypes[36].Exporter = func(v any, i int) any { - switch v := v.(*VectorQueryResult); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - file_chromadb_proto_chroma_proto_msgTypes[2].OneofWrappers = []any{} - file_chromadb_proto_chroma_proto_msgTypes[3].OneofWrappers = []any{} - file_chromadb_proto_chroma_proto_msgTypes[6].OneofWrappers = []any{ - (*UpdateMetadataValue_StringValue)(nil), - (*UpdateMetadataValue_IntValue)(nil), - (*UpdateMetadataValue_FloatValue)(nil), - (*UpdateMetadataValue_BoolValue)(nil), - } - file_chromadb_proto_chroma_proto_msgTypes[8].OneofWrappers = []any{} - file_chromadb_proto_chroma_proto_msgTypes[12].OneofWrappers = []any{} - file_chromadb_proto_chroma_proto_msgTypes[16].OneofWrappers = []any{ - (*WhereDocument_Direct)(nil), - (*WhereDocument_Children)(nil), - } - file_chromadb_proto_chroma_proto_msgTypes[19].OneofWrappers = []any{ - (*Where_DirectComparison)(nil), - (*Where_Children)(nil), - } - file_chromadb_proto_chroma_proto_msgTypes[20].OneofWrappers = []any{ - (*DirectComparison_SingleStringOperand)(nil), - (*DirectComparison_StringListOperand)(nil), - (*DirectComparison_SingleIntOperand)(nil), - (*DirectComparison_IntListOperand)(nil), - (*DirectComparison_SingleDoubleOperand)(nil), - (*DirectComparison_DoubleListOperand)(nil), - (*DirectComparison_BoolListOperand)(nil), - (*DirectComparison_SingleBoolOperand)(nil), - } - file_chromadb_proto_chroma_proto_msgTypes[26].OneofWrappers = []any{ - (*SingleIntComparison_GenericComparator)(nil), - (*SingleIntComparison_NumberComparator)(nil), - } - file_chromadb_proto_chroma_proto_msgTypes[29].OneofWrappers = []any{ - (*SingleDoubleComparison_GenericComparator)(nil), - (*SingleDoubleComparison_NumberComparator)(nil), - } - file_chromadb_proto_chroma_proto_msgTypes[36].OneofWrappers = []any{} - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_chromadb_proto_chroma_proto_rawDesc, - NumEnums: 8, - NumMessages: 39, - NumExtensions: 0, - NumServices: 2, - }, - GoTypes: file_chromadb_proto_chroma_proto_goTypes, - DependencyIndexes: file_chromadb_proto_chroma_proto_depIdxs, - EnumInfos: file_chromadb_proto_chroma_proto_enumTypes, - MessageInfos: file_chromadb_proto_chroma_proto_msgTypes, - }.Build() - File_chromadb_proto_chroma_proto = out.File - file_chromadb_proto_chroma_proto_rawDesc = nil - file_chromadb_proto_chroma_proto_goTypes = nil - file_chromadb_proto_chroma_proto_depIdxs = nil -} diff --git a/go/pkg/proto/coordinatorpb/chroma_grpc.pb.go b/go/pkg/proto/coordinatorpb/chroma_grpc.pb.go deleted file mode 100644 index 72402d84df0..00000000000 --- a/go/pkg/proto/coordinatorpb/chroma_grpc.pb.go +++ /dev/null @@ -1,299 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.5.1 -// - protoc v5.28.2 -// source: chromadb/proto/chroma.proto - -package coordinatorpb - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.64.0 or later. -const _ = grpc.SupportPackageIsVersion9 - -const ( - MetadataReader_QueryMetadata_FullMethodName = "/chroma.MetadataReader/QueryMetadata" - MetadataReader_CountRecords_FullMethodName = "/chroma.MetadataReader/CountRecords" -) - -// MetadataReaderClient is the client API for MetadataReader service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type MetadataReaderClient interface { - QueryMetadata(ctx context.Context, in *QueryMetadataRequest, opts ...grpc.CallOption) (*QueryMetadataResponse, error) - CountRecords(ctx context.Context, in *CountRecordsRequest, opts ...grpc.CallOption) (*CountRecordsResponse, error) -} - -type metadataReaderClient struct { - cc grpc.ClientConnInterface -} - -func NewMetadataReaderClient(cc grpc.ClientConnInterface) MetadataReaderClient { - return &metadataReaderClient{cc} -} - -func (c *metadataReaderClient) QueryMetadata(ctx context.Context, in *QueryMetadataRequest, opts ...grpc.CallOption) (*QueryMetadataResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(QueryMetadataResponse) - err := c.cc.Invoke(ctx, MetadataReader_QueryMetadata_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *metadataReaderClient) CountRecords(ctx context.Context, in *CountRecordsRequest, opts ...grpc.CallOption) (*CountRecordsResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(CountRecordsResponse) - err := c.cc.Invoke(ctx, MetadataReader_CountRecords_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -// MetadataReaderServer is the server API for MetadataReader service. -// All implementations must embed UnimplementedMetadataReaderServer -// for forward compatibility. -type MetadataReaderServer interface { - QueryMetadata(context.Context, *QueryMetadataRequest) (*QueryMetadataResponse, error) - CountRecords(context.Context, *CountRecordsRequest) (*CountRecordsResponse, error) - mustEmbedUnimplementedMetadataReaderServer() -} - -// UnimplementedMetadataReaderServer must be embedded to have -// forward compatible implementations. -// -// NOTE: this should be embedded by value instead of pointer to avoid a nil -// pointer dereference when methods are called. -type UnimplementedMetadataReaderServer struct{} - -func (UnimplementedMetadataReaderServer) QueryMetadata(context.Context, *QueryMetadataRequest) (*QueryMetadataResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method QueryMetadata not implemented") -} -func (UnimplementedMetadataReaderServer) CountRecords(context.Context, *CountRecordsRequest) (*CountRecordsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method CountRecords not implemented") -} -func (UnimplementedMetadataReaderServer) mustEmbedUnimplementedMetadataReaderServer() {} -func (UnimplementedMetadataReaderServer) testEmbeddedByValue() {} - -// UnsafeMetadataReaderServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to MetadataReaderServer will -// result in compilation errors. -type UnsafeMetadataReaderServer interface { - mustEmbedUnimplementedMetadataReaderServer() -} - -func RegisterMetadataReaderServer(s grpc.ServiceRegistrar, srv MetadataReaderServer) { - // If the following call pancis, it indicates UnimplementedMetadataReaderServer was - // embedded by pointer and is nil. This will cause panics if an - // unimplemented method is ever invoked, so we test this at initialization - // time to prevent it from happening at runtime later due to I/O. - if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { - t.testEmbeddedByValue() - } - s.RegisterService(&MetadataReader_ServiceDesc, srv) -} - -func _MetadataReader_QueryMetadata_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryMetadataRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MetadataReaderServer).QueryMetadata(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: MetadataReader_QueryMetadata_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MetadataReaderServer).QueryMetadata(ctx, req.(*QueryMetadataRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _MetadataReader_CountRecords_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CountRecordsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(MetadataReaderServer).CountRecords(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: MetadataReader_CountRecords_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(MetadataReaderServer).CountRecords(ctx, req.(*CountRecordsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// MetadataReader_ServiceDesc is the grpc.ServiceDesc for MetadataReader service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var MetadataReader_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "chroma.MetadataReader", - HandlerType: (*MetadataReaderServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "QueryMetadata", - Handler: _MetadataReader_QueryMetadata_Handler, - }, - { - MethodName: "CountRecords", - Handler: _MetadataReader_CountRecords_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "chromadb/proto/chroma.proto", -} - -const ( - VectorReader_GetVectors_FullMethodName = "/chroma.VectorReader/GetVectors" - VectorReader_QueryVectors_FullMethodName = "/chroma.VectorReader/QueryVectors" -) - -// VectorReaderClient is the client API for VectorReader service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type VectorReaderClient interface { - GetVectors(ctx context.Context, in *GetVectorsRequest, opts ...grpc.CallOption) (*GetVectorsResponse, error) - QueryVectors(ctx context.Context, in *QueryVectorsRequest, opts ...grpc.CallOption) (*QueryVectorsResponse, error) -} - -type vectorReaderClient struct { - cc grpc.ClientConnInterface -} - -func NewVectorReaderClient(cc grpc.ClientConnInterface) VectorReaderClient { - return &vectorReaderClient{cc} -} - -func (c *vectorReaderClient) GetVectors(ctx context.Context, in *GetVectorsRequest, opts ...grpc.CallOption) (*GetVectorsResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(GetVectorsResponse) - err := c.cc.Invoke(ctx, VectorReader_GetVectors_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *vectorReaderClient) QueryVectors(ctx context.Context, in *QueryVectorsRequest, opts ...grpc.CallOption) (*QueryVectorsResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(QueryVectorsResponse) - err := c.cc.Invoke(ctx, VectorReader_QueryVectors_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -// VectorReaderServer is the server API for VectorReader service. -// All implementations must embed UnimplementedVectorReaderServer -// for forward compatibility. -type VectorReaderServer interface { - GetVectors(context.Context, *GetVectorsRequest) (*GetVectorsResponse, error) - QueryVectors(context.Context, *QueryVectorsRequest) (*QueryVectorsResponse, error) - mustEmbedUnimplementedVectorReaderServer() -} - -// UnimplementedVectorReaderServer must be embedded to have -// forward compatible implementations. -// -// NOTE: this should be embedded by value instead of pointer to avoid a nil -// pointer dereference when methods are called. -type UnimplementedVectorReaderServer struct{} - -func (UnimplementedVectorReaderServer) GetVectors(context.Context, *GetVectorsRequest) (*GetVectorsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetVectors not implemented") -} -func (UnimplementedVectorReaderServer) QueryVectors(context.Context, *QueryVectorsRequest) (*QueryVectorsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method QueryVectors not implemented") -} -func (UnimplementedVectorReaderServer) mustEmbedUnimplementedVectorReaderServer() {} -func (UnimplementedVectorReaderServer) testEmbeddedByValue() {} - -// UnsafeVectorReaderServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to VectorReaderServer will -// result in compilation errors. -type UnsafeVectorReaderServer interface { - mustEmbedUnimplementedVectorReaderServer() -} - -func RegisterVectorReaderServer(s grpc.ServiceRegistrar, srv VectorReaderServer) { - // If the following call pancis, it indicates UnimplementedVectorReaderServer was - // embedded by pointer and is nil. This will cause panics if an - // unimplemented method is ever invoked, so we test this at initialization - // time to prevent it from happening at runtime later due to I/O. - if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { - t.testEmbeddedByValue() - } - s.RegisterService(&VectorReader_ServiceDesc, srv) -} - -func _VectorReader_GetVectors_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetVectorsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(VectorReaderServer).GetVectors(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: VectorReader_GetVectors_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(VectorReaderServer).GetVectors(ctx, req.(*GetVectorsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _VectorReader_QueryVectors_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(QueryVectorsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(VectorReaderServer).QueryVectors(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: VectorReader_QueryVectors_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(VectorReaderServer).QueryVectors(ctx, req.(*QueryVectorsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// VectorReader_ServiceDesc is the grpc.ServiceDesc for VectorReader service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var VectorReader_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "chroma.VectorReader", - HandlerType: (*VectorReaderServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "GetVectors", - Handler: _VectorReader_GetVectors_Handler, - }, - { - MethodName: "QueryVectors", - Handler: _VectorReader_QueryVectors_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "chromadb/proto/chroma.proto", -} diff --git a/go/pkg/proto/coordinatorpb/coordinator.pb.go b/go/pkg/proto/coordinatorpb/coordinator.pb.go deleted file mode 100644 index 3c44b540d9b..00000000000 --- a/go/pkg/proto/coordinatorpb/coordinator.pb.go +++ /dev/null @@ -1,2970 +0,0 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.34.2 -// protoc v5.28.2 -// source: chromadb/proto/coordinator.proto - -package coordinatorpb - -import ( - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - emptypb "google.golang.org/protobuf/types/known/emptypb" - reflect "reflect" - sync "sync" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -type CreateDatabaseRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Tenant string `protobuf:"bytes,3,opt,name=tenant,proto3" json:"tenant,omitempty"` -} - -func (x *CreateDatabaseRequest) Reset() { - *x = CreateDatabaseRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateDatabaseRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateDatabaseRequest) ProtoMessage() {} - -func (x *CreateDatabaseRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateDatabaseRequest.ProtoReflect.Descriptor instead. -func (*CreateDatabaseRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{0} -} - -func (x *CreateDatabaseRequest) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *CreateDatabaseRequest) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *CreateDatabaseRequest) GetTenant() string { - if x != nil { - return x.Tenant - } - return "" -} - -type CreateDatabaseResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CreateDatabaseResponse) Reset() { - *x = CreateDatabaseResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateDatabaseResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateDatabaseResponse) ProtoMessage() {} - -func (x *CreateDatabaseResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateDatabaseResponse.ProtoReflect.Descriptor instead. -func (*CreateDatabaseResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{1} -} - -type GetDatabaseRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Tenant string `protobuf:"bytes,2,opt,name=tenant,proto3" json:"tenant,omitempty"` -} - -func (x *GetDatabaseRequest) Reset() { - *x = GetDatabaseRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetDatabaseRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetDatabaseRequest) ProtoMessage() {} - -func (x *GetDatabaseRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetDatabaseRequest.ProtoReflect.Descriptor instead. -func (*GetDatabaseRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{2} -} - -func (x *GetDatabaseRequest) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *GetDatabaseRequest) GetTenant() string { - if x != nil { - return x.Tenant - } - return "" -} - -type GetDatabaseResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Database *Database `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"` -} - -func (x *GetDatabaseResponse) Reset() { - *x = GetDatabaseResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetDatabaseResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetDatabaseResponse) ProtoMessage() {} - -func (x *GetDatabaseResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetDatabaseResponse.ProtoReflect.Descriptor instead. -func (*GetDatabaseResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{3} -} - -func (x *GetDatabaseResponse) GetDatabase() *Database { - if x != nil { - return x.Database - } - return nil -} - -type CreateTenantRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // Names are globally unique -} - -func (x *CreateTenantRequest) Reset() { - *x = CreateTenantRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateTenantRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateTenantRequest) ProtoMessage() {} - -func (x *CreateTenantRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateTenantRequest.ProtoReflect.Descriptor instead. -func (*CreateTenantRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{4} -} - -func (x *CreateTenantRequest) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -type CreateTenantResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CreateTenantResponse) Reset() { - *x = CreateTenantResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateTenantResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateTenantResponse) ProtoMessage() {} - -func (x *CreateTenantResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateTenantResponse.ProtoReflect.Descriptor instead. -func (*CreateTenantResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{5} -} - -type GetTenantRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` -} - -func (x *GetTenantRequest) Reset() { - *x = GetTenantRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetTenantRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetTenantRequest) ProtoMessage() {} - -func (x *GetTenantRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetTenantRequest.ProtoReflect.Descriptor instead. -func (*GetTenantRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{6} -} - -func (x *GetTenantRequest) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -type GetTenantResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Tenant *Tenant `protobuf:"bytes,1,opt,name=tenant,proto3" json:"tenant,omitempty"` -} - -func (x *GetTenantResponse) Reset() { - *x = GetTenantResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetTenantResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetTenantResponse) ProtoMessage() {} - -func (x *GetTenantResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetTenantResponse.ProtoReflect.Descriptor instead. -func (*GetTenantResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{7} -} - -func (x *GetTenantResponse) GetTenant() *Tenant { - if x != nil { - return x.Tenant - } - return nil -} - -type CreateSegmentRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Segment *Segment `protobuf:"bytes,1,opt,name=segment,proto3" json:"segment,omitempty"` -} - -func (x *CreateSegmentRequest) Reset() { - *x = CreateSegmentRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateSegmentRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateSegmentRequest) ProtoMessage() {} - -func (x *CreateSegmentRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateSegmentRequest.ProtoReflect.Descriptor instead. -func (*CreateSegmentRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{8} -} - -func (x *CreateSegmentRequest) GetSegment() *Segment { - if x != nil { - return x.Segment - } - return nil -} - -type CreateSegmentResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CreateSegmentResponse) Reset() { - *x = CreateSegmentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateSegmentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateSegmentResponse) ProtoMessage() {} - -func (x *CreateSegmentResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateSegmentResponse.ProtoReflect.Descriptor instead. -func (*CreateSegmentResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{9} -} - -type DeleteSegmentRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Collection string `protobuf:"bytes,2,opt,name=collection,proto3" json:"collection,omitempty"` -} - -func (x *DeleteSegmentRequest) Reset() { - *x = DeleteSegmentRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteSegmentRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteSegmentRequest) ProtoMessage() {} - -func (x *DeleteSegmentRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteSegmentRequest.ProtoReflect.Descriptor instead. -func (*DeleteSegmentRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{10} -} - -func (x *DeleteSegmentRequest) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *DeleteSegmentRequest) GetCollection() string { - if x != nil { - return x.Collection - } - return "" -} - -type DeleteSegmentResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DeleteSegmentResponse) Reset() { - *x = DeleteSegmentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteSegmentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteSegmentResponse) ProtoMessage() {} - -func (x *DeleteSegmentResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteSegmentResponse.ProtoReflect.Descriptor instead. -func (*DeleteSegmentResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{11} -} - -type GetSegmentsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id *string `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"` - Type *string `protobuf:"bytes,2,opt,name=type,proto3,oneof" json:"type,omitempty"` - Scope *SegmentScope `protobuf:"varint,3,opt,name=scope,proto3,enum=chroma.SegmentScope,oneof" json:"scope,omitempty"` - Collection string `protobuf:"bytes,4,opt,name=collection,proto3" json:"collection,omitempty"` // Collection ID -} - -func (x *GetSegmentsRequest) Reset() { - *x = GetSegmentsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetSegmentsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetSegmentsRequest) ProtoMessage() {} - -func (x *GetSegmentsRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetSegmentsRequest.ProtoReflect.Descriptor instead. -func (*GetSegmentsRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{12} -} - -func (x *GetSegmentsRequest) GetId() string { - if x != nil && x.Id != nil { - return *x.Id - } - return "" -} - -func (x *GetSegmentsRequest) GetType() string { - if x != nil && x.Type != nil { - return *x.Type - } - return "" -} - -func (x *GetSegmentsRequest) GetScope() SegmentScope { - if x != nil && x.Scope != nil { - return *x.Scope - } - return SegmentScope_VECTOR -} - -func (x *GetSegmentsRequest) GetCollection() string { - if x != nil { - return x.Collection - } - return "" -} - -type GetSegmentsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Segments []*Segment `protobuf:"bytes,1,rep,name=segments,proto3" json:"segments,omitempty"` -} - -func (x *GetSegmentsResponse) Reset() { - *x = GetSegmentsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetSegmentsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetSegmentsResponse) ProtoMessage() {} - -func (x *GetSegmentsResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetSegmentsResponse.ProtoReflect.Descriptor instead. -func (*GetSegmentsResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{13} -} - -func (x *GetSegmentsResponse) GetSegments() []*Segment { - if x != nil { - return x.Segments - } - return nil -} - -type UpdateSegmentRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Collection string `protobuf:"bytes,4,opt,name=collection,proto3" json:"collection,omitempty"` - // Types that are assignable to MetadataUpdate: - // - // *UpdateSegmentRequest_Metadata - // *UpdateSegmentRequest_ResetMetadata - MetadataUpdate isUpdateSegmentRequest_MetadataUpdate `protobuf_oneof:"metadata_update"` -} - -func (x *UpdateSegmentRequest) Reset() { - *x = UpdateSegmentRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateSegmentRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateSegmentRequest) ProtoMessage() {} - -func (x *UpdateSegmentRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateSegmentRequest.ProtoReflect.Descriptor instead. -func (*UpdateSegmentRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{14} -} - -func (x *UpdateSegmentRequest) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *UpdateSegmentRequest) GetCollection() string { - if x != nil { - return x.Collection - } - return "" -} - -func (m *UpdateSegmentRequest) GetMetadataUpdate() isUpdateSegmentRequest_MetadataUpdate { - if m != nil { - return m.MetadataUpdate - } - return nil -} - -func (x *UpdateSegmentRequest) GetMetadata() *UpdateMetadata { - if x, ok := x.GetMetadataUpdate().(*UpdateSegmentRequest_Metadata); ok { - return x.Metadata - } - return nil -} - -func (x *UpdateSegmentRequest) GetResetMetadata() bool { - if x, ok := x.GetMetadataUpdate().(*UpdateSegmentRequest_ResetMetadata); ok { - return x.ResetMetadata - } - return false -} - -type isUpdateSegmentRequest_MetadataUpdate interface { - isUpdateSegmentRequest_MetadataUpdate() -} - -type UpdateSegmentRequest_Metadata struct { - Metadata *UpdateMetadata `protobuf:"bytes,6,opt,name=metadata,proto3,oneof"` -} - -type UpdateSegmentRequest_ResetMetadata struct { - ResetMetadata bool `protobuf:"varint,7,opt,name=reset_metadata,json=resetMetadata,proto3,oneof"` -} - -func (*UpdateSegmentRequest_Metadata) isUpdateSegmentRequest_MetadataUpdate() {} - -func (*UpdateSegmentRequest_ResetMetadata) isUpdateSegmentRequest_MetadataUpdate() {} - -type UpdateSegmentResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *UpdateSegmentResponse) Reset() { - *x = UpdateSegmentResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateSegmentResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateSegmentResponse) ProtoMessage() {} - -func (x *UpdateSegmentResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateSegmentResponse.ProtoReflect.Descriptor instead. -func (*UpdateSegmentResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{15} -} - -type CreateCollectionRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - ConfigurationJsonStr string `protobuf:"bytes,3,opt,name=configuration_json_str,json=configurationJsonStr,proto3" json:"configuration_json_str,omitempty"` - Metadata *UpdateMetadata `protobuf:"bytes,4,opt,name=metadata,proto3,oneof" json:"metadata,omitempty"` - Dimension *int32 `protobuf:"varint,5,opt,name=dimension,proto3,oneof" json:"dimension,omitempty"` - GetOrCreate *bool `protobuf:"varint,6,opt,name=get_or_create,json=getOrCreate,proto3,oneof" json:"get_or_create,omitempty"` - Tenant string `protobuf:"bytes,7,opt,name=tenant,proto3" json:"tenant,omitempty"` - Database string `protobuf:"bytes,8,opt,name=database,proto3" json:"database,omitempty"` - // When segments are set, then the collection and segments will be created as - // a single atomic operation. - Segments []*Segment `protobuf:"bytes,9,rep,name=segments,proto3" json:"segments,omitempty"` // Optional. -} - -func (x *CreateCollectionRequest) Reset() { - *x = CreateCollectionRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateCollectionRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateCollectionRequest) ProtoMessage() {} - -func (x *CreateCollectionRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateCollectionRequest.ProtoReflect.Descriptor instead. -func (*CreateCollectionRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{16} -} - -func (x *CreateCollectionRequest) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *CreateCollectionRequest) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *CreateCollectionRequest) GetConfigurationJsonStr() string { - if x != nil { - return x.ConfigurationJsonStr - } - return "" -} - -func (x *CreateCollectionRequest) GetMetadata() *UpdateMetadata { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *CreateCollectionRequest) GetDimension() int32 { - if x != nil && x.Dimension != nil { - return *x.Dimension - } - return 0 -} - -func (x *CreateCollectionRequest) GetGetOrCreate() bool { - if x != nil && x.GetOrCreate != nil { - return *x.GetOrCreate - } - return false -} - -func (x *CreateCollectionRequest) GetTenant() string { - if x != nil { - return x.Tenant - } - return "" -} - -func (x *CreateCollectionRequest) GetDatabase() string { - if x != nil { - return x.Database - } - return "" -} - -func (x *CreateCollectionRequest) GetSegments() []*Segment { - if x != nil { - return x.Segments - } - return nil -} - -type CreateCollectionResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Collection *Collection `protobuf:"bytes,1,opt,name=collection,proto3" json:"collection,omitempty"` - Created bool `protobuf:"varint,2,opt,name=created,proto3" json:"created,omitempty"` -} - -func (x *CreateCollectionResponse) Reset() { - *x = CreateCollectionResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateCollectionResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateCollectionResponse) ProtoMessage() {} - -func (x *CreateCollectionResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateCollectionResponse.ProtoReflect.Descriptor instead. -func (*CreateCollectionResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{17} -} - -func (x *CreateCollectionResponse) GetCollection() *Collection { - if x != nil { - return x.Collection - } - return nil -} - -func (x *CreateCollectionResponse) GetCreated() bool { - if x != nil { - return x.Created - } - return false -} - -type DeleteCollectionRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Tenant string `protobuf:"bytes,2,opt,name=tenant,proto3" json:"tenant,omitempty"` - Database string `protobuf:"bytes,3,opt,name=database,proto3" json:"database,omitempty"` - SegmentIds []string `protobuf:"bytes,4,rep,name=segment_ids,json=segmentIds,proto3" json:"segment_ids,omitempty"` -} - -func (x *DeleteCollectionRequest) Reset() { - *x = DeleteCollectionRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteCollectionRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteCollectionRequest) ProtoMessage() {} - -func (x *DeleteCollectionRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteCollectionRequest.ProtoReflect.Descriptor instead. -func (*DeleteCollectionRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{18} -} - -func (x *DeleteCollectionRequest) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *DeleteCollectionRequest) GetTenant() string { - if x != nil { - return x.Tenant - } - return "" -} - -func (x *DeleteCollectionRequest) GetDatabase() string { - if x != nil { - return x.Database - } - return "" -} - -func (x *DeleteCollectionRequest) GetSegmentIds() []string { - if x != nil { - return x.SegmentIds - } - return nil -} - -type DeleteCollectionResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *DeleteCollectionResponse) Reset() { - *x = DeleteCollectionResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteCollectionResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteCollectionResponse) ProtoMessage() {} - -func (x *DeleteCollectionResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteCollectionResponse.ProtoReflect.Descriptor instead. -func (*DeleteCollectionResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{19} -} - -type GetCollectionsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id *string `protobuf:"bytes,1,opt,name=id,proto3,oneof" json:"id,omitempty"` - Name *string `protobuf:"bytes,2,opt,name=name,proto3,oneof" json:"name,omitempty"` - Tenant string `protobuf:"bytes,4,opt,name=tenant,proto3" json:"tenant,omitempty"` - Database string `protobuf:"bytes,5,opt,name=database,proto3" json:"database,omitempty"` - Limit *int32 `protobuf:"varint,6,opt,name=limit,proto3,oneof" json:"limit,omitempty"` - Offset *int32 `protobuf:"varint,7,opt,name=offset,proto3,oneof" json:"offset,omitempty"` -} - -func (x *GetCollectionsRequest) Reset() { - *x = GetCollectionsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetCollectionsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetCollectionsRequest) ProtoMessage() {} - -func (x *GetCollectionsRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[20] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetCollectionsRequest.ProtoReflect.Descriptor instead. -func (*GetCollectionsRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{20} -} - -func (x *GetCollectionsRequest) GetId() string { - if x != nil && x.Id != nil { - return *x.Id - } - return "" -} - -func (x *GetCollectionsRequest) GetName() string { - if x != nil && x.Name != nil { - return *x.Name - } - return "" -} - -func (x *GetCollectionsRequest) GetTenant() string { - if x != nil { - return x.Tenant - } - return "" -} - -func (x *GetCollectionsRequest) GetDatabase() string { - if x != nil { - return x.Database - } - return "" -} - -func (x *GetCollectionsRequest) GetLimit() int32 { - if x != nil && x.Limit != nil { - return *x.Limit - } - return 0 -} - -func (x *GetCollectionsRequest) GetOffset() int32 { - if x != nil && x.Offset != nil { - return *x.Offset - } - return 0 -} - -type GetCollectionsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Collections []*Collection `protobuf:"bytes,1,rep,name=collections,proto3" json:"collections,omitempty"` -} - -func (x *GetCollectionsResponse) Reset() { - *x = GetCollectionsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetCollectionsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetCollectionsResponse) ProtoMessage() {} - -func (x *GetCollectionsResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[21] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetCollectionsResponse.ProtoReflect.Descriptor instead. -func (*GetCollectionsResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{21} -} - -func (x *GetCollectionsResponse) GetCollections() []*Collection { - if x != nil { - return x.Collections - } - return nil -} - -type GetCollectionWithSegmentsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` -} - -func (x *GetCollectionWithSegmentsRequest) Reset() { - *x = GetCollectionWithSegmentsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetCollectionWithSegmentsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetCollectionWithSegmentsRequest) ProtoMessage() {} - -func (x *GetCollectionWithSegmentsRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetCollectionWithSegmentsRequest.ProtoReflect.Descriptor instead. -func (*GetCollectionWithSegmentsRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{22} -} - -func (x *GetCollectionWithSegmentsRequest) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -type GetCollectionWithSegmentsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Collection *Collection `protobuf:"bytes,1,opt,name=collection,proto3" json:"collection,omitempty"` - Segments []*Segment `protobuf:"bytes,2,rep,name=segments,proto3" json:"segments,omitempty"` -} - -func (x *GetCollectionWithSegmentsResponse) Reset() { - *x = GetCollectionWithSegmentsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetCollectionWithSegmentsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetCollectionWithSegmentsResponse) ProtoMessage() {} - -func (x *GetCollectionWithSegmentsResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetCollectionWithSegmentsResponse.ProtoReflect.Descriptor instead. -func (*GetCollectionWithSegmentsResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{23} -} - -func (x *GetCollectionWithSegmentsResponse) GetCollection() *Collection { - if x != nil { - return x.Collection - } - return nil -} - -func (x *GetCollectionWithSegmentsResponse) GetSegments() []*Segment { - if x != nil { - return x.Segments - } - return nil -} - -type CheckCollectionsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CollectionIds []string `protobuf:"bytes,1,rep,name=collection_ids,json=collectionIds,proto3" json:"collection_ids,omitempty"` -} - -func (x *CheckCollectionsRequest) Reset() { - *x = CheckCollectionsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CheckCollectionsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CheckCollectionsRequest) ProtoMessage() {} - -func (x *CheckCollectionsRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CheckCollectionsRequest.ProtoReflect.Descriptor instead. -func (*CheckCollectionsRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{24} -} - -func (x *CheckCollectionsRequest) GetCollectionIds() []string { - if x != nil { - return x.CollectionIds - } - return nil -} - -type CheckCollectionsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Deleted []bool `protobuf:"varint,1,rep,packed,name=deleted,proto3" json:"deleted,omitempty"` -} - -func (x *CheckCollectionsResponse) Reset() { - *x = CheckCollectionsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CheckCollectionsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CheckCollectionsResponse) ProtoMessage() {} - -func (x *CheckCollectionsResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CheckCollectionsResponse.ProtoReflect.Descriptor instead. -func (*CheckCollectionsResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{25} -} - -func (x *CheckCollectionsResponse) GetDeleted() []bool { - if x != nil { - return x.Deleted - } - return nil -} - -type UpdateCollectionRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Name *string `protobuf:"bytes,3,opt,name=name,proto3,oneof" json:"name,omitempty"` - Dimension *int32 `protobuf:"varint,4,opt,name=dimension,proto3,oneof" json:"dimension,omitempty"` - // Types that are assignable to MetadataUpdate: - // - // *UpdateCollectionRequest_Metadata - // *UpdateCollectionRequest_ResetMetadata - MetadataUpdate isUpdateCollectionRequest_MetadataUpdate `protobuf_oneof:"metadata_update"` -} - -func (x *UpdateCollectionRequest) Reset() { - *x = UpdateCollectionRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateCollectionRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateCollectionRequest) ProtoMessage() {} - -func (x *UpdateCollectionRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[26] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateCollectionRequest.ProtoReflect.Descriptor instead. -func (*UpdateCollectionRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{26} -} - -func (x *UpdateCollectionRequest) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *UpdateCollectionRequest) GetName() string { - if x != nil && x.Name != nil { - return *x.Name - } - return "" -} - -func (x *UpdateCollectionRequest) GetDimension() int32 { - if x != nil && x.Dimension != nil { - return *x.Dimension - } - return 0 -} - -func (m *UpdateCollectionRequest) GetMetadataUpdate() isUpdateCollectionRequest_MetadataUpdate { - if m != nil { - return m.MetadataUpdate - } - return nil -} - -func (x *UpdateCollectionRequest) GetMetadata() *UpdateMetadata { - if x, ok := x.GetMetadataUpdate().(*UpdateCollectionRequest_Metadata); ok { - return x.Metadata - } - return nil -} - -func (x *UpdateCollectionRequest) GetResetMetadata() bool { - if x, ok := x.GetMetadataUpdate().(*UpdateCollectionRequest_ResetMetadata); ok { - return x.ResetMetadata - } - return false -} - -type isUpdateCollectionRequest_MetadataUpdate interface { - isUpdateCollectionRequest_MetadataUpdate() -} - -type UpdateCollectionRequest_Metadata struct { - Metadata *UpdateMetadata `protobuf:"bytes,5,opt,name=metadata,proto3,oneof"` -} - -type UpdateCollectionRequest_ResetMetadata struct { - ResetMetadata bool `protobuf:"varint,6,opt,name=reset_metadata,json=resetMetadata,proto3,oneof"` -} - -func (*UpdateCollectionRequest_Metadata) isUpdateCollectionRequest_MetadataUpdate() {} - -func (*UpdateCollectionRequest_ResetMetadata) isUpdateCollectionRequest_MetadataUpdate() {} - -type UpdateCollectionResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *UpdateCollectionResponse) Reset() { - *x = UpdateCollectionResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateCollectionResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateCollectionResponse) ProtoMessage() {} - -func (x *UpdateCollectionResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[27] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateCollectionResponse.ProtoReflect.Descriptor instead. -func (*UpdateCollectionResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{27} -} - -type ResetStateResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *ResetStateResponse) Reset() { - *x = ResetStateResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ResetStateResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ResetStateResponse) ProtoMessage() {} - -func (x *ResetStateResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[28] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ResetStateResponse.ProtoReflect.Descriptor instead. -func (*ResetStateResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{28} -} - -type GetLastCompactionTimeForTenantRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TenantId []string `protobuf:"bytes,1,rep,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` -} - -func (x *GetLastCompactionTimeForTenantRequest) Reset() { - *x = GetLastCompactionTimeForTenantRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetLastCompactionTimeForTenantRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetLastCompactionTimeForTenantRequest) ProtoMessage() {} - -func (x *GetLastCompactionTimeForTenantRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[29] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetLastCompactionTimeForTenantRequest.ProtoReflect.Descriptor instead. -func (*GetLastCompactionTimeForTenantRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{29} -} - -func (x *GetLastCompactionTimeForTenantRequest) GetTenantId() []string { - if x != nil { - return x.TenantId - } - return nil -} - -type TenantLastCompactionTime struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TenantId string `protobuf:"bytes,1,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` - LastCompactionTime int64 `protobuf:"varint,2,opt,name=last_compaction_time,json=lastCompactionTime,proto3" json:"last_compaction_time,omitempty"` -} - -func (x *TenantLastCompactionTime) Reset() { - *x = TenantLastCompactionTime{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *TenantLastCompactionTime) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*TenantLastCompactionTime) ProtoMessage() {} - -func (x *TenantLastCompactionTime) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[30] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use TenantLastCompactionTime.ProtoReflect.Descriptor instead. -func (*TenantLastCompactionTime) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{30} -} - -func (x *TenantLastCompactionTime) GetTenantId() string { - if x != nil { - return x.TenantId - } - return "" -} - -func (x *TenantLastCompactionTime) GetLastCompactionTime() int64 { - if x != nil { - return x.LastCompactionTime - } - return 0 -} - -type GetLastCompactionTimeForTenantResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TenantLastCompactionTime []*TenantLastCompactionTime `protobuf:"bytes,1,rep,name=tenant_last_compaction_time,json=tenantLastCompactionTime,proto3" json:"tenant_last_compaction_time,omitempty"` -} - -func (x *GetLastCompactionTimeForTenantResponse) Reset() { - *x = GetLastCompactionTimeForTenantResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetLastCompactionTimeForTenantResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetLastCompactionTimeForTenantResponse) ProtoMessage() {} - -func (x *GetLastCompactionTimeForTenantResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[31] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetLastCompactionTimeForTenantResponse.ProtoReflect.Descriptor instead. -func (*GetLastCompactionTimeForTenantResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{31} -} - -func (x *GetLastCompactionTimeForTenantResponse) GetTenantLastCompactionTime() []*TenantLastCompactionTime { - if x != nil { - return x.TenantLastCompactionTime - } - return nil -} - -type SetLastCompactionTimeForTenantRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TenantLastCompactionTime *TenantLastCompactionTime `protobuf:"bytes,1,opt,name=tenant_last_compaction_time,json=tenantLastCompactionTime,proto3" json:"tenant_last_compaction_time,omitempty"` -} - -func (x *SetLastCompactionTimeForTenantRequest) Reset() { - *x = SetLastCompactionTimeForTenantRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetLastCompactionTimeForTenantRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetLastCompactionTimeForTenantRequest) ProtoMessage() {} - -func (x *SetLastCompactionTimeForTenantRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[32] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SetLastCompactionTimeForTenantRequest.ProtoReflect.Descriptor instead. -func (*SetLastCompactionTimeForTenantRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{32} -} - -func (x *SetLastCompactionTimeForTenantRequest) GetTenantLastCompactionTime() *TenantLastCompactionTime { - if x != nil { - return x.TenantLastCompactionTime - } - return nil -} - -type FlushSegmentCompactionInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SegmentId string `protobuf:"bytes,1,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"` - FilePaths map[string]*FilePaths `protobuf:"bytes,2,rep,name=file_paths,json=filePaths,proto3" json:"file_paths,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` -} - -func (x *FlushSegmentCompactionInfo) Reset() { - *x = FlushSegmentCompactionInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FlushSegmentCompactionInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FlushSegmentCompactionInfo) ProtoMessage() {} - -func (x *FlushSegmentCompactionInfo) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[33] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FlushSegmentCompactionInfo.ProtoReflect.Descriptor instead. -func (*FlushSegmentCompactionInfo) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{33} -} - -func (x *FlushSegmentCompactionInfo) GetSegmentId() string { - if x != nil { - return x.SegmentId - } - return "" -} - -func (x *FlushSegmentCompactionInfo) GetFilePaths() map[string]*FilePaths { - if x != nil { - return x.FilePaths - } - return nil -} - -type FlushCollectionCompactionRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - TenantId string `protobuf:"bytes,1,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"` - CollectionId string `protobuf:"bytes,2,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` - LogPosition int64 `protobuf:"varint,3,opt,name=log_position,json=logPosition,proto3" json:"log_position,omitempty"` - CollectionVersion int32 `protobuf:"varint,4,opt,name=collection_version,json=collectionVersion,proto3" json:"collection_version,omitempty"` - SegmentCompactionInfo []*FlushSegmentCompactionInfo `protobuf:"bytes,5,rep,name=segment_compaction_info,json=segmentCompactionInfo,proto3" json:"segment_compaction_info,omitempty"` -} - -func (x *FlushCollectionCompactionRequest) Reset() { - *x = FlushCollectionCompactionRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FlushCollectionCompactionRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FlushCollectionCompactionRequest) ProtoMessage() {} - -func (x *FlushCollectionCompactionRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[34] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FlushCollectionCompactionRequest.ProtoReflect.Descriptor instead. -func (*FlushCollectionCompactionRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{34} -} - -func (x *FlushCollectionCompactionRequest) GetTenantId() string { - if x != nil { - return x.TenantId - } - return "" -} - -func (x *FlushCollectionCompactionRequest) GetCollectionId() string { - if x != nil { - return x.CollectionId - } - return "" -} - -func (x *FlushCollectionCompactionRequest) GetLogPosition() int64 { - if x != nil { - return x.LogPosition - } - return 0 -} - -func (x *FlushCollectionCompactionRequest) GetCollectionVersion() int32 { - if x != nil { - return x.CollectionVersion - } - return 0 -} - -func (x *FlushCollectionCompactionRequest) GetSegmentCompactionInfo() []*FlushSegmentCompactionInfo { - if x != nil { - return x.SegmentCompactionInfo - } - return nil -} - -type FlushCollectionCompactionResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CollectionId string `protobuf:"bytes,1,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` - CollectionVersion int32 `protobuf:"varint,2,opt,name=collection_version,json=collectionVersion,proto3" json:"collection_version,omitempty"` - LastCompactionTime int64 `protobuf:"varint,3,opt,name=last_compaction_time,json=lastCompactionTime,proto3" json:"last_compaction_time,omitempty"` -} - -func (x *FlushCollectionCompactionResponse) Reset() { - *x = FlushCollectionCompactionResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *FlushCollectionCompactionResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*FlushCollectionCompactionResponse) ProtoMessage() {} - -func (x *FlushCollectionCompactionResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_coordinator_proto_msgTypes[35] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use FlushCollectionCompactionResponse.ProtoReflect.Descriptor instead. -func (*FlushCollectionCompactionResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_coordinator_proto_rawDescGZIP(), []int{35} -} - -func (x *FlushCollectionCompactionResponse) GetCollectionId() string { - if x != nil { - return x.CollectionId - } - return "" -} - -func (x *FlushCollectionCompactionResponse) GetCollectionVersion() int32 { - if x != nil { - return x.CollectionVersion - } - return 0 -} - -func (x *FlushCollectionCompactionResponse) GetLastCompactionTime() int64 { - if x != nil { - return x.LastCompactionTime - } - return 0 -} - -var File_chromadb_proto_coordinator_proto protoreflect.FileDescriptor - -var file_chromadb_proto_coordinator_proto_rawDesc = []byte{ - 0x0a, 0x20, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2f, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x12, 0x06, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x1a, 0x1b, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, - 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x53, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, - 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x22, 0x26, 0x0a, 0x16, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x22, 0x40, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, - 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, - 0x61, 0x6e, 0x74, 0x22, 0x51, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, - 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x08, 0x64, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x08, - 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x29, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x22, 0x24, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x26, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x54, 0x65, - 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, - 0x49, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x54, 0x65, - 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4a, 0x04, 0x08, 0x02, - 0x10, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x41, 0x0a, 0x14, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x29, 0x0a, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x65, 0x67, - 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x25, 0x0a, - 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x22, 0x46, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, - 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, - 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x25, 0x0a, 0x15, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x22, 0xad, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01, 0x01, 0x12, - 0x17, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, - 0x04, 0x74, 0x79, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x2f, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x70, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, - 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x48, 0x02, 0x52, - 0x05, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x88, 0x01, 0x01, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, - 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, - 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x73, 0x63, - 0x6f, 0x70, 0x65, 0x22, 0x50, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x73, 0x65, - 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, - 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xb8, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, - 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, - 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x6d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0d, - 0x72, 0x65, 0x73, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x11, 0x0a, - 0x0f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x22, 0x25, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x86, 0x03, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x73, 0x74, - 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4a, 0x73, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x12, 0x37, 0x0a, - 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x88, 0x01, 0x01, 0x12, 0x21, 0x0a, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, - 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x48, 0x01, 0x52, 0x09, 0x64, 0x69, 0x6d, - 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x27, 0x0a, 0x0d, 0x67, 0x65, 0x74, - 0x5f, 0x6f, 0x72, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, - 0x48, 0x02, 0x52, 0x0b, 0x67, 0x65, 0x74, 0x4f, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x88, - 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, - 0x61, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x10, - 0x0a, 0x0e, 0x5f, 0x67, 0x65, 0x74, 0x5f, 0x6f, 0x72, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x22, 0x76, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x0a, - 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x12, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x7e, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x67, 0x6d, 0x65, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, - 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x73, 0x22, 0x28, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x22, 0xd6, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x13, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x02, 0x69, 0x64, 0x88, 0x01, - 0x01, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, - 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x65, - 0x6e, 0x61, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x65, 0x6e, 0x61, - 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x19, - 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x48, 0x02, 0x52, - 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x88, 0x01, 0x01, 0x12, 0x1b, 0x0a, 0x06, 0x6f, 0x66, 0x66, - 0x73, 0x65, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x48, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, - 0x73, 0x65, 0x74, 0x88, 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x69, 0x64, 0x42, 0x07, 0x0a, - 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, - 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x5c, 0x0a, 0x16, 0x47, - 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x68, 0x72, - 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, - 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4a, 0x04, 0x08, 0x02, 0x10, - 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x32, 0x0a, 0x20, 0x47, 0x65, 0x74, - 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x53, 0x65, - 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, - 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x84, 0x01, - 0x0a, 0x21, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x57, - 0x69, 0x74, 0x68, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x0a, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, - 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x63, 0x6f, 0x6c, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, 0x65, 0x67, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x22, 0x40, 0x0a, 0x17, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6f, 0x6c, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, - 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x22, 0x34, 0x0a, 0x18, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, - 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0xee, 0x01, 0x0a, - 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x88, 0x01, - 0x01, 0x12, 0x21, 0x0a, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x05, 0x48, 0x02, 0x52, 0x09, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, - 0x6e, 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, - 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x27, 0x0a, 0x0e, 0x72, 0x65, - 0x73, 0x65, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x08, 0x48, 0x00, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x65, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x42, 0x11, 0x0a, 0x0f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42, - 0x0c, 0x0a, 0x0a, 0x5f, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x28, 0x0a, - 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x22, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x65, 0x74, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4a, 0x04, 0x08, - 0x01, 0x10, 0x02, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x44, 0x0a, 0x25, 0x47, - 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, - 0x64, 0x22, 0x69, 0x0a, 0x18, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, - 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, - 0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, - 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, - 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x89, 0x01, 0x0a, - 0x26, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x1b, 0x74, 0x65, 0x6e, 0x61, 0x6e, - 0x74, 0x5f, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x73, 0x74, - 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x18, - 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x88, 0x01, 0x0a, 0x25, 0x53, 0x65, 0x74, - 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, - 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x5f, 0x0a, 0x1b, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x6c, 0x61, 0x73, - 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, - 0x2e, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x18, 0x74, 0x65, 0x6e, 0x61, 0x6e, - 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, - 0x69, 0x6d, 0x65, 0x22, 0xde, 0x01, 0x0a, 0x1a, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x53, 0x65, 0x67, - 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x50, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, - 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x46, - 0x6c, 0x75, 0x73, 0x68, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, - 0x74, 0x68, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, - 0x74, 0x68, 0x73, 0x1a, 0x4f, 0x0a, 0x0e, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, - 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x22, 0x92, 0x02, 0x0a, 0x20, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x6f, - 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x6e, - 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, - 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, - 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6c, - 0x6f, 0x67, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0b, 0x6c, 0x6f, 0x67, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2d, - 0x0a, 0x12, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x63, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, - 0x17, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x53, 0x65, 0x67, - 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x15, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xa9, 0x01, 0x0a, 0x21, 0x46, 0x6c, - 0x75, 0x73, 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, - 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x11, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x65, 0x72, 0x73, - 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x32, 0xc1, 0x0c, 0x0a, 0x05, 0x53, 0x79, 0x73, 0x44, 0x42, 0x12, - 0x51, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x12, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x1e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x12, 0x1a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x61, - 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, - 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, - 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0c, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x1b, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x09, 0x47, 0x65, 0x74, - 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x18, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, - 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x19, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x6e, - 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, - 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, - 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, - 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, - 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, 0x0a, - 0x0b, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x1a, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, - 0x61, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, - 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x2e, 0x63, 0x68, - 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x57, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x0e, 0x47, 0x65, 0x74, - 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1d, 0x2e, 0x63, 0x68, - 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x63, 0x68, 0x72, - 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x72, 0x0a, 0x19, - 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x69, 0x74, - 0x68, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x28, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x57, 0x69, 0x74, 0x68, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, - 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x57, 0x69, 0x74, 0x68, 0x53, 0x65, - 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x57, 0x0a, 0x10, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x10, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x2e, - 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, - 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0a, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, - 0x61, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x81, 0x01, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x4c, 0x61, - 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, - 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, - 0x61, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x69, 0x0a, 0x1e, 0x53, 0x65, - 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, - 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x2d, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x53, 0x65, 0x74, 0x4c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, - 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x46, 0x6f, 0x72, 0x54, 0x65, - 0x6e, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, - 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x72, 0x0a, 0x19, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x6f, - 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x28, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x46, 0x6c, 0x75, 0x73, - 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x63, - 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x46, 0x6c, 0x75, 0x73, 0x68, 0x43, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x3a, 0x5a, 0x38, 0x67, 0x69, 0x74, - 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2d, 0x63, - 0x6f, 0x72, 0x65, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2f, 0x67, 0x6f, 0x2f, 0x70, 0x6b, - 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, - 0x74, 0x6f, 0x72, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_chromadb_proto_coordinator_proto_rawDescOnce sync.Once - file_chromadb_proto_coordinator_proto_rawDescData = file_chromadb_proto_coordinator_proto_rawDesc -) - -func file_chromadb_proto_coordinator_proto_rawDescGZIP() []byte { - file_chromadb_proto_coordinator_proto_rawDescOnce.Do(func() { - file_chromadb_proto_coordinator_proto_rawDescData = protoimpl.X.CompressGZIP(file_chromadb_proto_coordinator_proto_rawDescData) - }) - return file_chromadb_proto_coordinator_proto_rawDescData -} - -var file_chromadb_proto_coordinator_proto_msgTypes = make([]protoimpl.MessageInfo, 37) -var file_chromadb_proto_coordinator_proto_goTypes = []any{ - (*CreateDatabaseRequest)(nil), // 0: chroma.CreateDatabaseRequest - (*CreateDatabaseResponse)(nil), // 1: chroma.CreateDatabaseResponse - (*GetDatabaseRequest)(nil), // 2: chroma.GetDatabaseRequest - (*GetDatabaseResponse)(nil), // 3: chroma.GetDatabaseResponse - (*CreateTenantRequest)(nil), // 4: chroma.CreateTenantRequest - (*CreateTenantResponse)(nil), // 5: chroma.CreateTenantResponse - (*GetTenantRequest)(nil), // 6: chroma.GetTenantRequest - (*GetTenantResponse)(nil), // 7: chroma.GetTenantResponse - (*CreateSegmentRequest)(nil), // 8: chroma.CreateSegmentRequest - (*CreateSegmentResponse)(nil), // 9: chroma.CreateSegmentResponse - (*DeleteSegmentRequest)(nil), // 10: chroma.DeleteSegmentRequest - (*DeleteSegmentResponse)(nil), // 11: chroma.DeleteSegmentResponse - (*GetSegmentsRequest)(nil), // 12: chroma.GetSegmentsRequest - (*GetSegmentsResponse)(nil), // 13: chroma.GetSegmentsResponse - (*UpdateSegmentRequest)(nil), // 14: chroma.UpdateSegmentRequest - (*UpdateSegmentResponse)(nil), // 15: chroma.UpdateSegmentResponse - (*CreateCollectionRequest)(nil), // 16: chroma.CreateCollectionRequest - (*CreateCollectionResponse)(nil), // 17: chroma.CreateCollectionResponse - (*DeleteCollectionRequest)(nil), // 18: chroma.DeleteCollectionRequest - (*DeleteCollectionResponse)(nil), // 19: chroma.DeleteCollectionResponse - (*GetCollectionsRequest)(nil), // 20: chroma.GetCollectionsRequest - (*GetCollectionsResponse)(nil), // 21: chroma.GetCollectionsResponse - (*GetCollectionWithSegmentsRequest)(nil), // 22: chroma.GetCollectionWithSegmentsRequest - (*GetCollectionWithSegmentsResponse)(nil), // 23: chroma.GetCollectionWithSegmentsResponse - (*CheckCollectionsRequest)(nil), // 24: chroma.CheckCollectionsRequest - (*CheckCollectionsResponse)(nil), // 25: chroma.CheckCollectionsResponse - (*UpdateCollectionRequest)(nil), // 26: chroma.UpdateCollectionRequest - (*UpdateCollectionResponse)(nil), // 27: chroma.UpdateCollectionResponse - (*ResetStateResponse)(nil), // 28: chroma.ResetStateResponse - (*GetLastCompactionTimeForTenantRequest)(nil), // 29: chroma.GetLastCompactionTimeForTenantRequest - (*TenantLastCompactionTime)(nil), // 30: chroma.TenantLastCompactionTime - (*GetLastCompactionTimeForTenantResponse)(nil), // 31: chroma.GetLastCompactionTimeForTenantResponse - (*SetLastCompactionTimeForTenantRequest)(nil), // 32: chroma.SetLastCompactionTimeForTenantRequest - (*FlushSegmentCompactionInfo)(nil), // 33: chroma.FlushSegmentCompactionInfo - (*FlushCollectionCompactionRequest)(nil), // 34: chroma.FlushCollectionCompactionRequest - (*FlushCollectionCompactionResponse)(nil), // 35: chroma.FlushCollectionCompactionResponse - nil, // 36: chroma.FlushSegmentCompactionInfo.FilePathsEntry - (*Database)(nil), // 37: chroma.Database - (*Tenant)(nil), // 38: chroma.Tenant - (*Segment)(nil), // 39: chroma.Segment - (SegmentScope)(0), // 40: chroma.SegmentScope - (*UpdateMetadata)(nil), // 41: chroma.UpdateMetadata - (*Collection)(nil), // 42: chroma.Collection - (*FilePaths)(nil), // 43: chroma.FilePaths - (*emptypb.Empty)(nil), // 44: google.protobuf.Empty -} -var file_chromadb_proto_coordinator_proto_depIdxs = []int32{ - 37, // 0: chroma.GetDatabaseResponse.database:type_name -> chroma.Database - 38, // 1: chroma.GetTenantResponse.tenant:type_name -> chroma.Tenant - 39, // 2: chroma.CreateSegmentRequest.segment:type_name -> chroma.Segment - 40, // 3: chroma.GetSegmentsRequest.scope:type_name -> chroma.SegmentScope - 39, // 4: chroma.GetSegmentsResponse.segments:type_name -> chroma.Segment - 41, // 5: chroma.UpdateSegmentRequest.metadata:type_name -> chroma.UpdateMetadata - 41, // 6: chroma.CreateCollectionRequest.metadata:type_name -> chroma.UpdateMetadata - 39, // 7: chroma.CreateCollectionRequest.segments:type_name -> chroma.Segment - 42, // 8: chroma.CreateCollectionResponse.collection:type_name -> chroma.Collection - 42, // 9: chroma.GetCollectionsResponse.collections:type_name -> chroma.Collection - 42, // 10: chroma.GetCollectionWithSegmentsResponse.collection:type_name -> chroma.Collection - 39, // 11: chroma.GetCollectionWithSegmentsResponse.segments:type_name -> chroma.Segment - 41, // 12: chroma.UpdateCollectionRequest.metadata:type_name -> chroma.UpdateMetadata - 30, // 13: chroma.GetLastCompactionTimeForTenantResponse.tenant_last_compaction_time:type_name -> chroma.TenantLastCompactionTime - 30, // 14: chroma.SetLastCompactionTimeForTenantRequest.tenant_last_compaction_time:type_name -> chroma.TenantLastCompactionTime - 36, // 15: chroma.FlushSegmentCompactionInfo.file_paths:type_name -> chroma.FlushSegmentCompactionInfo.FilePathsEntry - 33, // 16: chroma.FlushCollectionCompactionRequest.segment_compaction_info:type_name -> chroma.FlushSegmentCompactionInfo - 43, // 17: chroma.FlushSegmentCompactionInfo.FilePathsEntry.value:type_name -> chroma.FilePaths - 0, // 18: chroma.SysDB.CreateDatabase:input_type -> chroma.CreateDatabaseRequest - 2, // 19: chroma.SysDB.GetDatabase:input_type -> chroma.GetDatabaseRequest - 4, // 20: chroma.SysDB.CreateTenant:input_type -> chroma.CreateTenantRequest - 6, // 21: chroma.SysDB.GetTenant:input_type -> chroma.GetTenantRequest - 8, // 22: chroma.SysDB.CreateSegment:input_type -> chroma.CreateSegmentRequest - 10, // 23: chroma.SysDB.DeleteSegment:input_type -> chroma.DeleteSegmentRequest - 12, // 24: chroma.SysDB.GetSegments:input_type -> chroma.GetSegmentsRequest - 14, // 25: chroma.SysDB.UpdateSegment:input_type -> chroma.UpdateSegmentRequest - 16, // 26: chroma.SysDB.CreateCollection:input_type -> chroma.CreateCollectionRequest - 18, // 27: chroma.SysDB.DeleteCollection:input_type -> chroma.DeleteCollectionRequest - 20, // 28: chroma.SysDB.GetCollections:input_type -> chroma.GetCollectionsRequest - 22, // 29: chroma.SysDB.GetCollectionWithSegments:input_type -> chroma.GetCollectionWithSegmentsRequest - 24, // 30: chroma.SysDB.CheckCollections:input_type -> chroma.CheckCollectionsRequest - 26, // 31: chroma.SysDB.UpdateCollection:input_type -> chroma.UpdateCollectionRequest - 44, // 32: chroma.SysDB.ResetState:input_type -> google.protobuf.Empty - 29, // 33: chroma.SysDB.GetLastCompactionTimeForTenant:input_type -> chroma.GetLastCompactionTimeForTenantRequest - 32, // 34: chroma.SysDB.SetLastCompactionTimeForTenant:input_type -> chroma.SetLastCompactionTimeForTenantRequest - 34, // 35: chroma.SysDB.FlushCollectionCompaction:input_type -> chroma.FlushCollectionCompactionRequest - 1, // 36: chroma.SysDB.CreateDatabase:output_type -> chroma.CreateDatabaseResponse - 3, // 37: chroma.SysDB.GetDatabase:output_type -> chroma.GetDatabaseResponse - 5, // 38: chroma.SysDB.CreateTenant:output_type -> chroma.CreateTenantResponse - 7, // 39: chroma.SysDB.GetTenant:output_type -> chroma.GetTenantResponse - 9, // 40: chroma.SysDB.CreateSegment:output_type -> chroma.CreateSegmentResponse - 11, // 41: chroma.SysDB.DeleteSegment:output_type -> chroma.DeleteSegmentResponse - 13, // 42: chroma.SysDB.GetSegments:output_type -> chroma.GetSegmentsResponse - 15, // 43: chroma.SysDB.UpdateSegment:output_type -> chroma.UpdateSegmentResponse - 17, // 44: chroma.SysDB.CreateCollection:output_type -> chroma.CreateCollectionResponse - 19, // 45: chroma.SysDB.DeleteCollection:output_type -> chroma.DeleteCollectionResponse - 21, // 46: chroma.SysDB.GetCollections:output_type -> chroma.GetCollectionsResponse - 23, // 47: chroma.SysDB.GetCollectionWithSegments:output_type -> chroma.GetCollectionWithSegmentsResponse - 25, // 48: chroma.SysDB.CheckCollections:output_type -> chroma.CheckCollectionsResponse - 27, // 49: chroma.SysDB.UpdateCollection:output_type -> chroma.UpdateCollectionResponse - 28, // 50: chroma.SysDB.ResetState:output_type -> chroma.ResetStateResponse - 31, // 51: chroma.SysDB.GetLastCompactionTimeForTenant:output_type -> chroma.GetLastCompactionTimeForTenantResponse - 44, // 52: chroma.SysDB.SetLastCompactionTimeForTenant:output_type -> google.protobuf.Empty - 35, // 53: chroma.SysDB.FlushCollectionCompaction:output_type -> chroma.FlushCollectionCompactionResponse - 36, // [36:54] is the sub-list for method output_type - 18, // [18:36] is the sub-list for method input_type - 18, // [18:18] is the sub-list for extension type_name - 18, // [18:18] is the sub-list for extension extendee - 0, // [0:18] is the sub-list for field type_name -} - -func init() { file_chromadb_proto_coordinator_proto_init() } -func file_chromadb_proto_coordinator_proto_init() { - if File_chromadb_proto_coordinator_proto != nil { - return - } - file_chromadb_proto_chroma_proto_init() - if !protoimpl.UnsafeEnabled { - file_chromadb_proto_coordinator_proto_msgTypes[0].Exporter = func(v any, i int) any { - switch v := v.(*CreateDatabaseRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[1].Exporter = func(v any, i int) any { - switch v := v.(*CreateDatabaseResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[2].Exporter = func(v any, i int) any { - switch v := v.(*GetDatabaseRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[3].Exporter = func(v any, i int) any { - switch v := v.(*GetDatabaseResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[4].Exporter = func(v any, i int) any { - switch v := v.(*CreateTenantRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[5].Exporter = func(v any, i int) any { - switch v := v.(*CreateTenantResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[6].Exporter = func(v any, i int) any { - switch v := v.(*GetTenantRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[7].Exporter = func(v any, i int) any { - switch v := v.(*GetTenantResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[8].Exporter = func(v any, i int) any { - switch v := v.(*CreateSegmentRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[9].Exporter = func(v any, i int) any { - switch v := v.(*CreateSegmentResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[10].Exporter = func(v any, i int) any { - switch v := v.(*DeleteSegmentRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[11].Exporter = func(v any, i int) any { - switch v := v.(*DeleteSegmentResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[12].Exporter = func(v any, i int) any { - switch v := v.(*GetSegmentsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[13].Exporter = func(v any, i int) any { - switch v := v.(*GetSegmentsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[14].Exporter = func(v any, i int) any { - switch v := v.(*UpdateSegmentRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[15].Exporter = func(v any, i int) any { - switch v := v.(*UpdateSegmentResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[16].Exporter = func(v any, i int) any { - switch v := v.(*CreateCollectionRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[17].Exporter = func(v any, i int) any { - switch v := v.(*CreateCollectionResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[18].Exporter = func(v any, i int) any { - switch v := v.(*DeleteCollectionRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[19].Exporter = func(v any, i int) any { - switch v := v.(*DeleteCollectionResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[20].Exporter = func(v any, i int) any { - switch v := v.(*GetCollectionsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[21].Exporter = func(v any, i int) any { - switch v := v.(*GetCollectionsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[22].Exporter = func(v any, i int) any { - switch v := v.(*GetCollectionWithSegmentsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[23].Exporter = func(v any, i int) any { - switch v := v.(*GetCollectionWithSegmentsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[24].Exporter = func(v any, i int) any { - switch v := v.(*CheckCollectionsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[25].Exporter = func(v any, i int) any { - switch v := v.(*CheckCollectionsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[26].Exporter = func(v any, i int) any { - switch v := v.(*UpdateCollectionRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[27].Exporter = func(v any, i int) any { - switch v := v.(*UpdateCollectionResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[28].Exporter = func(v any, i int) any { - switch v := v.(*ResetStateResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[29].Exporter = func(v any, i int) any { - switch v := v.(*GetLastCompactionTimeForTenantRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[30].Exporter = func(v any, i int) any { - switch v := v.(*TenantLastCompactionTime); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[31].Exporter = func(v any, i int) any { - switch v := v.(*GetLastCompactionTimeForTenantResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[32].Exporter = func(v any, i int) any { - switch v := v.(*SetLastCompactionTimeForTenantRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[33].Exporter = func(v any, i int) any { - switch v := v.(*FlushSegmentCompactionInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[34].Exporter = func(v any, i int) any { - switch v := v.(*FlushCollectionCompactionRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_coordinator_proto_msgTypes[35].Exporter = func(v any, i int) any { - switch v := v.(*FlushCollectionCompactionResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - file_chromadb_proto_coordinator_proto_msgTypes[12].OneofWrappers = []any{} - file_chromadb_proto_coordinator_proto_msgTypes[14].OneofWrappers = []any{ - (*UpdateSegmentRequest_Metadata)(nil), - (*UpdateSegmentRequest_ResetMetadata)(nil), - } - file_chromadb_proto_coordinator_proto_msgTypes[16].OneofWrappers = []any{} - file_chromadb_proto_coordinator_proto_msgTypes[20].OneofWrappers = []any{} - file_chromadb_proto_coordinator_proto_msgTypes[26].OneofWrappers = []any{ - (*UpdateCollectionRequest_Metadata)(nil), - (*UpdateCollectionRequest_ResetMetadata)(nil), - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_chromadb_proto_coordinator_proto_rawDesc, - NumEnums: 0, - NumMessages: 37, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_chromadb_proto_coordinator_proto_goTypes, - DependencyIndexes: file_chromadb_proto_coordinator_proto_depIdxs, - MessageInfos: file_chromadb_proto_coordinator_proto_msgTypes, - }.Build() - File_chromadb_proto_coordinator_proto = out.File - file_chromadb_proto_coordinator_proto_rawDesc = nil - file_chromadb_proto_coordinator_proto_goTypes = nil - file_chromadb_proto_coordinator_proto_depIdxs = nil -} diff --git a/go/pkg/proto/coordinatorpb/coordinator_grpc.pb.go b/go/pkg/proto/coordinatorpb/coordinator_grpc.pb.go deleted file mode 100644 index 51a51a388fc..00000000000 --- a/go/pkg/proto/coordinatorpb/coordinator_grpc.pb.go +++ /dev/null @@ -1,768 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.5.1 -// - protoc v5.28.2 -// source: chromadb/proto/coordinator.proto - -package coordinatorpb - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" - emptypb "google.golang.org/protobuf/types/known/emptypb" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.64.0 or later. -const _ = grpc.SupportPackageIsVersion9 - -const ( - SysDB_CreateDatabase_FullMethodName = "/chroma.SysDB/CreateDatabase" - SysDB_GetDatabase_FullMethodName = "/chroma.SysDB/GetDatabase" - SysDB_CreateTenant_FullMethodName = "/chroma.SysDB/CreateTenant" - SysDB_GetTenant_FullMethodName = "/chroma.SysDB/GetTenant" - SysDB_CreateSegment_FullMethodName = "/chroma.SysDB/CreateSegment" - SysDB_DeleteSegment_FullMethodName = "/chroma.SysDB/DeleteSegment" - SysDB_GetSegments_FullMethodName = "/chroma.SysDB/GetSegments" - SysDB_UpdateSegment_FullMethodName = "/chroma.SysDB/UpdateSegment" - SysDB_CreateCollection_FullMethodName = "/chroma.SysDB/CreateCollection" - SysDB_DeleteCollection_FullMethodName = "/chroma.SysDB/DeleteCollection" - SysDB_GetCollections_FullMethodName = "/chroma.SysDB/GetCollections" - SysDB_GetCollectionWithSegments_FullMethodName = "/chroma.SysDB/GetCollectionWithSegments" - SysDB_CheckCollections_FullMethodName = "/chroma.SysDB/CheckCollections" - SysDB_UpdateCollection_FullMethodName = "/chroma.SysDB/UpdateCollection" - SysDB_ResetState_FullMethodName = "/chroma.SysDB/ResetState" - SysDB_GetLastCompactionTimeForTenant_FullMethodName = "/chroma.SysDB/GetLastCompactionTimeForTenant" - SysDB_SetLastCompactionTimeForTenant_FullMethodName = "/chroma.SysDB/SetLastCompactionTimeForTenant" - SysDB_FlushCollectionCompaction_FullMethodName = "/chroma.SysDB/FlushCollectionCompaction" -) - -// SysDBClient is the client API for SysDB service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type SysDBClient interface { - CreateDatabase(ctx context.Context, in *CreateDatabaseRequest, opts ...grpc.CallOption) (*CreateDatabaseResponse, error) - GetDatabase(ctx context.Context, in *GetDatabaseRequest, opts ...grpc.CallOption) (*GetDatabaseResponse, error) - CreateTenant(ctx context.Context, in *CreateTenantRequest, opts ...grpc.CallOption) (*CreateTenantResponse, error) - GetTenant(ctx context.Context, in *GetTenantRequest, opts ...grpc.CallOption) (*GetTenantResponse, error) - CreateSegment(ctx context.Context, in *CreateSegmentRequest, opts ...grpc.CallOption) (*CreateSegmentResponse, error) - DeleteSegment(ctx context.Context, in *DeleteSegmentRequest, opts ...grpc.CallOption) (*DeleteSegmentResponse, error) - GetSegments(ctx context.Context, in *GetSegmentsRequest, opts ...grpc.CallOption) (*GetSegmentsResponse, error) - UpdateSegment(ctx context.Context, in *UpdateSegmentRequest, opts ...grpc.CallOption) (*UpdateSegmentResponse, error) - CreateCollection(ctx context.Context, in *CreateCollectionRequest, opts ...grpc.CallOption) (*CreateCollectionResponse, error) - DeleteCollection(ctx context.Context, in *DeleteCollectionRequest, opts ...grpc.CallOption) (*DeleteCollectionResponse, error) - GetCollections(ctx context.Context, in *GetCollectionsRequest, opts ...grpc.CallOption) (*GetCollectionsResponse, error) - GetCollectionWithSegments(ctx context.Context, in *GetCollectionWithSegmentsRequest, opts ...grpc.CallOption) (*GetCollectionWithSegmentsResponse, error) - CheckCollections(ctx context.Context, in *CheckCollectionsRequest, opts ...grpc.CallOption) (*CheckCollectionsResponse, error) - UpdateCollection(ctx context.Context, in *UpdateCollectionRequest, opts ...grpc.CallOption) (*UpdateCollectionResponse, error) - ResetState(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ResetStateResponse, error) - GetLastCompactionTimeForTenant(ctx context.Context, in *GetLastCompactionTimeForTenantRequest, opts ...grpc.CallOption) (*GetLastCompactionTimeForTenantResponse, error) - SetLastCompactionTimeForTenant(ctx context.Context, in *SetLastCompactionTimeForTenantRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) - FlushCollectionCompaction(ctx context.Context, in *FlushCollectionCompactionRequest, opts ...grpc.CallOption) (*FlushCollectionCompactionResponse, error) -} - -type sysDBClient struct { - cc grpc.ClientConnInterface -} - -func NewSysDBClient(cc grpc.ClientConnInterface) SysDBClient { - return &sysDBClient{cc} -} - -func (c *sysDBClient) CreateDatabase(ctx context.Context, in *CreateDatabaseRequest, opts ...grpc.CallOption) (*CreateDatabaseResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(CreateDatabaseResponse) - err := c.cc.Invoke(ctx, SysDB_CreateDatabase_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) GetDatabase(ctx context.Context, in *GetDatabaseRequest, opts ...grpc.CallOption) (*GetDatabaseResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(GetDatabaseResponse) - err := c.cc.Invoke(ctx, SysDB_GetDatabase_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) CreateTenant(ctx context.Context, in *CreateTenantRequest, opts ...grpc.CallOption) (*CreateTenantResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(CreateTenantResponse) - err := c.cc.Invoke(ctx, SysDB_CreateTenant_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) GetTenant(ctx context.Context, in *GetTenantRequest, opts ...grpc.CallOption) (*GetTenantResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(GetTenantResponse) - err := c.cc.Invoke(ctx, SysDB_GetTenant_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) CreateSegment(ctx context.Context, in *CreateSegmentRequest, opts ...grpc.CallOption) (*CreateSegmentResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(CreateSegmentResponse) - err := c.cc.Invoke(ctx, SysDB_CreateSegment_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) DeleteSegment(ctx context.Context, in *DeleteSegmentRequest, opts ...grpc.CallOption) (*DeleteSegmentResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(DeleteSegmentResponse) - err := c.cc.Invoke(ctx, SysDB_DeleteSegment_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) GetSegments(ctx context.Context, in *GetSegmentsRequest, opts ...grpc.CallOption) (*GetSegmentsResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(GetSegmentsResponse) - err := c.cc.Invoke(ctx, SysDB_GetSegments_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) UpdateSegment(ctx context.Context, in *UpdateSegmentRequest, opts ...grpc.CallOption) (*UpdateSegmentResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(UpdateSegmentResponse) - err := c.cc.Invoke(ctx, SysDB_UpdateSegment_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) CreateCollection(ctx context.Context, in *CreateCollectionRequest, opts ...grpc.CallOption) (*CreateCollectionResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(CreateCollectionResponse) - err := c.cc.Invoke(ctx, SysDB_CreateCollection_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) DeleteCollection(ctx context.Context, in *DeleteCollectionRequest, opts ...grpc.CallOption) (*DeleteCollectionResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(DeleteCollectionResponse) - err := c.cc.Invoke(ctx, SysDB_DeleteCollection_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) GetCollections(ctx context.Context, in *GetCollectionsRequest, opts ...grpc.CallOption) (*GetCollectionsResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(GetCollectionsResponse) - err := c.cc.Invoke(ctx, SysDB_GetCollections_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) GetCollectionWithSegments(ctx context.Context, in *GetCollectionWithSegmentsRequest, opts ...grpc.CallOption) (*GetCollectionWithSegmentsResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(GetCollectionWithSegmentsResponse) - err := c.cc.Invoke(ctx, SysDB_GetCollectionWithSegments_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) CheckCollections(ctx context.Context, in *CheckCollectionsRequest, opts ...grpc.CallOption) (*CheckCollectionsResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(CheckCollectionsResponse) - err := c.cc.Invoke(ctx, SysDB_CheckCollections_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) UpdateCollection(ctx context.Context, in *UpdateCollectionRequest, opts ...grpc.CallOption) (*UpdateCollectionResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(UpdateCollectionResponse) - err := c.cc.Invoke(ctx, SysDB_UpdateCollection_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) ResetState(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ResetStateResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(ResetStateResponse) - err := c.cc.Invoke(ctx, SysDB_ResetState_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) GetLastCompactionTimeForTenant(ctx context.Context, in *GetLastCompactionTimeForTenantRequest, opts ...grpc.CallOption) (*GetLastCompactionTimeForTenantResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(GetLastCompactionTimeForTenantResponse) - err := c.cc.Invoke(ctx, SysDB_GetLastCompactionTimeForTenant_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) SetLastCompactionTimeForTenant(ctx context.Context, in *SetLastCompactionTimeForTenantRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(emptypb.Empty) - err := c.cc.Invoke(ctx, SysDB_SetLastCompactionTimeForTenant_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *sysDBClient) FlushCollectionCompaction(ctx context.Context, in *FlushCollectionCompactionRequest, opts ...grpc.CallOption) (*FlushCollectionCompactionResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(FlushCollectionCompactionResponse) - err := c.cc.Invoke(ctx, SysDB_FlushCollectionCompaction_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -// SysDBServer is the server API for SysDB service. -// All implementations must embed UnimplementedSysDBServer -// for forward compatibility. -type SysDBServer interface { - CreateDatabase(context.Context, *CreateDatabaseRequest) (*CreateDatabaseResponse, error) - GetDatabase(context.Context, *GetDatabaseRequest) (*GetDatabaseResponse, error) - CreateTenant(context.Context, *CreateTenantRequest) (*CreateTenantResponse, error) - GetTenant(context.Context, *GetTenantRequest) (*GetTenantResponse, error) - CreateSegment(context.Context, *CreateSegmentRequest) (*CreateSegmentResponse, error) - DeleteSegment(context.Context, *DeleteSegmentRequest) (*DeleteSegmentResponse, error) - GetSegments(context.Context, *GetSegmentsRequest) (*GetSegmentsResponse, error) - UpdateSegment(context.Context, *UpdateSegmentRequest) (*UpdateSegmentResponse, error) - CreateCollection(context.Context, *CreateCollectionRequest) (*CreateCollectionResponse, error) - DeleteCollection(context.Context, *DeleteCollectionRequest) (*DeleteCollectionResponse, error) - GetCollections(context.Context, *GetCollectionsRequest) (*GetCollectionsResponse, error) - GetCollectionWithSegments(context.Context, *GetCollectionWithSegmentsRequest) (*GetCollectionWithSegmentsResponse, error) - CheckCollections(context.Context, *CheckCollectionsRequest) (*CheckCollectionsResponse, error) - UpdateCollection(context.Context, *UpdateCollectionRequest) (*UpdateCollectionResponse, error) - ResetState(context.Context, *emptypb.Empty) (*ResetStateResponse, error) - GetLastCompactionTimeForTenant(context.Context, *GetLastCompactionTimeForTenantRequest) (*GetLastCompactionTimeForTenantResponse, error) - SetLastCompactionTimeForTenant(context.Context, *SetLastCompactionTimeForTenantRequest) (*emptypb.Empty, error) - FlushCollectionCompaction(context.Context, *FlushCollectionCompactionRequest) (*FlushCollectionCompactionResponse, error) - mustEmbedUnimplementedSysDBServer() -} - -// UnimplementedSysDBServer must be embedded to have -// forward compatible implementations. -// -// NOTE: this should be embedded by value instead of pointer to avoid a nil -// pointer dereference when methods are called. -type UnimplementedSysDBServer struct{} - -func (UnimplementedSysDBServer) CreateDatabase(context.Context, *CreateDatabaseRequest) (*CreateDatabaseResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method CreateDatabase not implemented") -} -func (UnimplementedSysDBServer) GetDatabase(context.Context, *GetDatabaseRequest) (*GetDatabaseResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetDatabase not implemented") -} -func (UnimplementedSysDBServer) CreateTenant(context.Context, *CreateTenantRequest) (*CreateTenantResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method CreateTenant not implemented") -} -func (UnimplementedSysDBServer) GetTenant(context.Context, *GetTenantRequest) (*GetTenantResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetTenant not implemented") -} -func (UnimplementedSysDBServer) CreateSegment(context.Context, *CreateSegmentRequest) (*CreateSegmentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method CreateSegment not implemented") -} -func (UnimplementedSysDBServer) DeleteSegment(context.Context, *DeleteSegmentRequest) (*DeleteSegmentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteSegment not implemented") -} -func (UnimplementedSysDBServer) GetSegments(context.Context, *GetSegmentsRequest) (*GetSegmentsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetSegments not implemented") -} -func (UnimplementedSysDBServer) UpdateSegment(context.Context, *UpdateSegmentRequest) (*UpdateSegmentResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method UpdateSegment not implemented") -} -func (UnimplementedSysDBServer) CreateCollection(context.Context, *CreateCollectionRequest) (*CreateCollectionResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method CreateCollection not implemented") -} -func (UnimplementedSysDBServer) DeleteCollection(context.Context, *DeleteCollectionRequest) (*DeleteCollectionResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteCollection not implemented") -} -func (UnimplementedSysDBServer) GetCollections(context.Context, *GetCollectionsRequest) (*GetCollectionsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetCollections not implemented") -} -func (UnimplementedSysDBServer) GetCollectionWithSegments(context.Context, *GetCollectionWithSegmentsRequest) (*GetCollectionWithSegmentsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetCollectionWithSegments not implemented") -} -func (UnimplementedSysDBServer) CheckCollections(context.Context, *CheckCollectionsRequest) (*CheckCollectionsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method CheckCollections not implemented") -} -func (UnimplementedSysDBServer) UpdateCollection(context.Context, *UpdateCollectionRequest) (*UpdateCollectionResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method UpdateCollection not implemented") -} -func (UnimplementedSysDBServer) ResetState(context.Context, *emptypb.Empty) (*ResetStateResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ResetState not implemented") -} -func (UnimplementedSysDBServer) GetLastCompactionTimeForTenant(context.Context, *GetLastCompactionTimeForTenantRequest) (*GetLastCompactionTimeForTenantResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetLastCompactionTimeForTenant not implemented") -} -func (UnimplementedSysDBServer) SetLastCompactionTimeForTenant(context.Context, *SetLastCompactionTimeForTenantRequest) (*emptypb.Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method SetLastCompactionTimeForTenant not implemented") -} -func (UnimplementedSysDBServer) FlushCollectionCompaction(context.Context, *FlushCollectionCompactionRequest) (*FlushCollectionCompactionResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method FlushCollectionCompaction not implemented") -} -func (UnimplementedSysDBServer) mustEmbedUnimplementedSysDBServer() {} -func (UnimplementedSysDBServer) testEmbeddedByValue() {} - -// UnsafeSysDBServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to SysDBServer will -// result in compilation errors. -type UnsafeSysDBServer interface { - mustEmbedUnimplementedSysDBServer() -} - -func RegisterSysDBServer(s grpc.ServiceRegistrar, srv SysDBServer) { - // If the following call pancis, it indicates UnimplementedSysDBServer was - // embedded by pointer and is nil. This will cause panics if an - // unimplemented method is ever invoked, so we test this at initialization - // time to prevent it from happening at runtime later due to I/O. - if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { - t.testEmbeddedByValue() - } - s.RegisterService(&SysDB_ServiceDesc, srv) -} - -func _SysDB_CreateDatabase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateDatabaseRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).CreateDatabase(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_CreateDatabase_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).CreateDatabase(ctx, req.(*CreateDatabaseRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_GetDatabase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetDatabaseRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).GetDatabase(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_GetDatabase_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).GetDatabase(ctx, req.(*GetDatabaseRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_CreateTenant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateTenantRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).CreateTenant(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_CreateTenant_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).CreateTenant(ctx, req.(*CreateTenantRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_GetTenant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetTenantRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).GetTenant(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_GetTenant_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).GetTenant(ctx, req.(*GetTenantRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_CreateSegment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateSegmentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).CreateSegment(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_CreateSegment_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).CreateSegment(ctx, req.(*CreateSegmentRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_DeleteSegment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteSegmentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).DeleteSegment(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_DeleteSegment_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).DeleteSegment(ctx, req.(*DeleteSegmentRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_GetSegments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetSegmentsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).GetSegments(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_GetSegments_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).GetSegments(ctx, req.(*GetSegmentsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_UpdateSegment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UpdateSegmentRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).UpdateSegment(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_UpdateSegment_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).UpdateSegment(ctx, req.(*UpdateSegmentRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_CreateCollection_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateCollectionRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).CreateCollection(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_CreateCollection_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).CreateCollection(ctx, req.(*CreateCollectionRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_DeleteCollection_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteCollectionRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).DeleteCollection(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_DeleteCollection_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).DeleteCollection(ctx, req.(*DeleteCollectionRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_GetCollections_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetCollectionsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).GetCollections(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_GetCollections_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).GetCollections(ctx, req.(*GetCollectionsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_GetCollectionWithSegments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetCollectionWithSegmentsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).GetCollectionWithSegments(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_GetCollectionWithSegments_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).GetCollectionWithSegments(ctx, req.(*GetCollectionWithSegmentsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_CheckCollections_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CheckCollectionsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).CheckCollections(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_CheckCollections_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).CheckCollections(ctx, req.(*CheckCollectionsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_UpdateCollection_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UpdateCollectionRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).UpdateCollection(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_UpdateCollection_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).UpdateCollection(ctx, req.(*UpdateCollectionRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_ResetState_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(emptypb.Empty) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).ResetState(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_ResetState_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).ResetState(ctx, req.(*emptypb.Empty)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_GetLastCompactionTimeForTenant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetLastCompactionTimeForTenantRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).GetLastCompactionTimeForTenant(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_GetLastCompactionTimeForTenant_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).GetLastCompactionTimeForTenant(ctx, req.(*GetLastCompactionTimeForTenantRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_SetLastCompactionTimeForTenant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(SetLastCompactionTimeForTenantRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).SetLastCompactionTimeForTenant(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_SetLastCompactionTimeForTenant_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).SetLastCompactionTimeForTenant(ctx, req.(*SetLastCompactionTimeForTenantRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _SysDB_FlushCollectionCompaction_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(FlushCollectionCompactionRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SysDBServer).FlushCollectionCompaction(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SysDB_FlushCollectionCompaction_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SysDBServer).FlushCollectionCompaction(ctx, req.(*FlushCollectionCompactionRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// SysDB_ServiceDesc is the grpc.ServiceDesc for SysDB service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var SysDB_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "chroma.SysDB", - HandlerType: (*SysDBServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "CreateDatabase", - Handler: _SysDB_CreateDatabase_Handler, - }, - { - MethodName: "GetDatabase", - Handler: _SysDB_GetDatabase_Handler, - }, - { - MethodName: "CreateTenant", - Handler: _SysDB_CreateTenant_Handler, - }, - { - MethodName: "GetTenant", - Handler: _SysDB_GetTenant_Handler, - }, - { - MethodName: "CreateSegment", - Handler: _SysDB_CreateSegment_Handler, - }, - { - MethodName: "DeleteSegment", - Handler: _SysDB_DeleteSegment_Handler, - }, - { - MethodName: "GetSegments", - Handler: _SysDB_GetSegments_Handler, - }, - { - MethodName: "UpdateSegment", - Handler: _SysDB_UpdateSegment_Handler, - }, - { - MethodName: "CreateCollection", - Handler: _SysDB_CreateCollection_Handler, - }, - { - MethodName: "DeleteCollection", - Handler: _SysDB_DeleteCollection_Handler, - }, - { - MethodName: "GetCollections", - Handler: _SysDB_GetCollections_Handler, - }, - { - MethodName: "GetCollectionWithSegments", - Handler: _SysDB_GetCollectionWithSegments_Handler, - }, - { - MethodName: "CheckCollections", - Handler: _SysDB_CheckCollections_Handler, - }, - { - MethodName: "UpdateCollection", - Handler: _SysDB_UpdateCollection_Handler, - }, - { - MethodName: "ResetState", - Handler: _SysDB_ResetState_Handler, - }, - { - MethodName: "GetLastCompactionTimeForTenant", - Handler: _SysDB_GetLastCompactionTimeForTenant_Handler, - }, - { - MethodName: "SetLastCompactionTimeForTenant", - Handler: _SysDB_SetLastCompactionTimeForTenant_Handler, - }, - { - MethodName: "FlushCollectionCompaction", - Handler: _SysDB_FlushCollectionCompaction_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "chromadb/proto/coordinator.proto", -} diff --git a/go/pkg/proto/logservicepb/logservice.pb.go b/go/pkg/proto/logservicepb/logservice.pb.go deleted file mode 100644 index 89401ef2b8b..00000000000 --- a/go/pkg/proto/logservicepb/logservice.pb.go +++ /dev/null @@ -1,844 +0,0 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.34.2 -// protoc v5.28.2 -// source: chromadb/proto/logservice.proto - -package logservicepb - -import ( - coordinatorpb "github.com/chroma-core/chroma/go/pkg/proto/coordinatorpb" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -type PushLogsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CollectionId string `protobuf:"bytes,1,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` - Records []*coordinatorpb.OperationRecord `protobuf:"bytes,2,rep,name=records,proto3" json:"records,omitempty"` -} - -func (x *PushLogsRequest) Reset() { - *x = PushLogsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_logservice_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PushLogsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PushLogsRequest) ProtoMessage() {} - -func (x *PushLogsRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_logservice_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PushLogsRequest.ProtoReflect.Descriptor instead. -func (*PushLogsRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{0} -} - -func (x *PushLogsRequest) GetCollectionId() string { - if x != nil { - return x.CollectionId - } - return "" -} - -func (x *PushLogsRequest) GetRecords() []*coordinatorpb.OperationRecord { - if x != nil { - return x.Records - } - return nil -} - -type PushLogsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - RecordCount int32 `protobuf:"varint,1,opt,name=record_count,json=recordCount,proto3" json:"record_count,omitempty"` -} - -func (x *PushLogsResponse) Reset() { - *x = PushLogsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_logservice_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PushLogsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PushLogsResponse) ProtoMessage() {} - -func (x *PushLogsResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_logservice_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PushLogsResponse.ProtoReflect.Descriptor instead. -func (*PushLogsResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{1} -} - -func (x *PushLogsResponse) GetRecordCount() int32 { - if x != nil { - return x.RecordCount - } - return 0 -} - -type PullLogsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CollectionId string `protobuf:"bytes,1,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` - StartFromOffset int64 `protobuf:"varint,2,opt,name=start_from_offset,json=startFromOffset,proto3" json:"start_from_offset,omitempty"` - BatchSize int32 `protobuf:"varint,3,opt,name=batch_size,json=batchSize,proto3" json:"batch_size,omitempty"` - EndTimestamp int64 `protobuf:"varint,4,opt,name=end_timestamp,json=endTimestamp,proto3" json:"end_timestamp,omitempty"` -} - -func (x *PullLogsRequest) Reset() { - *x = PullLogsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_logservice_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PullLogsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PullLogsRequest) ProtoMessage() {} - -func (x *PullLogsRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_logservice_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PullLogsRequest.ProtoReflect.Descriptor instead. -func (*PullLogsRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{2} -} - -func (x *PullLogsRequest) GetCollectionId() string { - if x != nil { - return x.CollectionId - } - return "" -} - -func (x *PullLogsRequest) GetStartFromOffset() int64 { - if x != nil { - return x.StartFromOffset - } - return 0 -} - -func (x *PullLogsRequest) GetBatchSize() int32 { - if x != nil { - return x.BatchSize - } - return 0 -} - -func (x *PullLogsRequest) GetEndTimestamp() int64 { - if x != nil { - return x.EndTimestamp - } - return 0 -} - -// Represents an operation from the log -type LogRecord struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - LogOffset int64 `protobuf:"varint,1,opt,name=log_offset,json=logOffset,proto3" json:"log_offset,omitempty"` - Record *coordinatorpb.OperationRecord `protobuf:"bytes,2,opt,name=record,proto3" json:"record,omitempty"` -} - -func (x *LogRecord) Reset() { - *x = LogRecord{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_logservice_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *LogRecord) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*LogRecord) ProtoMessage() {} - -func (x *LogRecord) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_logservice_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use LogRecord.ProtoReflect.Descriptor instead. -func (*LogRecord) Descriptor() ([]byte, []int) { - return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{3} -} - -func (x *LogRecord) GetLogOffset() int64 { - if x != nil { - return x.LogOffset - } - return 0 -} - -func (x *LogRecord) GetRecord() *coordinatorpb.OperationRecord { - if x != nil { - return x.Record - } - return nil -} - -type PullLogsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Records []*LogRecord `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"` -} - -func (x *PullLogsResponse) Reset() { - *x = PullLogsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_logservice_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PullLogsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PullLogsResponse) ProtoMessage() {} - -func (x *PullLogsResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_logservice_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PullLogsResponse.ProtoReflect.Descriptor instead. -func (*PullLogsResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{4} -} - -func (x *PullLogsResponse) GetRecords() []*LogRecord { - if x != nil { - return x.Records - } - return nil -} - -type CollectionInfo struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CollectionId string `protobuf:"bytes,1,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` - // The log offset of the first log entry of the collection that needs to be compacted - FirstLogOffset int64 `protobuf:"varint,2,opt,name=first_log_offset,json=firstLogOffset,proto3" json:"first_log_offset,omitempty"` - // The timestamp of the first log entry of the collection that needs to be compacted - FirstLogTs int64 `protobuf:"varint,3,opt,name=first_log_ts,json=firstLogTs,proto3" json:"first_log_ts,omitempty"` -} - -func (x *CollectionInfo) Reset() { - *x = CollectionInfo{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_logservice_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CollectionInfo) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CollectionInfo) ProtoMessage() {} - -func (x *CollectionInfo) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_logservice_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CollectionInfo.ProtoReflect.Descriptor instead. -func (*CollectionInfo) Descriptor() ([]byte, []int) { - return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{5} -} - -func (x *CollectionInfo) GetCollectionId() string { - if x != nil { - return x.CollectionId - } - return "" -} - -func (x *CollectionInfo) GetFirstLogOffset() int64 { - if x != nil { - return x.FirstLogOffset - } - return 0 -} - -func (x *CollectionInfo) GetFirstLogTs() int64 { - if x != nil { - return x.FirstLogTs - } - return 0 -} - -type GetAllCollectionInfoToCompactRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The minimum number of log entries that a collection should have before it should - // be returned for compaction - MinCompactionSize uint64 `protobuf:"varint,1,opt,name=min_compaction_size,json=minCompactionSize,proto3" json:"min_compaction_size,omitempty"` -} - -func (x *GetAllCollectionInfoToCompactRequest) Reset() { - *x = GetAllCollectionInfoToCompactRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_logservice_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetAllCollectionInfoToCompactRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetAllCollectionInfoToCompactRequest) ProtoMessage() {} - -func (x *GetAllCollectionInfoToCompactRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_logservice_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetAllCollectionInfoToCompactRequest.ProtoReflect.Descriptor instead. -func (*GetAllCollectionInfoToCompactRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{6} -} - -func (x *GetAllCollectionInfoToCompactRequest) GetMinCompactionSize() uint64 { - if x != nil { - return x.MinCompactionSize - } - return 0 -} - -type GetAllCollectionInfoToCompactResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - AllCollectionInfo []*CollectionInfo `protobuf:"bytes,1,rep,name=all_collection_info,json=allCollectionInfo,proto3" json:"all_collection_info,omitempty"` -} - -func (x *GetAllCollectionInfoToCompactResponse) Reset() { - *x = GetAllCollectionInfoToCompactResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_logservice_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetAllCollectionInfoToCompactResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetAllCollectionInfoToCompactResponse) ProtoMessage() {} - -func (x *GetAllCollectionInfoToCompactResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_logservice_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetAllCollectionInfoToCompactResponse.ProtoReflect.Descriptor instead. -func (*GetAllCollectionInfoToCompactResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{7} -} - -func (x *GetAllCollectionInfoToCompactResponse) GetAllCollectionInfo() []*CollectionInfo { - if x != nil { - return x.AllCollectionInfo - } - return nil -} - -type UpdateCollectionLogOffsetRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - CollectionId string `protobuf:"bytes,1,opt,name=collection_id,json=collectionId,proto3" json:"collection_id,omitempty"` - LogOffset int64 `protobuf:"varint,2,opt,name=log_offset,json=logOffset,proto3" json:"log_offset,omitempty"` -} - -func (x *UpdateCollectionLogOffsetRequest) Reset() { - *x = UpdateCollectionLogOffsetRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_logservice_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateCollectionLogOffsetRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateCollectionLogOffsetRequest) ProtoMessage() {} - -func (x *UpdateCollectionLogOffsetRequest) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_logservice_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateCollectionLogOffsetRequest.ProtoReflect.Descriptor instead. -func (*UpdateCollectionLogOffsetRequest) Descriptor() ([]byte, []int) { - return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{8} -} - -func (x *UpdateCollectionLogOffsetRequest) GetCollectionId() string { - if x != nil { - return x.CollectionId - } - return "" -} - -func (x *UpdateCollectionLogOffsetRequest) GetLogOffset() int64 { - if x != nil { - return x.LogOffset - } - return 0 -} - -type UpdateCollectionLogOffsetResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *UpdateCollectionLogOffsetResponse) Reset() { - *x = UpdateCollectionLogOffsetResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_chromadb_proto_logservice_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateCollectionLogOffsetResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateCollectionLogOffsetResponse) ProtoMessage() {} - -func (x *UpdateCollectionLogOffsetResponse) ProtoReflect() protoreflect.Message { - mi := &file_chromadb_proto_logservice_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateCollectionLogOffsetResponse.ProtoReflect.Descriptor instead. -func (*UpdateCollectionLogOffsetResponse) Descriptor() ([]byte, []int) { - return file_chromadb_proto_logservice_proto_rawDescGZIP(), []int{9} -} - -var File_chromadb_proto_logservice_proto protoreflect.FileDescriptor - -var file_chromadb_proto_logservice_proto_rawDesc = []byte{ - 0x0a, 0x1f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x2f, 0x6c, 0x6f, 0x67, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x12, 0x06, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x1a, 0x1b, 0x63, 0x68, 0x72, 0x6f, 0x6d, - 0x61, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x69, 0x0a, 0x0f, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x6f, - 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x31, - 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x17, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, - 0x73, 0x22, 0x35, 0x0a, 0x10, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x65, 0x63, - 0x6f, 0x72, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xa6, 0x01, 0x0a, 0x0f, 0x50, 0x75, 0x6c, - 0x6c, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, - 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, - 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x46, 0x72, 0x6f, 0x6d, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x1d, 0x0a, - 0x0a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x23, 0x0a, 0x0d, - 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0c, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x22, 0x5b, 0x0a, 0x09, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x1d, - 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x2f, 0x0a, - 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, - 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x3f, - 0x0a, 0x10, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x4c, 0x6f, 0x67, - 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x22, - 0x81, 0x01, 0x0a, 0x0e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x69, 0x72, 0x73, 0x74, - 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0e, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, - 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x74, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x66, 0x69, 0x72, 0x73, 0x74, 0x4c, 0x6f, - 0x67, 0x54, 0x73, 0x22, 0x56, 0x0a, 0x24, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, - 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x54, 0x6f, 0x43, 0x6f, 0x6d, - 0x70, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x6d, - 0x69, 0x6e, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x69, - 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6d, 0x69, 0x6e, 0x43, 0x6f, 0x6d, - 0x70, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x6f, 0x0a, 0x25, 0x47, - 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x6e, 0x66, 0x6f, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x13, 0x61, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x16, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x43, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x11, 0x61, 0x6c, 0x6c, 0x43, 0x6f, - 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x66, 0x0a, 0x20, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x4c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x66, 0x66, - 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x4f, 0x66, - 0x66, 0x73, 0x65, 0x74, 0x22, 0x23, 0x0a, 0x21, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, - 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x32, 0x82, 0x03, 0x0a, 0x0a, 0x4c, 0x6f, - 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x50, 0x75, 0x73, 0x68, - 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x17, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x50, 0x75, - 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, - 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x50, 0x75, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x08, 0x50, 0x75, 0x6c, - 0x6c, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x17, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x50, - 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, - 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x50, 0x75, 0x6c, 0x6c, 0x4c, 0x6f, 0x67, 0x73, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x7e, 0x0a, 0x1d, 0x47, 0x65, - 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, - 0x66, 0x6f, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x12, 0x2c, 0x2e, 0x63, 0x68, - 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x61, - 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x63, 0x68, 0x72, 0x6f, - 0x6d, 0x61, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x54, 0x6f, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x72, 0x0a, 0x19, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, - 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x28, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, - 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x4c, 0x6f, 0x67, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x29, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x4f, 0x66, - 0x66, 0x73, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x39, - 0x5a, 0x37, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x68, 0x72, - 0x6f, 0x6d, 0x61, 0x2d, 0x63, 0x6f, 0x72, 0x65, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x61, 0x2f, - 0x67, 0x6f, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x6c, 0x6f, 0x67, - 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x33, -} - -var ( - file_chromadb_proto_logservice_proto_rawDescOnce sync.Once - file_chromadb_proto_logservice_proto_rawDescData = file_chromadb_proto_logservice_proto_rawDesc -) - -func file_chromadb_proto_logservice_proto_rawDescGZIP() []byte { - file_chromadb_proto_logservice_proto_rawDescOnce.Do(func() { - file_chromadb_proto_logservice_proto_rawDescData = protoimpl.X.CompressGZIP(file_chromadb_proto_logservice_proto_rawDescData) - }) - return file_chromadb_proto_logservice_proto_rawDescData -} - -var file_chromadb_proto_logservice_proto_msgTypes = make([]protoimpl.MessageInfo, 10) -var file_chromadb_proto_logservice_proto_goTypes = []any{ - (*PushLogsRequest)(nil), // 0: chroma.PushLogsRequest - (*PushLogsResponse)(nil), // 1: chroma.PushLogsResponse - (*PullLogsRequest)(nil), // 2: chroma.PullLogsRequest - (*LogRecord)(nil), // 3: chroma.LogRecord - (*PullLogsResponse)(nil), // 4: chroma.PullLogsResponse - (*CollectionInfo)(nil), // 5: chroma.CollectionInfo - (*GetAllCollectionInfoToCompactRequest)(nil), // 6: chroma.GetAllCollectionInfoToCompactRequest - (*GetAllCollectionInfoToCompactResponse)(nil), // 7: chroma.GetAllCollectionInfoToCompactResponse - (*UpdateCollectionLogOffsetRequest)(nil), // 8: chroma.UpdateCollectionLogOffsetRequest - (*UpdateCollectionLogOffsetResponse)(nil), // 9: chroma.UpdateCollectionLogOffsetResponse - (*coordinatorpb.OperationRecord)(nil), // 10: chroma.OperationRecord -} -var file_chromadb_proto_logservice_proto_depIdxs = []int32{ - 10, // 0: chroma.PushLogsRequest.records:type_name -> chroma.OperationRecord - 10, // 1: chroma.LogRecord.record:type_name -> chroma.OperationRecord - 3, // 2: chroma.PullLogsResponse.records:type_name -> chroma.LogRecord - 5, // 3: chroma.GetAllCollectionInfoToCompactResponse.all_collection_info:type_name -> chroma.CollectionInfo - 0, // 4: chroma.LogService.PushLogs:input_type -> chroma.PushLogsRequest - 2, // 5: chroma.LogService.PullLogs:input_type -> chroma.PullLogsRequest - 6, // 6: chroma.LogService.GetAllCollectionInfoToCompact:input_type -> chroma.GetAllCollectionInfoToCompactRequest - 8, // 7: chroma.LogService.UpdateCollectionLogOffset:input_type -> chroma.UpdateCollectionLogOffsetRequest - 1, // 8: chroma.LogService.PushLogs:output_type -> chroma.PushLogsResponse - 4, // 9: chroma.LogService.PullLogs:output_type -> chroma.PullLogsResponse - 7, // 10: chroma.LogService.GetAllCollectionInfoToCompact:output_type -> chroma.GetAllCollectionInfoToCompactResponse - 9, // 11: chroma.LogService.UpdateCollectionLogOffset:output_type -> chroma.UpdateCollectionLogOffsetResponse - 8, // [8:12] is the sub-list for method output_type - 4, // [4:8] is the sub-list for method input_type - 4, // [4:4] is the sub-list for extension type_name - 4, // [4:4] is the sub-list for extension extendee - 0, // [0:4] is the sub-list for field type_name -} - -func init() { file_chromadb_proto_logservice_proto_init() } -func file_chromadb_proto_logservice_proto_init() { - if File_chromadb_proto_logservice_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_chromadb_proto_logservice_proto_msgTypes[0].Exporter = func(v any, i int) any { - switch v := v.(*PushLogsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_logservice_proto_msgTypes[1].Exporter = func(v any, i int) any { - switch v := v.(*PushLogsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_logservice_proto_msgTypes[2].Exporter = func(v any, i int) any { - switch v := v.(*PullLogsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_logservice_proto_msgTypes[3].Exporter = func(v any, i int) any { - switch v := v.(*LogRecord); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_logservice_proto_msgTypes[4].Exporter = func(v any, i int) any { - switch v := v.(*PullLogsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_logservice_proto_msgTypes[5].Exporter = func(v any, i int) any { - switch v := v.(*CollectionInfo); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_logservice_proto_msgTypes[6].Exporter = func(v any, i int) any { - switch v := v.(*GetAllCollectionInfoToCompactRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_logservice_proto_msgTypes[7].Exporter = func(v any, i int) any { - switch v := v.(*GetAllCollectionInfoToCompactResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_logservice_proto_msgTypes[8].Exporter = func(v any, i int) any { - switch v := v.(*UpdateCollectionLogOffsetRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_chromadb_proto_logservice_proto_msgTypes[9].Exporter = func(v any, i int) any { - switch v := v.(*UpdateCollectionLogOffsetResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_chromadb_proto_logservice_proto_rawDesc, - NumEnums: 0, - NumMessages: 10, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_chromadb_proto_logservice_proto_goTypes, - DependencyIndexes: file_chromadb_proto_logservice_proto_depIdxs, - MessageInfos: file_chromadb_proto_logservice_proto_msgTypes, - }.Build() - File_chromadb_proto_logservice_proto = out.File - file_chromadb_proto_logservice_proto_rawDesc = nil - file_chromadb_proto_logservice_proto_goTypes = nil - file_chromadb_proto_logservice_proto_depIdxs = nil -} diff --git a/go/pkg/proto/logservicepb/logservice_grpc.pb.go b/go/pkg/proto/logservicepb/logservice_grpc.pb.go deleted file mode 100644 index af03bda28d0..00000000000 --- a/go/pkg/proto/logservicepb/logservice_grpc.pb.go +++ /dev/null @@ -1,235 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.5.1 -// - protoc v5.28.2 -// source: chromadb/proto/logservice.proto - -package logservicepb - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.64.0 or later. -const _ = grpc.SupportPackageIsVersion9 - -const ( - LogService_PushLogs_FullMethodName = "/chroma.LogService/PushLogs" - LogService_PullLogs_FullMethodName = "/chroma.LogService/PullLogs" - LogService_GetAllCollectionInfoToCompact_FullMethodName = "/chroma.LogService/GetAllCollectionInfoToCompact" - LogService_UpdateCollectionLogOffset_FullMethodName = "/chroma.LogService/UpdateCollectionLogOffset" -) - -// LogServiceClient is the client API for LogService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type LogServiceClient interface { - PushLogs(ctx context.Context, in *PushLogsRequest, opts ...grpc.CallOption) (*PushLogsResponse, error) - PullLogs(ctx context.Context, in *PullLogsRequest, opts ...grpc.CallOption) (*PullLogsResponse, error) - GetAllCollectionInfoToCompact(ctx context.Context, in *GetAllCollectionInfoToCompactRequest, opts ...grpc.CallOption) (*GetAllCollectionInfoToCompactResponse, error) - UpdateCollectionLogOffset(ctx context.Context, in *UpdateCollectionLogOffsetRequest, opts ...grpc.CallOption) (*UpdateCollectionLogOffsetResponse, error) -} - -type logServiceClient struct { - cc grpc.ClientConnInterface -} - -func NewLogServiceClient(cc grpc.ClientConnInterface) LogServiceClient { - return &logServiceClient{cc} -} - -func (c *logServiceClient) PushLogs(ctx context.Context, in *PushLogsRequest, opts ...grpc.CallOption) (*PushLogsResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(PushLogsResponse) - err := c.cc.Invoke(ctx, LogService_PushLogs_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *logServiceClient) PullLogs(ctx context.Context, in *PullLogsRequest, opts ...grpc.CallOption) (*PullLogsResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(PullLogsResponse) - err := c.cc.Invoke(ctx, LogService_PullLogs_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *logServiceClient) GetAllCollectionInfoToCompact(ctx context.Context, in *GetAllCollectionInfoToCompactRequest, opts ...grpc.CallOption) (*GetAllCollectionInfoToCompactResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(GetAllCollectionInfoToCompactResponse) - err := c.cc.Invoke(ctx, LogService_GetAllCollectionInfoToCompact_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *logServiceClient) UpdateCollectionLogOffset(ctx context.Context, in *UpdateCollectionLogOffsetRequest, opts ...grpc.CallOption) (*UpdateCollectionLogOffsetResponse, error) { - cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) - out := new(UpdateCollectionLogOffsetResponse) - err := c.cc.Invoke(ctx, LogService_UpdateCollectionLogOffset_FullMethodName, in, out, cOpts...) - if err != nil { - return nil, err - } - return out, nil -} - -// LogServiceServer is the server API for LogService service. -// All implementations must embed UnimplementedLogServiceServer -// for forward compatibility. -type LogServiceServer interface { - PushLogs(context.Context, *PushLogsRequest) (*PushLogsResponse, error) - PullLogs(context.Context, *PullLogsRequest) (*PullLogsResponse, error) - GetAllCollectionInfoToCompact(context.Context, *GetAllCollectionInfoToCompactRequest) (*GetAllCollectionInfoToCompactResponse, error) - UpdateCollectionLogOffset(context.Context, *UpdateCollectionLogOffsetRequest) (*UpdateCollectionLogOffsetResponse, error) - mustEmbedUnimplementedLogServiceServer() -} - -// UnimplementedLogServiceServer must be embedded to have -// forward compatible implementations. -// -// NOTE: this should be embedded by value instead of pointer to avoid a nil -// pointer dereference when methods are called. -type UnimplementedLogServiceServer struct{} - -func (UnimplementedLogServiceServer) PushLogs(context.Context, *PushLogsRequest) (*PushLogsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method PushLogs not implemented") -} -func (UnimplementedLogServiceServer) PullLogs(context.Context, *PullLogsRequest) (*PullLogsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method PullLogs not implemented") -} -func (UnimplementedLogServiceServer) GetAllCollectionInfoToCompact(context.Context, *GetAllCollectionInfoToCompactRequest) (*GetAllCollectionInfoToCompactResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetAllCollectionInfoToCompact not implemented") -} -func (UnimplementedLogServiceServer) UpdateCollectionLogOffset(context.Context, *UpdateCollectionLogOffsetRequest) (*UpdateCollectionLogOffsetResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method UpdateCollectionLogOffset not implemented") -} -func (UnimplementedLogServiceServer) mustEmbedUnimplementedLogServiceServer() {} -func (UnimplementedLogServiceServer) testEmbeddedByValue() {} - -// UnsafeLogServiceServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to LogServiceServer will -// result in compilation errors. -type UnsafeLogServiceServer interface { - mustEmbedUnimplementedLogServiceServer() -} - -func RegisterLogServiceServer(s grpc.ServiceRegistrar, srv LogServiceServer) { - // If the following call pancis, it indicates UnimplementedLogServiceServer was - // embedded by pointer and is nil. This will cause panics if an - // unimplemented method is ever invoked, so we test this at initialization - // time to prevent it from happening at runtime later due to I/O. - if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { - t.testEmbeddedByValue() - } - s.RegisterService(&LogService_ServiceDesc, srv) -} - -func _LogService_PushLogs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PushLogsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(LogServiceServer).PushLogs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: LogService_PushLogs_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LogServiceServer).PushLogs(ctx, req.(*PushLogsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _LogService_PullLogs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PullLogsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(LogServiceServer).PullLogs(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: LogService_PullLogs_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LogServiceServer).PullLogs(ctx, req.(*PullLogsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _LogService_GetAllCollectionInfoToCompact_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetAllCollectionInfoToCompactRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(LogServiceServer).GetAllCollectionInfoToCompact(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: LogService_GetAllCollectionInfoToCompact_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LogServiceServer).GetAllCollectionInfoToCompact(ctx, req.(*GetAllCollectionInfoToCompactRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _LogService_UpdateCollectionLogOffset_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UpdateCollectionLogOffsetRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(LogServiceServer).UpdateCollectionLogOffset(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: LogService_UpdateCollectionLogOffset_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LogServiceServer).UpdateCollectionLogOffset(ctx, req.(*UpdateCollectionLogOffsetRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// LogService_ServiceDesc is the grpc.ServiceDesc for LogService service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var LogService_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "chroma.LogService", - HandlerType: (*LogServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "PushLogs", - Handler: _LogService_PushLogs_Handler, - }, - { - MethodName: "PullLogs", - Handler: _LogService_PullLogs_Handler, - }, - { - MethodName: "GetAllCollectionInfoToCompact", - Handler: _LogService_GetAllCollectionInfoToCompact_Handler, - }, - { - MethodName: "UpdateCollectionLogOffset", - Handler: _LogService_UpdateCollectionLogOffset_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "chromadb/proto/logservice.proto", -} From 55e4f1cab66f6f66ebe64e15691f58e92bbd8205 Mon Sep 17 00:00:00 2001 From: Sanket Kedia Date: Fri, 20 Dec 2024 08:13:58 -0800 Subject: [PATCH 3/4] Remove line --- rust/blockstore/src/arrow/flusher.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/rust/blockstore/src/arrow/flusher.rs b/rust/blockstore/src/arrow/flusher.rs index 24ebbd6ccaa..6a528e22036 100644 --- a/rust/blockstore/src/arrow/flusher.rs +++ b/rust/blockstore/src/arrow/flusher.rs @@ -45,7 +45,6 @@ impl ArrowBlockfileFlusher { // NOTE(hammadb) we do not use try_join_all here because we want to flush all blocks // in parallel and try_join_all / join_all switches to using futures_ordered if the // number of futures is high. - let mut futures = Vec::new(); for block in &self.blocks { futures.push(self.block_manager.flush(block)); From e06da3e6016cbcd3d67eb43848af0634336b70d9 Mon Sep 17 00:00:00 2001 From: Sanket Kedia Date: Fri, 20 Dec 2024 13:29:30 -0800 Subject: [PATCH 4/4] Fix empty flush --- rust/blockstore/src/arrow/flusher.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/rust/blockstore/src/arrow/flusher.rs b/rust/blockstore/src/arrow/flusher.rs index 6a528e22036..401d3ae4f7d 100644 --- a/rust/blockstore/src/arrow/flusher.rs +++ b/rust/blockstore/src/arrow/flusher.rs @@ -50,6 +50,12 @@ impl ArrowBlockfileFlusher { futures.push(self.block_manager.flush(block)); } let num_futures = futures.len(); + // buffer_unordered hangs with 0 futures. + if num_futures == 0 { + self.root_manager.flush::(&self.root).await?; + return Ok(()); + } + tracing::debug!("Flushing {} blocks", num_futures); futures::stream::iter(futures) .buffer_unordered(num_futures) .try_collect::>()