diff --git a/internal/datacoord/meta.go b/internal/datacoord/meta.go index 5490e1bb2e..14d46fcd7b 100644 --- a/internal/datacoord/meta.go +++ b/internal/datacoord/meta.go @@ -892,8 +892,8 @@ func (m *meta) saveSegmentInfo(segment *SegmentInfo) error { SegmentID: segment.ID, CollectionID: segment.CollectionID, PartitionID: segment.PartitionID, - ChannelID: segment.InsertChannel, - SegmentState: querypb.SegmentState_sealed, + DmChannel: segment.InsertChannel, + SegmentState: commonpb.SegmentState_Sealed, CreatedByCompaction: segment.GetCreatedByCompaction(), CompactionFrom: segment.GetCompactionFrom(), } diff --git a/internal/proto/query_coord.proto b/internal/proto/query_coord.proto index 875c45dbcb..fb845c8cd5 100644 --- a/internal/proto/query_coord.proto +++ b/internal/proto/query_coord.proto @@ -52,7 +52,7 @@ service QueryNode { rpc GetMetrics(milvus.GetMetricsRequest) returns (milvus.GetMetricsResponse) {} } -//--------------------query coordinator proto------------------ +//--------------------QueryCoord grpc request and response proto------------------ message ShowCollectionsRequest { common.MsgBase base = 1; // Not useful for now @@ -116,8 +116,8 @@ message CreateQueryChannelRequest { message CreateQueryChannelResponse { common.Status status = 1; - string request_channel = 2; - string result_channel = 3; + string query_channel = 2; + string query_result_channel = 3; } message GetPartitionStatesRequest { @@ -127,22 +127,6 @@ message GetPartitionStatesRequest { repeated int64 partitionIDs = 4; } -enum PartitionState { - NotExist = 0; - NotPresent = 1; - OnDisk = 2; - PartialInMemory = 3; - InMemory = 4; - PartialInGPU = 5; - InGPU = 6; -} - -message PartitionStates { - int64 partitionID = 1; - PartitionState state = 2; - int64 inMemory_percentage = 3; -} - message GetPartitionStatesResponse { common.Status status = 1; repeated PartitionStates partition_descriptions = 2; @@ -154,36 +138,18 @@ message GetSegmentInfoRequest { int64 collectionID = 3; } -message SegmentInfo { - int64 segmentID = 1; - int64 collectionID = 2; - int64 partitionID = 3; - int64 nodeID = 4; - int64 mem_size = 5; - int64 num_rows = 6; - string index_name = 7; - int64 indexID = 8; - string channelID = 9; - SegmentState segment_state = 10; // will deprecated - repeated int64 compactionFrom = 11; - bool createdByCompaction = 12; - common.SegmentState state = 13; - bool enable_index = 14; - repeated index.IndexFilePathInfo index_path_infos = 15; -} - message GetSegmentInfoResponse { common.Status status = 1; repeated SegmentInfo infos = 2; } -//-----------------query node proto---------------- +//-----------------query node grpc request and response proto---------------- message AddQueryChannelRequest { common.MsgBase base = 1; int64 nodeID = 2; int64 collectionID = 3; - string request_channelID = 4; - string result_channelID = 5; + string query_channel = 4; + string query_result_channel = 5; repeated int64 global_sealed_segmentID = 6; internal.MsgPosition seek_position = 7; repeated SegmentInfo global_sealed_segments = 8; @@ -193,20 +159,10 @@ message RemoveQueryChannelRequest { common.MsgBase base = 1; int64 nodeID = 2; int64 collectionID = 3; - string request_channelID = 4; - string result_channelID = 5; + string query_channel = 4; + string query_result_channel = 5; } -//message excludedSegmentInfo { -// int64 segmentID = 1; -// internal.MsgPosition pos = 2; -//} - -//message WatchDmChannelInfo { -// string channelID = 1; -// internal.MsgPosition pos = 2; -//} - message WatchDmChannelsRequest { common.MsgBase base = 1; int64 nodeID = 2; @@ -224,19 +180,6 @@ message WatchDeltaChannelsRequest { repeated data.VchannelInfo infos = 4; } -enum TriggerCondition { - handoff = 0; - loadBalance = 1; - grpcRequest = 2; - nodeDown = 3; -} - -//message FieldBinlogPath { -// int64 filedID = 1; -// repeated string binlog_path = 2; -//} - -//used for handoff task message SegmentLoadInfo { int64 segmentID = 1; int64 partitionID = 2; @@ -257,9 +200,8 @@ message LoadSegmentsRequest { int64 dst_nodeID = 2; repeated SegmentLoadInfo infos = 3; schema.CollectionSchema schema = 4; - TriggerCondition load_condition = 5; // deprecated - int64 source_nodeID = 6; - int64 collectionID = 7; + int64 source_nodeID = 5; + int64 collectionID = 6; } message ReleaseSegmentsRequest { @@ -272,55 +214,7 @@ message ReleaseSegmentsRequest { repeated int64 segmentIDs = 6; } -//----------------etcd----------------- -enum SegmentState { - None = 0; - Growing = 1; - Frozen = 2; - sealing = 3; - sealed = 4; -} - -enum LoadType { - LoadPartition = 0; - loadCollection = 1; -} - -message DmChannelInfo { - int64 nodeID_loaded = 1; - repeated string channelIDs = 2; -} - -message QueryChannelInfo { - int64 collectionID = 1; - string query_channelID = 2; - string query_result_channelID = 3; - repeated SegmentInfo global_sealed_segments = 4; - internal.MsgPosition seek_position = 5; -} - -message CollectionInfo { - int64 collectionID = 1; - repeated int64 partitionIDs = 2; - repeated PartitionStates partition_states = 3; - repeated DmChannelInfo channel_infos = 4; - LoadType load_type = 5; - schema.CollectionSchema schema = 6; - repeated int64 released_partitionIDs = 7; - int64 inMemory_percentage = 8; -} - -message LoadBalanceSegmentInfo { - int64 segmentID = 1; - int64 partitionID = 2; - int64 collectionID = 3; - int64 source_nodeID = 4; - int64 dst_nodeID = 5; - bool source_done = 6; - bool dst_done = 7; - bool valid_info = 8; -} - +//----------------request auto triggered by QueryCoord----------------- message HandoffSegmentsRequest { common.MsgBase base = 1; repeated SegmentInfo segmentInfos = 2; @@ -334,7 +228,81 @@ message LoadBalanceRequest { repeated int64 sealed_segmentIDs = 5; } -//---------------- common query proto ----------------- +//-------------------- internal meta proto------------------ +enum PartitionState { + NotExist = 0; + NotPresent = 1; + OnDisk = 2; + PartialInMemory = 3; + InMemory = 4; + PartialInGPU = 5; + InGPU = 6; +} + +enum TriggerCondition { + UnKnowCondition = 0; + Handoff = 1; + LoadBalance = 2; + GrpcRequest = 3; + NodeDown = 4; +} + +enum LoadType { + UnKnowType = 0; + LoadPartition = 1; + loadCollection = 2; +} + +message DmChannelWatchInfo { + int64 collectionID = 1; + repeated string channelIDs = 2; // will deprecate + string dmChannel = 3; + int64 nodeID_loaded = 4; +} + +message QueryChannelInfo { + int64 collectionID = 1; + string query_channel = 2; + string query_result_channel = 3; + repeated SegmentInfo global_sealed_segments = 4; + internal.MsgPosition seek_position = 5; +} + +message PartitionStates { + int64 partitionID = 1; + PartitionState state = 2; + int64 inMemory_percentage = 3; +} + +message SegmentInfo { + int64 segmentID = 1; + int64 collectionID = 2; + int64 partitionID = 3; + int64 nodeID = 4; + int64 mem_size = 5; + int64 num_rows = 6; + string index_name = 7; + int64 indexID = 8; + string dmChannel = 9; + repeated int64 compactionFrom = 10; + bool createdByCompaction = 11; + common.SegmentState segment_state = 12; + bool enable_index = 13; + repeated index.IndexFilePathInfo index_path_infos = 14; +} + +message CollectionInfo { + int64 collectionID = 1; + repeated int64 partitionIDs = 2; + repeated PartitionStates partition_states = 3; + repeated DmChannelWatchInfo channel_infos = 4; + LoadType load_type = 5; + schema.CollectionSchema schema = 6; + repeated int64 released_partitionIDs = 7; + int64 inMemory_percentage = 8; +} + +//---- synchronize messages proto between QueryCoord and QueryNode ----- message SegmentChangeInfo { int64 online_nodeID = 1; repeated SegmentInfo online_segments = 2; diff --git a/internal/proto/querypb/query_coord.pb.go b/internal/proto/querypb/query_coord.pb.go index ed22a121ff..4552271930 100644 --- a/internal/proto/querypb/query_coord.pb.go +++ b/internal/proto/querypb/query_coord.pb.go @@ -30,6 +30,7 @@ var _ = math.Inf // proto package needs to be updated. const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package +//-------------------- internal meta proto------------------ type PartitionState int32 const ( @@ -73,24 +74,27 @@ func (PartitionState) EnumDescriptor() ([]byte, []int) { type TriggerCondition int32 const ( - TriggerCondition_handoff TriggerCondition = 0 - TriggerCondition_loadBalance TriggerCondition = 1 - TriggerCondition_grpcRequest TriggerCondition = 2 - TriggerCondition_nodeDown TriggerCondition = 3 + TriggerCondition_UnKnowCondition TriggerCondition = 0 + TriggerCondition_Handoff TriggerCondition = 1 + TriggerCondition_LoadBalance TriggerCondition = 2 + TriggerCondition_GrpcRequest TriggerCondition = 3 + TriggerCondition_NodeDown TriggerCondition = 4 ) var TriggerCondition_name = map[int32]string{ - 0: "handoff", - 1: "loadBalance", - 2: "grpcRequest", - 3: "nodeDown", + 0: "UnKnowCondition", + 1: "Handoff", + 2: "LoadBalance", + 3: "GrpcRequest", + 4: "NodeDown", } var TriggerCondition_value = map[string]int32{ - "handoff": 0, - "loadBalance": 1, - "grpcRequest": 2, - "nodeDown": 3, + "UnKnowCondition": 0, + "Handoff": 1, + "LoadBalance": 2, + "GrpcRequest": 3, + "NodeDown": 4, } func (x TriggerCondition) String() string { @@ -101,56 +105,24 @@ func (TriggerCondition) EnumDescriptor() ([]byte, []int) { return fileDescriptor_aab7cc9a69ed26e8, []int{1} } -//----------------etcd----------------- -type SegmentState int32 - -const ( - SegmentState_None SegmentState = 0 - SegmentState_Growing SegmentState = 1 - SegmentState_Frozen SegmentState = 2 - SegmentState_sealing SegmentState = 3 - SegmentState_sealed SegmentState = 4 -) - -var SegmentState_name = map[int32]string{ - 0: "None", - 1: "Growing", - 2: "Frozen", - 3: "sealing", - 4: "sealed", -} - -var SegmentState_value = map[string]int32{ - "None": 0, - "Growing": 1, - "Frozen": 2, - "sealing": 3, - "sealed": 4, -} - -func (x SegmentState) String() string { - return proto.EnumName(SegmentState_name, int32(x)) -} - -func (SegmentState) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{2} -} - type LoadType int32 const ( - LoadType_LoadPartition LoadType = 0 - LoadType_loadCollection LoadType = 1 + LoadType_UnKnowType LoadType = 0 + LoadType_LoadPartition LoadType = 1 + LoadType_loadCollection LoadType = 2 ) var LoadType_name = map[int32]string{ - 0: "LoadPartition", - 1: "loadCollection", + 0: "UnKnowType", + 1: "LoadPartition", + 2: "loadCollection", } var LoadType_value = map[string]int32{ - "LoadPartition": 0, - "loadCollection": 1, + "UnKnowType": 0, + "LoadPartition": 1, + "loadCollection": 2, } func (x LoadType) String() string { @@ -158,10 +130,10 @@ func (x LoadType) String() string { } func (LoadType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{3} + return fileDescriptor_aab7cc9a69ed26e8, []int{2} } -//--------------------query coordinator proto------------------ +//--------------------QueryCoord grpc request and response proto------------------ type ShowCollectionsRequest struct { Base *commonpb.MsgBase `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"` // Not useful for now @@ -708,8 +680,8 @@ func (m *CreateQueryChannelRequest) GetProxyID() int64 { type CreateQueryChannelResponse struct { Status *commonpb.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - RequestChannel string `protobuf:"bytes,2,opt,name=request_channel,json=requestChannel,proto3" json:"request_channel,omitempty"` - ResultChannel string `protobuf:"bytes,3,opt,name=result_channel,json=resultChannel,proto3" json:"result_channel,omitempty"` + QueryChannel string `protobuf:"bytes,2,opt,name=query_channel,json=queryChannel,proto3" json:"query_channel,omitempty"` + QueryResultChannel string `protobuf:"bytes,3,opt,name=query_result_channel,json=queryResultChannel,proto3" json:"query_result_channel,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -747,16 +719,16 @@ func (m *CreateQueryChannelResponse) GetStatus() *commonpb.Status { return nil } -func (m *CreateQueryChannelResponse) GetRequestChannel() string { +func (m *CreateQueryChannelResponse) GetQueryChannel() string { if m != nil { - return m.RequestChannel + return m.QueryChannel } return "" } -func (m *CreateQueryChannelResponse) GetResultChannel() string { +func (m *CreateQueryChannelResponse) GetQueryResultChannel() string { if m != nil { - return m.ResultChannel + return m.QueryResultChannel } return "" } @@ -824,61 +796,6 @@ func (m *GetPartitionStatesRequest) GetPartitionIDs() []int64 { return nil } -type PartitionStates struct { - PartitionID int64 `protobuf:"varint,1,opt,name=partitionID,proto3" json:"partitionID,omitempty"` - State PartitionState `protobuf:"varint,2,opt,name=state,proto3,enum=milvus.proto.query.PartitionState" json:"state,omitempty"` - InMemoryPercentage int64 `protobuf:"varint,3,opt,name=inMemory_percentage,json=inMemoryPercentage,proto3" json:"inMemory_percentage,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *PartitionStates) Reset() { *m = PartitionStates{} } -func (m *PartitionStates) String() string { return proto.CompactTextString(m) } -func (*PartitionStates) ProtoMessage() {} -func (*PartitionStates) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{11} -} - -func (m *PartitionStates) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_PartitionStates.Unmarshal(m, b) -} -func (m *PartitionStates) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_PartitionStates.Marshal(b, m, deterministic) -} -func (m *PartitionStates) XXX_Merge(src proto.Message) { - xxx_messageInfo_PartitionStates.Merge(m, src) -} -func (m *PartitionStates) XXX_Size() int { - return xxx_messageInfo_PartitionStates.Size(m) -} -func (m *PartitionStates) XXX_DiscardUnknown() { - xxx_messageInfo_PartitionStates.DiscardUnknown(m) -} - -var xxx_messageInfo_PartitionStates proto.InternalMessageInfo - -func (m *PartitionStates) GetPartitionID() int64 { - if m != nil { - return m.PartitionID - } - return 0 -} - -func (m *PartitionStates) GetState() PartitionState { - if m != nil { - return m.State - } - return PartitionState_NotExist -} - -func (m *PartitionStates) GetInMemoryPercentage() int64 { - if m != nil { - return m.InMemoryPercentage - } - return 0 -} - type GetPartitionStatesResponse struct { Status *commonpb.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` PartitionDescriptions []*PartitionStates `protobuf:"bytes,2,rep,name=partition_descriptions,json=partitionDescriptions,proto3" json:"partition_descriptions,omitempty"` @@ -891,7 +808,7 @@ func (m *GetPartitionStatesResponse) Reset() { *m = GetPartitionStatesRe func (m *GetPartitionStatesResponse) String() string { return proto.CompactTextString(m) } func (*GetPartitionStatesResponse) ProtoMessage() {} func (*GetPartitionStatesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{12} + return fileDescriptor_aab7cc9a69ed26e8, []int{11} } func (m *GetPartitionStatesResponse) XXX_Unmarshal(b []byte) error { @@ -939,7 +856,7 @@ func (m *GetSegmentInfoRequest) Reset() { *m = GetSegmentInfoRequest{} } func (m *GetSegmentInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetSegmentInfoRequest) ProtoMessage() {} func (*GetSegmentInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{13} + return fileDescriptor_aab7cc9a69ed26e8, []int{12} } func (m *GetSegmentInfoRequest) XXX_Unmarshal(b []byte) error { @@ -981,157 +898,6 @@ func (m *GetSegmentInfoRequest) GetCollectionID() int64 { return 0 } -type SegmentInfo struct { - SegmentID int64 `protobuf:"varint,1,opt,name=segmentID,proto3" json:"segmentID,omitempty"` - CollectionID int64 `protobuf:"varint,2,opt,name=collectionID,proto3" json:"collectionID,omitempty"` - PartitionID int64 `protobuf:"varint,3,opt,name=partitionID,proto3" json:"partitionID,omitempty"` - NodeID int64 `protobuf:"varint,4,opt,name=nodeID,proto3" json:"nodeID,omitempty"` - MemSize int64 `protobuf:"varint,5,opt,name=mem_size,json=memSize,proto3" json:"mem_size,omitempty"` - NumRows int64 `protobuf:"varint,6,opt,name=num_rows,json=numRows,proto3" json:"num_rows,omitempty"` - IndexName string `protobuf:"bytes,7,opt,name=index_name,json=indexName,proto3" json:"index_name,omitempty"` - IndexID int64 `protobuf:"varint,8,opt,name=indexID,proto3" json:"indexID,omitempty"` - ChannelID string `protobuf:"bytes,9,opt,name=channelID,proto3" json:"channelID,omitempty"` - SegmentState SegmentState `protobuf:"varint,10,opt,name=segment_state,json=segmentState,proto3,enum=milvus.proto.query.SegmentState" json:"segment_state,omitempty"` - CompactionFrom []int64 `protobuf:"varint,11,rep,packed,name=compactionFrom,proto3" json:"compactionFrom,omitempty"` - CreatedByCompaction bool `protobuf:"varint,12,opt,name=createdByCompaction,proto3" json:"createdByCompaction,omitempty"` - State commonpb.SegmentState `protobuf:"varint,13,opt,name=state,proto3,enum=milvus.proto.common.SegmentState" json:"state,omitempty"` - EnableIndex bool `protobuf:"varint,14,opt,name=enable_index,json=enableIndex,proto3" json:"enable_index,omitempty"` - IndexPathInfos []*indexpb.IndexFilePathInfo `protobuf:"bytes,15,rep,name=index_path_infos,json=indexPathInfos,proto3" json:"index_path_infos,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *SegmentInfo) Reset() { *m = SegmentInfo{} } -func (m *SegmentInfo) String() string { return proto.CompactTextString(m) } -func (*SegmentInfo) ProtoMessage() {} -func (*SegmentInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{14} -} - -func (m *SegmentInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SegmentInfo.Unmarshal(m, b) -} -func (m *SegmentInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SegmentInfo.Marshal(b, m, deterministic) -} -func (m *SegmentInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_SegmentInfo.Merge(m, src) -} -func (m *SegmentInfo) XXX_Size() int { - return xxx_messageInfo_SegmentInfo.Size(m) -} -func (m *SegmentInfo) XXX_DiscardUnknown() { - xxx_messageInfo_SegmentInfo.DiscardUnknown(m) -} - -var xxx_messageInfo_SegmentInfo proto.InternalMessageInfo - -func (m *SegmentInfo) GetSegmentID() int64 { - if m != nil { - return m.SegmentID - } - return 0 -} - -func (m *SegmentInfo) GetCollectionID() int64 { - if m != nil { - return m.CollectionID - } - return 0 -} - -func (m *SegmentInfo) GetPartitionID() int64 { - if m != nil { - return m.PartitionID - } - return 0 -} - -func (m *SegmentInfo) GetNodeID() int64 { - if m != nil { - return m.NodeID - } - return 0 -} - -func (m *SegmentInfo) GetMemSize() int64 { - if m != nil { - return m.MemSize - } - return 0 -} - -func (m *SegmentInfo) GetNumRows() int64 { - if m != nil { - return m.NumRows - } - return 0 -} - -func (m *SegmentInfo) GetIndexName() string { - if m != nil { - return m.IndexName - } - return "" -} - -func (m *SegmentInfo) GetIndexID() int64 { - if m != nil { - return m.IndexID - } - return 0 -} - -func (m *SegmentInfo) GetChannelID() string { - if m != nil { - return m.ChannelID - } - return "" -} - -func (m *SegmentInfo) GetSegmentState() SegmentState { - if m != nil { - return m.SegmentState - } - return SegmentState_None -} - -func (m *SegmentInfo) GetCompactionFrom() []int64 { - if m != nil { - return m.CompactionFrom - } - return nil -} - -func (m *SegmentInfo) GetCreatedByCompaction() bool { - if m != nil { - return m.CreatedByCompaction - } - return false -} - -func (m *SegmentInfo) GetState() commonpb.SegmentState { - if m != nil { - return m.State - } - return commonpb.SegmentState_SegmentStateNone -} - -func (m *SegmentInfo) GetEnableIndex() bool { - if m != nil { - return m.EnableIndex - } - return false -} - -func (m *SegmentInfo) GetIndexPathInfos() []*indexpb.IndexFilePathInfo { - if m != nil { - return m.IndexPathInfos - } - return nil -} - type GetSegmentInfoResponse struct { Status *commonpb.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` Infos []*SegmentInfo `protobuf:"bytes,2,rep,name=infos,proto3" json:"infos,omitempty"` @@ -1144,7 +910,7 @@ func (m *GetSegmentInfoResponse) Reset() { *m = GetSegmentInfoResponse{} func (m *GetSegmentInfoResponse) String() string { return proto.CompactTextString(m) } func (*GetSegmentInfoResponse) ProtoMessage() {} func (*GetSegmentInfoResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{15} + return fileDescriptor_aab7cc9a69ed26e8, []int{13} } func (m *GetSegmentInfoResponse) XXX_Unmarshal(b []byte) error { @@ -1179,13 +945,13 @@ func (m *GetSegmentInfoResponse) GetInfos() []*SegmentInfo { return nil } -//-----------------query node proto---------------- +//-----------------query node grpc request and response proto---------------- type AddQueryChannelRequest struct { Base *commonpb.MsgBase `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"` NodeID int64 `protobuf:"varint,2,opt,name=nodeID,proto3" json:"nodeID,omitempty"` CollectionID int64 `protobuf:"varint,3,opt,name=collectionID,proto3" json:"collectionID,omitempty"` - RequestChannelID string `protobuf:"bytes,4,opt,name=request_channelID,json=requestChannelID,proto3" json:"request_channelID,omitempty"` - ResultChannelID string `protobuf:"bytes,5,opt,name=result_channelID,json=resultChannelID,proto3" json:"result_channelID,omitempty"` + QueryChannel string `protobuf:"bytes,4,opt,name=query_channel,json=queryChannel,proto3" json:"query_channel,omitempty"` + QueryResultChannel string `protobuf:"bytes,5,opt,name=query_result_channel,json=queryResultChannel,proto3" json:"query_result_channel,omitempty"` GlobalSealedSegmentID []int64 `protobuf:"varint,6,rep,packed,name=global_sealed_segmentID,json=globalSealedSegmentID,proto3" json:"global_sealed_segmentID,omitempty"` SeekPosition *internalpb.MsgPosition `protobuf:"bytes,7,opt,name=seek_position,json=seekPosition,proto3" json:"seek_position,omitempty"` GlobalSealedSegments []*SegmentInfo `protobuf:"bytes,8,rep,name=global_sealed_segments,json=globalSealedSegments,proto3" json:"global_sealed_segments,omitempty"` @@ -1198,7 +964,7 @@ func (m *AddQueryChannelRequest) Reset() { *m = AddQueryChannelRequest{} func (m *AddQueryChannelRequest) String() string { return proto.CompactTextString(m) } func (*AddQueryChannelRequest) ProtoMessage() {} func (*AddQueryChannelRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{16} + return fileDescriptor_aab7cc9a69ed26e8, []int{14} } func (m *AddQueryChannelRequest) XXX_Unmarshal(b []byte) error { @@ -1240,16 +1006,16 @@ func (m *AddQueryChannelRequest) GetCollectionID() int64 { return 0 } -func (m *AddQueryChannelRequest) GetRequestChannelID() string { +func (m *AddQueryChannelRequest) GetQueryChannel() string { if m != nil { - return m.RequestChannelID + return m.QueryChannel } return "" } -func (m *AddQueryChannelRequest) GetResultChannelID() string { +func (m *AddQueryChannelRequest) GetQueryResultChannel() string { if m != nil { - return m.ResultChannelID + return m.QueryResultChannel } return "" } @@ -1279,8 +1045,8 @@ type RemoveQueryChannelRequest struct { Base *commonpb.MsgBase `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"` NodeID int64 `protobuf:"varint,2,opt,name=nodeID,proto3" json:"nodeID,omitempty"` CollectionID int64 `protobuf:"varint,3,opt,name=collectionID,proto3" json:"collectionID,omitempty"` - RequestChannelID string `protobuf:"bytes,4,opt,name=request_channelID,json=requestChannelID,proto3" json:"request_channelID,omitempty"` - ResultChannelID string `protobuf:"bytes,5,opt,name=result_channelID,json=resultChannelID,proto3" json:"result_channelID,omitempty"` + QueryChannel string `protobuf:"bytes,4,opt,name=query_channel,json=queryChannel,proto3" json:"query_channel,omitempty"` + QueryResultChannel string `protobuf:"bytes,5,opt,name=query_result_channel,json=queryResultChannel,proto3" json:"query_result_channel,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1290,7 +1056,7 @@ func (m *RemoveQueryChannelRequest) Reset() { *m = RemoveQueryChannelReq func (m *RemoveQueryChannelRequest) String() string { return proto.CompactTextString(m) } func (*RemoveQueryChannelRequest) ProtoMessage() {} func (*RemoveQueryChannelRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{17} + return fileDescriptor_aab7cc9a69ed26e8, []int{15} } func (m *RemoveQueryChannelRequest) XXX_Unmarshal(b []byte) error { @@ -1332,16 +1098,16 @@ func (m *RemoveQueryChannelRequest) GetCollectionID() int64 { return 0 } -func (m *RemoveQueryChannelRequest) GetRequestChannelID() string { +func (m *RemoveQueryChannelRequest) GetQueryChannel() string { if m != nil { - return m.RequestChannelID + return m.QueryChannel } return "" } -func (m *RemoveQueryChannelRequest) GetResultChannelID() string { +func (m *RemoveQueryChannelRequest) GetQueryResultChannel() string { if m != nil { - return m.ResultChannelID + return m.QueryResultChannel } return "" } @@ -1363,7 +1129,7 @@ func (m *WatchDmChannelsRequest) Reset() { *m = WatchDmChannelsRequest{} func (m *WatchDmChannelsRequest) String() string { return proto.CompactTextString(m) } func (*WatchDmChannelsRequest) ProtoMessage() {} func (*WatchDmChannelsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{18} + return fileDescriptor_aab7cc9a69ed26e8, []int{16} } func (m *WatchDmChannelsRequest) XXX_Unmarshal(b []byte) error { @@ -1447,7 +1213,7 @@ func (m *WatchDeltaChannelsRequest) Reset() { *m = WatchDeltaChannelsReq func (m *WatchDeltaChannelsRequest) String() string { return proto.CompactTextString(m) } func (*WatchDeltaChannelsRequest) ProtoMessage() {} func (*WatchDeltaChannelsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{19} + return fileDescriptor_aab7cc9a69ed26e8, []int{17} } func (m *WatchDeltaChannelsRequest) XXX_Unmarshal(b []byte) error { @@ -1496,7 +1262,6 @@ func (m *WatchDeltaChannelsRequest) GetInfos() []*datapb.VchannelInfo { return nil } -//used for handoff task type SegmentLoadInfo struct { SegmentID int64 `protobuf:"varint,1,opt,name=segmentID,proto3" json:"segmentID,omitempty"` PartitionID int64 `protobuf:"varint,2,opt,name=partitionID,proto3" json:"partitionID,omitempty"` @@ -1519,7 +1284,7 @@ func (m *SegmentLoadInfo) Reset() { *m = SegmentLoadInfo{} } func (m *SegmentLoadInfo) String() string { return proto.CompactTextString(m) } func (*SegmentLoadInfo) ProtoMessage() {} func (*SegmentLoadInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{20} + return fileDescriptor_aab7cc9a69ed26e8, []int{18} } func (m *SegmentLoadInfo) XXX_Unmarshal(b []byte) error { @@ -1629,9 +1394,8 @@ type LoadSegmentsRequest struct { DstNodeID int64 `protobuf:"varint,2,opt,name=dst_nodeID,json=dstNodeID,proto3" json:"dst_nodeID,omitempty"` Infos []*SegmentLoadInfo `protobuf:"bytes,3,rep,name=infos,proto3" json:"infos,omitempty"` Schema *schemapb.CollectionSchema `protobuf:"bytes,4,opt,name=schema,proto3" json:"schema,omitempty"` - LoadCondition TriggerCondition `protobuf:"varint,5,opt,name=load_condition,json=loadCondition,proto3,enum=milvus.proto.query.TriggerCondition" json:"load_condition,omitempty"` - SourceNodeID int64 `protobuf:"varint,6,opt,name=source_nodeID,json=sourceNodeID,proto3" json:"source_nodeID,omitempty"` - CollectionID int64 `protobuf:"varint,7,opt,name=collectionID,proto3" json:"collectionID,omitempty"` + SourceNodeID int64 `protobuf:"varint,5,opt,name=source_nodeID,json=sourceNodeID,proto3" json:"source_nodeID,omitempty"` + CollectionID int64 `protobuf:"varint,6,opt,name=collectionID,proto3" json:"collectionID,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -1641,7 +1405,7 @@ func (m *LoadSegmentsRequest) Reset() { *m = LoadSegmentsRequest{} } func (m *LoadSegmentsRequest) String() string { return proto.CompactTextString(m) } func (*LoadSegmentsRequest) ProtoMessage() {} func (*LoadSegmentsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{21} + return fileDescriptor_aab7cc9a69ed26e8, []int{19} } func (m *LoadSegmentsRequest) XXX_Unmarshal(b []byte) error { @@ -1690,13 +1454,6 @@ func (m *LoadSegmentsRequest) GetSchema() *schemapb.CollectionSchema { return nil } -func (m *LoadSegmentsRequest) GetLoadCondition() TriggerCondition { - if m != nil { - return m.LoadCondition - } - return TriggerCondition_handoff -} - func (m *LoadSegmentsRequest) GetSourceNodeID() int64 { if m != nil { return m.SourceNodeID @@ -1728,7 +1485,7 @@ func (m *ReleaseSegmentsRequest) Reset() { *m = ReleaseSegmentsRequest{} func (m *ReleaseSegmentsRequest) String() string { return proto.CompactTextString(m) } func (*ReleaseSegmentsRequest) ProtoMessage() {} func (*ReleaseSegmentsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{22} + return fileDescriptor_aab7cc9a69ed26e8, []int{20} } func (m *ReleaseSegmentsRequest) XXX_Unmarshal(b []byte) error { @@ -1791,314 +1548,7 @@ func (m *ReleaseSegmentsRequest) GetSegmentIDs() []int64 { return nil } -type DmChannelInfo struct { - NodeIDLoaded int64 `protobuf:"varint,1,opt,name=nodeID_loaded,json=nodeIDLoaded,proto3" json:"nodeID_loaded,omitempty"` - ChannelIDs []string `protobuf:"bytes,2,rep,name=channelIDs,proto3" json:"channelIDs,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *DmChannelInfo) Reset() { *m = DmChannelInfo{} } -func (m *DmChannelInfo) String() string { return proto.CompactTextString(m) } -func (*DmChannelInfo) ProtoMessage() {} -func (*DmChannelInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{23} -} - -func (m *DmChannelInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DmChannelInfo.Unmarshal(m, b) -} -func (m *DmChannelInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DmChannelInfo.Marshal(b, m, deterministic) -} -func (m *DmChannelInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_DmChannelInfo.Merge(m, src) -} -func (m *DmChannelInfo) XXX_Size() int { - return xxx_messageInfo_DmChannelInfo.Size(m) -} -func (m *DmChannelInfo) XXX_DiscardUnknown() { - xxx_messageInfo_DmChannelInfo.DiscardUnknown(m) -} - -var xxx_messageInfo_DmChannelInfo proto.InternalMessageInfo - -func (m *DmChannelInfo) GetNodeIDLoaded() int64 { - if m != nil { - return m.NodeIDLoaded - } - return 0 -} - -func (m *DmChannelInfo) GetChannelIDs() []string { - if m != nil { - return m.ChannelIDs - } - return nil -} - -type QueryChannelInfo struct { - CollectionID int64 `protobuf:"varint,1,opt,name=collectionID,proto3" json:"collectionID,omitempty"` - QueryChannelID string `protobuf:"bytes,2,opt,name=query_channelID,json=queryChannelID,proto3" json:"query_channelID,omitempty"` - QueryResultChannelID string `protobuf:"bytes,3,opt,name=query_result_channelID,json=queryResultChannelID,proto3" json:"query_result_channelID,omitempty"` - GlobalSealedSegments []*SegmentInfo `protobuf:"bytes,4,rep,name=global_sealed_segments,json=globalSealedSegments,proto3" json:"global_sealed_segments,omitempty"` - SeekPosition *internalpb.MsgPosition `protobuf:"bytes,5,opt,name=seek_position,json=seekPosition,proto3" json:"seek_position,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *QueryChannelInfo) Reset() { *m = QueryChannelInfo{} } -func (m *QueryChannelInfo) String() string { return proto.CompactTextString(m) } -func (*QueryChannelInfo) ProtoMessage() {} -func (*QueryChannelInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{24} -} - -func (m *QueryChannelInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_QueryChannelInfo.Unmarshal(m, b) -} -func (m *QueryChannelInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_QueryChannelInfo.Marshal(b, m, deterministic) -} -func (m *QueryChannelInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_QueryChannelInfo.Merge(m, src) -} -func (m *QueryChannelInfo) XXX_Size() int { - return xxx_messageInfo_QueryChannelInfo.Size(m) -} -func (m *QueryChannelInfo) XXX_DiscardUnknown() { - xxx_messageInfo_QueryChannelInfo.DiscardUnknown(m) -} - -var xxx_messageInfo_QueryChannelInfo proto.InternalMessageInfo - -func (m *QueryChannelInfo) GetCollectionID() int64 { - if m != nil { - return m.CollectionID - } - return 0 -} - -func (m *QueryChannelInfo) GetQueryChannelID() string { - if m != nil { - return m.QueryChannelID - } - return "" -} - -func (m *QueryChannelInfo) GetQueryResultChannelID() string { - if m != nil { - return m.QueryResultChannelID - } - return "" -} - -func (m *QueryChannelInfo) GetGlobalSealedSegments() []*SegmentInfo { - if m != nil { - return m.GlobalSealedSegments - } - return nil -} - -func (m *QueryChannelInfo) GetSeekPosition() *internalpb.MsgPosition { - if m != nil { - return m.SeekPosition - } - return nil -} - -type CollectionInfo struct { - CollectionID int64 `protobuf:"varint,1,opt,name=collectionID,proto3" json:"collectionID,omitempty"` - PartitionIDs []int64 `protobuf:"varint,2,rep,packed,name=partitionIDs,proto3" json:"partitionIDs,omitempty"` - PartitionStates []*PartitionStates `protobuf:"bytes,3,rep,name=partition_states,json=partitionStates,proto3" json:"partition_states,omitempty"` - ChannelInfos []*DmChannelInfo `protobuf:"bytes,4,rep,name=channel_infos,json=channelInfos,proto3" json:"channel_infos,omitempty"` - LoadType LoadType `protobuf:"varint,5,opt,name=load_type,json=loadType,proto3,enum=milvus.proto.query.LoadType" json:"load_type,omitempty"` - Schema *schemapb.CollectionSchema `protobuf:"bytes,6,opt,name=schema,proto3" json:"schema,omitempty"` - ReleasedPartitionIDs []int64 `protobuf:"varint,7,rep,packed,name=released_partitionIDs,json=releasedPartitionIDs,proto3" json:"released_partitionIDs,omitempty"` - InMemoryPercentage int64 `protobuf:"varint,8,opt,name=inMemory_percentage,json=inMemoryPercentage,proto3" json:"inMemory_percentage,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *CollectionInfo) Reset() { *m = CollectionInfo{} } -func (m *CollectionInfo) String() string { return proto.CompactTextString(m) } -func (*CollectionInfo) ProtoMessage() {} -func (*CollectionInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{25} -} - -func (m *CollectionInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_CollectionInfo.Unmarshal(m, b) -} -func (m *CollectionInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_CollectionInfo.Marshal(b, m, deterministic) -} -func (m *CollectionInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_CollectionInfo.Merge(m, src) -} -func (m *CollectionInfo) XXX_Size() int { - return xxx_messageInfo_CollectionInfo.Size(m) -} -func (m *CollectionInfo) XXX_DiscardUnknown() { - xxx_messageInfo_CollectionInfo.DiscardUnknown(m) -} - -var xxx_messageInfo_CollectionInfo proto.InternalMessageInfo - -func (m *CollectionInfo) GetCollectionID() int64 { - if m != nil { - return m.CollectionID - } - return 0 -} - -func (m *CollectionInfo) GetPartitionIDs() []int64 { - if m != nil { - return m.PartitionIDs - } - return nil -} - -func (m *CollectionInfo) GetPartitionStates() []*PartitionStates { - if m != nil { - return m.PartitionStates - } - return nil -} - -func (m *CollectionInfo) GetChannelInfos() []*DmChannelInfo { - if m != nil { - return m.ChannelInfos - } - return nil -} - -func (m *CollectionInfo) GetLoadType() LoadType { - if m != nil { - return m.LoadType - } - return LoadType_LoadPartition -} - -func (m *CollectionInfo) GetSchema() *schemapb.CollectionSchema { - if m != nil { - return m.Schema - } - return nil -} - -func (m *CollectionInfo) GetReleasedPartitionIDs() []int64 { - if m != nil { - return m.ReleasedPartitionIDs - } - return nil -} - -func (m *CollectionInfo) GetInMemoryPercentage() int64 { - if m != nil { - return m.InMemoryPercentage - } - return 0 -} - -type LoadBalanceSegmentInfo struct { - SegmentID int64 `protobuf:"varint,1,opt,name=segmentID,proto3" json:"segmentID,omitempty"` - PartitionID int64 `protobuf:"varint,2,opt,name=partitionID,proto3" json:"partitionID,omitempty"` - CollectionID int64 `protobuf:"varint,3,opt,name=collectionID,proto3" json:"collectionID,omitempty"` - SourceNodeID int64 `protobuf:"varint,4,opt,name=source_nodeID,json=sourceNodeID,proto3" json:"source_nodeID,omitempty"` - DstNodeID int64 `protobuf:"varint,5,opt,name=dst_nodeID,json=dstNodeID,proto3" json:"dst_nodeID,omitempty"` - SourceDone bool `protobuf:"varint,6,opt,name=source_done,json=sourceDone,proto3" json:"source_done,omitempty"` - DstDone bool `protobuf:"varint,7,opt,name=dst_done,json=dstDone,proto3" json:"dst_done,omitempty"` - ValidInfo bool `protobuf:"varint,8,opt,name=valid_info,json=validInfo,proto3" json:"valid_info,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *LoadBalanceSegmentInfo) Reset() { *m = LoadBalanceSegmentInfo{} } -func (m *LoadBalanceSegmentInfo) String() string { return proto.CompactTextString(m) } -func (*LoadBalanceSegmentInfo) ProtoMessage() {} -func (*LoadBalanceSegmentInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{26} -} - -func (m *LoadBalanceSegmentInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_LoadBalanceSegmentInfo.Unmarshal(m, b) -} -func (m *LoadBalanceSegmentInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_LoadBalanceSegmentInfo.Marshal(b, m, deterministic) -} -func (m *LoadBalanceSegmentInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_LoadBalanceSegmentInfo.Merge(m, src) -} -func (m *LoadBalanceSegmentInfo) XXX_Size() int { - return xxx_messageInfo_LoadBalanceSegmentInfo.Size(m) -} -func (m *LoadBalanceSegmentInfo) XXX_DiscardUnknown() { - xxx_messageInfo_LoadBalanceSegmentInfo.DiscardUnknown(m) -} - -var xxx_messageInfo_LoadBalanceSegmentInfo proto.InternalMessageInfo - -func (m *LoadBalanceSegmentInfo) GetSegmentID() int64 { - if m != nil { - return m.SegmentID - } - return 0 -} - -func (m *LoadBalanceSegmentInfo) GetPartitionID() int64 { - if m != nil { - return m.PartitionID - } - return 0 -} - -func (m *LoadBalanceSegmentInfo) GetCollectionID() int64 { - if m != nil { - return m.CollectionID - } - return 0 -} - -func (m *LoadBalanceSegmentInfo) GetSourceNodeID() int64 { - if m != nil { - return m.SourceNodeID - } - return 0 -} - -func (m *LoadBalanceSegmentInfo) GetDstNodeID() int64 { - if m != nil { - return m.DstNodeID - } - return 0 -} - -func (m *LoadBalanceSegmentInfo) GetSourceDone() bool { - if m != nil { - return m.SourceDone - } - return false -} - -func (m *LoadBalanceSegmentInfo) GetDstDone() bool { - if m != nil { - return m.DstDone - } - return false -} - -func (m *LoadBalanceSegmentInfo) GetValidInfo() bool { - if m != nil { - return m.ValidInfo - } - return false -} - +//----------------request auto triggered by QueryCoord----------------- type HandoffSegmentsRequest struct { Base *commonpb.MsgBase `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"` SegmentInfos []*SegmentInfo `protobuf:"bytes,2,rep,name=segmentInfos,proto3" json:"segmentInfos,omitempty"` @@ -2111,7 +1561,7 @@ func (m *HandoffSegmentsRequest) Reset() { *m = HandoffSegmentsRequest{} func (m *HandoffSegmentsRequest) String() string { return proto.CompactTextString(m) } func (*HandoffSegmentsRequest) ProtoMessage() {} func (*HandoffSegmentsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{27} + return fileDescriptor_aab7cc9a69ed26e8, []int{21} } func (m *HandoffSegmentsRequest) XXX_Unmarshal(b []byte) error { @@ -2161,7 +1611,7 @@ func (m *LoadBalanceRequest) Reset() { *m = LoadBalanceRequest{} } func (m *LoadBalanceRequest) String() string { return proto.CompactTextString(m) } func (*LoadBalanceRequest) ProtoMessage() {} func (*LoadBalanceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{28} + return fileDescriptor_aab7cc9a69ed26e8, []int{22} } func (m *LoadBalanceRequest) XXX_Unmarshal(b []byte) error { @@ -2200,7 +1650,7 @@ func (m *LoadBalanceRequest) GetBalanceReason() TriggerCondition { if m != nil { return m.BalanceReason } - return TriggerCondition_handoff + return TriggerCondition_UnKnowCondition } func (m *LoadBalanceRequest) GetDstNodeIDs() []int64 { @@ -2217,7 +1667,434 @@ func (m *LoadBalanceRequest) GetSealedSegmentIDs() []int64 { return nil } -//---------------- common query proto ----------------- +type DmChannelWatchInfo struct { + CollectionID int64 `protobuf:"varint,1,opt,name=collectionID,proto3" json:"collectionID,omitempty"` + ChannelIDs []string `protobuf:"bytes,2,rep,name=channelIDs,proto3" json:"channelIDs,omitempty"` + DmChannel string `protobuf:"bytes,3,opt,name=dmChannel,proto3" json:"dmChannel,omitempty"` + NodeIDLoaded int64 `protobuf:"varint,4,opt,name=nodeID_loaded,json=nodeIDLoaded,proto3" json:"nodeID_loaded,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *DmChannelWatchInfo) Reset() { *m = DmChannelWatchInfo{} } +func (m *DmChannelWatchInfo) String() string { return proto.CompactTextString(m) } +func (*DmChannelWatchInfo) ProtoMessage() {} +func (*DmChannelWatchInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_aab7cc9a69ed26e8, []int{23} +} + +func (m *DmChannelWatchInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_DmChannelWatchInfo.Unmarshal(m, b) +} +func (m *DmChannelWatchInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_DmChannelWatchInfo.Marshal(b, m, deterministic) +} +func (m *DmChannelWatchInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_DmChannelWatchInfo.Merge(m, src) +} +func (m *DmChannelWatchInfo) XXX_Size() int { + return xxx_messageInfo_DmChannelWatchInfo.Size(m) +} +func (m *DmChannelWatchInfo) XXX_DiscardUnknown() { + xxx_messageInfo_DmChannelWatchInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_DmChannelWatchInfo proto.InternalMessageInfo + +func (m *DmChannelWatchInfo) GetCollectionID() int64 { + if m != nil { + return m.CollectionID + } + return 0 +} + +func (m *DmChannelWatchInfo) GetChannelIDs() []string { + if m != nil { + return m.ChannelIDs + } + return nil +} + +func (m *DmChannelWatchInfo) GetDmChannel() string { + if m != nil { + return m.DmChannel + } + return "" +} + +func (m *DmChannelWatchInfo) GetNodeIDLoaded() int64 { + if m != nil { + return m.NodeIDLoaded + } + return 0 +} + +type QueryChannelInfo struct { + CollectionID int64 `protobuf:"varint,1,opt,name=collectionID,proto3" json:"collectionID,omitempty"` + QueryChannel string `protobuf:"bytes,2,opt,name=query_channel,json=queryChannel,proto3" json:"query_channel,omitempty"` + QueryResultChannel string `protobuf:"bytes,3,opt,name=query_result_channel,json=queryResultChannel,proto3" json:"query_result_channel,omitempty"` + GlobalSealedSegments []*SegmentInfo `protobuf:"bytes,4,rep,name=global_sealed_segments,json=globalSealedSegments,proto3" json:"global_sealed_segments,omitempty"` + SeekPosition *internalpb.MsgPosition `protobuf:"bytes,5,opt,name=seek_position,json=seekPosition,proto3" json:"seek_position,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *QueryChannelInfo) Reset() { *m = QueryChannelInfo{} } +func (m *QueryChannelInfo) String() string { return proto.CompactTextString(m) } +func (*QueryChannelInfo) ProtoMessage() {} +func (*QueryChannelInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_aab7cc9a69ed26e8, []int{24} +} + +func (m *QueryChannelInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_QueryChannelInfo.Unmarshal(m, b) +} +func (m *QueryChannelInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_QueryChannelInfo.Marshal(b, m, deterministic) +} +func (m *QueryChannelInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_QueryChannelInfo.Merge(m, src) +} +func (m *QueryChannelInfo) XXX_Size() int { + return xxx_messageInfo_QueryChannelInfo.Size(m) +} +func (m *QueryChannelInfo) XXX_DiscardUnknown() { + xxx_messageInfo_QueryChannelInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_QueryChannelInfo proto.InternalMessageInfo + +func (m *QueryChannelInfo) GetCollectionID() int64 { + if m != nil { + return m.CollectionID + } + return 0 +} + +func (m *QueryChannelInfo) GetQueryChannel() string { + if m != nil { + return m.QueryChannel + } + return "" +} + +func (m *QueryChannelInfo) GetQueryResultChannel() string { + if m != nil { + return m.QueryResultChannel + } + return "" +} + +func (m *QueryChannelInfo) GetGlobalSealedSegments() []*SegmentInfo { + if m != nil { + return m.GlobalSealedSegments + } + return nil +} + +func (m *QueryChannelInfo) GetSeekPosition() *internalpb.MsgPosition { + if m != nil { + return m.SeekPosition + } + return nil +} + +type PartitionStates struct { + PartitionID int64 `protobuf:"varint,1,opt,name=partitionID,proto3" json:"partitionID,omitempty"` + State PartitionState `protobuf:"varint,2,opt,name=state,proto3,enum=milvus.proto.query.PartitionState" json:"state,omitempty"` + InMemoryPercentage int64 `protobuf:"varint,3,opt,name=inMemory_percentage,json=inMemoryPercentage,proto3" json:"inMemory_percentage,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *PartitionStates) Reset() { *m = PartitionStates{} } +func (m *PartitionStates) String() string { return proto.CompactTextString(m) } +func (*PartitionStates) ProtoMessage() {} +func (*PartitionStates) Descriptor() ([]byte, []int) { + return fileDescriptor_aab7cc9a69ed26e8, []int{25} +} + +func (m *PartitionStates) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_PartitionStates.Unmarshal(m, b) +} +func (m *PartitionStates) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_PartitionStates.Marshal(b, m, deterministic) +} +func (m *PartitionStates) XXX_Merge(src proto.Message) { + xxx_messageInfo_PartitionStates.Merge(m, src) +} +func (m *PartitionStates) XXX_Size() int { + return xxx_messageInfo_PartitionStates.Size(m) +} +func (m *PartitionStates) XXX_DiscardUnknown() { + xxx_messageInfo_PartitionStates.DiscardUnknown(m) +} + +var xxx_messageInfo_PartitionStates proto.InternalMessageInfo + +func (m *PartitionStates) GetPartitionID() int64 { + if m != nil { + return m.PartitionID + } + return 0 +} + +func (m *PartitionStates) GetState() PartitionState { + if m != nil { + return m.State + } + return PartitionState_NotExist +} + +func (m *PartitionStates) GetInMemoryPercentage() int64 { + if m != nil { + return m.InMemoryPercentage + } + return 0 +} + +type SegmentInfo struct { + SegmentID int64 `protobuf:"varint,1,opt,name=segmentID,proto3" json:"segmentID,omitempty"` + CollectionID int64 `protobuf:"varint,2,opt,name=collectionID,proto3" json:"collectionID,omitempty"` + PartitionID int64 `protobuf:"varint,3,opt,name=partitionID,proto3" json:"partitionID,omitempty"` + NodeID int64 `protobuf:"varint,4,opt,name=nodeID,proto3" json:"nodeID,omitempty"` + MemSize int64 `protobuf:"varint,5,opt,name=mem_size,json=memSize,proto3" json:"mem_size,omitempty"` + NumRows int64 `protobuf:"varint,6,opt,name=num_rows,json=numRows,proto3" json:"num_rows,omitempty"` + IndexName string `protobuf:"bytes,7,opt,name=index_name,json=indexName,proto3" json:"index_name,omitempty"` + IndexID int64 `protobuf:"varint,8,opt,name=indexID,proto3" json:"indexID,omitempty"` + DmChannel string `protobuf:"bytes,9,opt,name=dmChannel,proto3" json:"dmChannel,omitempty"` + CompactionFrom []int64 `protobuf:"varint,10,rep,packed,name=compactionFrom,proto3" json:"compactionFrom,omitempty"` + CreatedByCompaction bool `protobuf:"varint,11,opt,name=createdByCompaction,proto3" json:"createdByCompaction,omitempty"` + SegmentState commonpb.SegmentState `protobuf:"varint,12,opt,name=segment_state,json=segmentState,proto3,enum=milvus.proto.common.SegmentState" json:"segment_state,omitempty"` + EnableIndex bool `protobuf:"varint,13,opt,name=enable_index,json=enableIndex,proto3" json:"enable_index,omitempty"` + IndexPathInfos []*indexpb.IndexFilePathInfo `protobuf:"bytes,14,rep,name=index_path_infos,json=indexPathInfos,proto3" json:"index_path_infos,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SegmentInfo) Reset() { *m = SegmentInfo{} } +func (m *SegmentInfo) String() string { return proto.CompactTextString(m) } +func (*SegmentInfo) ProtoMessage() {} +func (*SegmentInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_aab7cc9a69ed26e8, []int{26} +} + +func (m *SegmentInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SegmentInfo.Unmarshal(m, b) +} +func (m *SegmentInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SegmentInfo.Marshal(b, m, deterministic) +} +func (m *SegmentInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_SegmentInfo.Merge(m, src) +} +func (m *SegmentInfo) XXX_Size() int { + return xxx_messageInfo_SegmentInfo.Size(m) +} +func (m *SegmentInfo) XXX_DiscardUnknown() { + xxx_messageInfo_SegmentInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_SegmentInfo proto.InternalMessageInfo + +func (m *SegmentInfo) GetSegmentID() int64 { + if m != nil { + return m.SegmentID + } + return 0 +} + +func (m *SegmentInfo) GetCollectionID() int64 { + if m != nil { + return m.CollectionID + } + return 0 +} + +func (m *SegmentInfo) GetPartitionID() int64 { + if m != nil { + return m.PartitionID + } + return 0 +} + +func (m *SegmentInfo) GetNodeID() int64 { + if m != nil { + return m.NodeID + } + return 0 +} + +func (m *SegmentInfo) GetMemSize() int64 { + if m != nil { + return m.MemSize + } + return 0 +} + +func (m *SegmentInfo) GetNumRows() int64 { + if m != nil { + return m.NumRows + } + return 0 +} + +func (m *SegmentInfo) GetIndexName() string { + if m != nil { + return m.IndexName + } + return "" +} + +func (m *SegmentInfo) GetIndexID() int64 { + if m != nil { + return m.IndexID + } + return 0 +} + +func (m *SegmentInfo) GetDmChannel() string { + if m != nil { + return m.DmChannel + } + return "" +} + +func (m *SegmentInfo) GetCompactionFrom() []int64 { + if m != nil { + return m.CompactionFrom + } + return nil +} + +func (m *SegmentInfo) GetCreatedByCompaction() bool { + if m != nil { + return m.CreatedByCompaction + } + return false +} + +func (m *SegmentInfo) GetSegmentState() commonpb.SegmentState { + if m != nil { + return m.SegmentState + } + return commonpb.SegmentState_SegmentStateNone +} + +func (m *SegmentInfo) GetEnableIndex() bool { + if m != nil { + return m.EnableIndex + } + return false +} + +func (m *SegmentInfo) GetIndexPathInfos() []*indexpb.IndexFilePathInfo { + if m != nil { + return m.IndexPathInfos + } + return nil +} + +type CollectionInfo struct { + CollectionID int64 `protobuf:"varint,1,opt,name=collectionID,proto3" json:"collectionID,omitempty"` + PartitionIDs []int64 `protobuf:"varint,2,rep,packed,name=partitionIDs,proto3" json:"partitionIDs,omitempty"` + PartitionStates []*PartitionStates `protobuf:"bytes,3,rep,name=partition_states,json=partitionStates,proto3" json:"partition_states,omitempty"` + ChannelInfos []*DmChannelWatchInfo `protobuf:"bytes,4,rep,name=channel_infos,json=channelInfos,proto3" json:"channel_infos,omitempty"` + LoadType LoadType `protobuf:"varint,5,opt,name=load_type,json=loadType,proto3,enum=milvus.proto.query.LoadType" json:"load_type,omitempty"` + Schema *schemapb.CollectionSchema `protobuf:"bytes,6,opt,name=schema,proto3" json:"schema,omitempty"` + ReleasedPartitionIDs []int64 `protobuf:"varint,7,rep,packed,name=released_partitionIDs,json=releasedPartitionIDs,proto3" json:"released_partitionIDs,omitempty"` + InMemoryPercentage int64 `protobuf:"varint,8,opt,name=inMemory_percentage,json=inMemoryPercentage,proto3" json:"inMemory_percentage,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *CollectionInfo) Reset() { *m = CollectionInfo{} } +func (m *CollectionInfo) String() string { return proto.CompactTextString(m) } +func (*CollectionInfo) ProtoMessage() {} +func (*CollectionInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_aab7cc9a69ed26e8, []int{27} +} + +func (m *CollectionInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CollectionInfo.Unmarshal(m, b) +} +func (m *CollectionInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CollectionInfo.Marshal(b, m, deterministic) +} +func (m *CollectionInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_CollectionInfo.Merge(m, src) +} +func (m *CollectionInfo) XXX_Size() int { + return xxx_messageInfo_CollectionInfo.Size(m) +} +func (m *CollectionInfo) XXX_DiscardUnknown() { + xxx_messageInfo_CollectionInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_CollectionInfo proto.InternalMessageInfo + +func (m *CollectionInfo) GetCollectionID() int64 { + if m != nil { + return m.CollectionID + } + return 0 +} + +func (m *CollectionInfo) GetPartitionIDs() []int64 { + if m != nil { + return m.PartitionIDs + } + return nil +} + +func (m *CollectionInfo) GetPartitionStates() []*PartitionStates { + if m != nil { + return m.PartitionStates + } + return nil +} + +func (m *CollectionInfo) GetChannelInfos() []*DmChannelWatchInfo { + if m != nil { + return m.ChannelInfos + } + return nil +} + +func (m *CollectionInfo) GetLoadType() LoadType { + if m != nil { + return m.LoadType + } + return LoadType_UnKnowType +} + +func (m *CollectionInfo) GetSchema() *schemapb.CollectionSchema { + if m != nil { + return m.Schema + } + return nil +} + +func (m *CollectionInfo) GetReleasedPartitionIDs() []int64 { + if m != nil { + return m.ReleasedPartitionIDs + } + return nil +} + +func (m *CollectionInfo) GetInMemoryPercentage() int64 { + if m != nil { + return m.InMemoryPercentage + } + return 0 +} + +//---- synchronize messages proto between QueryCoord and QueryNode ----- type SegmentChangeInfo struct { OnlineNodeID int64 `protobuf:"varint,1,opt,name=online_nodeID,json=onlineNodeID,proto3" json:"online_nodeID,omitempty"` OnlineSegments []*SegmentInfo `protobuf:"bytes,2,rep,name=online_segments,json=onlineSegments,proto3" json:"online_segments,omitempty"` @@ -2232,7 +2109,7 @@ func (m *SegmentChangeInfo) Reset() { *m = SegmentChangeInfo{} } func (m *SegmentChangeInfo) String() string { return proto.CompactTextString(m) } func (*SegmentChangeInfo) ProtoMessage() {} func (*SegmentChangeInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{29} + return fileDescriptor_aab7cc9a69ed26e8, []int{28} } func (m *SegmentChangeInfo) XXX_Unmarshal(b []byte) error { @@ -2293,7 +2170,7 @@ func (m *SealedSegmentsChangeInfo) Reset() { *m = SealedSegmentsChangeIn func (m *SealedSegmentsChangeInfo) String() string { return proto.CompactTextString(m) } func (*SealedSegmentsChangeInfo) ProtoMessage() {} func (*SealedSegmentsChangeInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_aab7cc9a69ed26e8, []int{30} + return fileDescriptor_aab7cc9a69ed26e8, []int{29} } func (m *SealedSegmentsChangeInfo) XXX_Unmarshal(b []byte) error { @@ -2331,7 +2208,6 @@ func (m *SealedSegmentsChangeInfo) GetInfos() []*SegmentChangeInfo { func init() { proto.RegisterEnum("milvus.proto.query.PartitionState", PartitionState_name, PartitionState_value) proto.RegisterEnum("milvus.proto.query.TriggerCondition", TriggerCondition_name, TriggerCondition_value) - proto.RegisterEnum("milvus.proto.query.SegmentState", SegmentState_name, SegmentState_value) proto.RegisterEnum("milvus.proto.query.LoadType", LoadType_name, LoadType_value) proto.RegisterType((*ShowCollectionsRequest)(nil), "milvus.proto.query.ShowCollectionsRequest") proto.RegisterType((*ShowCollectionsResponse)(nil), "milvus.proto.query.ShowCollectionsResponse") @@ -2344,10 +2220,8 @@ func init() { proto.RegisterType((*CreateQueryChannelRequest)(nil), "milvus.proto.query.CreateQueryChannelRequest") proto.RegisterType((*CreateQueryChannelResponse)(nil), "milvus.proto.query.CreateQueryChannelResponse") proto.RegisterType((*GetPartitionStatesRequest)(nil), "milvus.proto.query.GetPartitionStatesRequest") - proto.RegisterType((*PartitionStates)(nil), "milvus.proto.query.PartitionStates") proto.RegisterType((*GetPartitionStatesResponse)(nil), "milvus.proto.query.GetPartitionStatesResponse") proto.RegisterType((*GetSegmentInfoRequest)(nil), "milvus.proto.query.GetSegmentInfoRequest") - proto.RegisterType((*SegmentInfo)(nil), "milvus.proto.query.SegmentInfo") proto.RegisterType((*GetSegmentInfoResponse)(nil), "milvus.proto.query.GetSegmentInfoResponse") proto.RegisterType((*AddQueryChannelRequest)(nil), "milvus.proto.query.AddQueryChannelRequest") proto.RegisterType((*RemoveQueryChannelRequest)(nil), "milvus.proto.query.RemoveQueryChannelRequest") @@ -2356,12 +2230,13 @@ func init() { proto.RegisterType((*SegmentLoadInfo)(nil), "milvus.proto.query.SegmentLoadInfo") proto.RegisterType((*LoadSegmentsRequest)(nil), "milvus.proto.query.LoadSegmentsRequest") proto.RegisterType((*ReleaseSegmentsRequest)(nil), "milvus.proto.query.ReleaseSegmentsRequest") - proto.RegisterType((*DmChannelInfo)(nil), "milvus.proto.query.DmChannelInfo") - proto.RegisterType((*QueryChannelInfo)(nil), "milvus.proto.query.QueryChannelInfo") - proto.RegisterType((*CollectionInfo)(nil), "milvus.proto.query.CollectionInfo") - proto.RegisterType((*LoadBalanceSegmentInfo)(nil), "milvus.proto.query.LoadBalanceSegmentInfo") proto.RegisterType((*HandoffSegmentsRequest)(nil), "milvus.proto.query.HandoffSegmentsRequest") proto.RegisterType((*LoadBalanceRequest)(nil), "milvus.proto.query.LoadBalanceRequest") + proto.RegisterType((*DmChannelWatchInfo)(nil), "milvus.proto.query.DmChannelWatchInfo") + proto.RegisterType((*QueryChannelInfo)(nil), "milvus.proto.query.QueryChannelInfo") + proto.RegisterType((*PartitionStates)(nil), "milvus.proto.query.PartitionStates") + proto.RegisterType((*SegmentInfo)(nil), "milvus.proto.query.SegmentInfo") + proto.RegisterType((*CollectionInfo)(nil), "milvus.proto.query.CollectionInfo") proto.RegisterType((*SegmentChangeInfo)(nil), "milvus.proto.query.SegmentChangeInfo") proto.RegisterType((*SealedSegmentsChangeInfo)(nil), "milvus.proto.query.SealedSegmentsChangeInfo") } @@ -2369,158 +2244,148 @@ func init() { func init() { proto.RegisterFile("query_coord.proto", fileDescriptor_aab7cc9a69ed26e8) } var fileDescriptor_aab7cc9a69ed26e8 = []byte{ - // 2413 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x19, 0x4d, 0x6f, 0xdc, 0xc6, - 0x55, 0xdc, 0x0f, 0x69, 0xf7, 0xed, 0x17, 0x35, 0xb6, 0x94, 0xf5, 0x36, 0x76, 0x64, 0x3a, 0xfe, - 0x88, 0xd2, 0xc8, 0x8e, 0x9c, 0x7e, 0x04, 0x6d, 0x0e, 0xb1, 0x36, 0x56, 0x36, 0xb5, 0x65, 0x95, - 0x52, 0x52, 0xd4, 0x30, 0xb0, 0xe5, 0x2e, 0x47, 0x2b, 0xc2, 0x24, 0x67, 0xcd, 0xe1, 0x5a, 0x96, - 0xcf, 0x3d, 0xb4, 0x87, 0xa2, 0x3f, 0xa0, 0x45, 0x81, 0x02, 0x29, 0x8a, 0x1c, 0x7a, 0x6c, 0xcf, - 0xbe, 0xf4, 0xde, 0x5f, 0x50, 0xa0, 0x68, 0xfe, 0x42, 0x7b, 0x2e, 0xe6, 0x83, 0x5c, 0x92, 0x3b, - 0x2b, 0xad, 0xa4, 0x3a, 0x36, 0x8a, 0xde, 0xc8, 0x37, 0x6f, 0xde, 0x7b, 0xf3, 0x3e, 0xe7, 0xbd, - 0x81, 0xc5, 0x27, 0x23, 0x1c, 0x1c, 0x76, 0xfb, 0x84, 0x04, 0xf6, 0xda, 0x30, 0x20, 0x21, 0x41, - 0xc8, 0x73, 0xdc, 0xa7, 0x23, 0x2a, 0xfe, 0xd6, 0xf8, 0x7a, 0xab, 0xda, 0x27, 0x9e, 0x47, 0x7c, - 0x01, 0x6b, 0x55, 0x93, 0x18, 0xad, 0xba, 0xe3, 0x87, 0x38, 0xf0, 0x2d, 0x37, 0x5a, 0xa5, 0xfd, - 0x7d, 0xec, 0x59, 0xf2, 0x4f, 0xb7, 0xad, 0xd0, 0x4a, 0xd2, 0x6f, 0x2d, 0x3a, 0xbe, 0x8d, 0x9f, - 0x25, 0x41, 0xc6, 0xcf, 0x35, 0x58, 0xde, 0xd9, 0x27, 0x07, 0x1b, 0xc4, 0x75, 0x71, 0x3f, 0x74, - 0x88, 0x4f, 0x4d, 0xfc, 0x64, 0x84, 0x69, 0x88, 0x6e, 0x41, 0xa1, 0x67, 0x51, 0xdc, 0xd4, 0x56, - 0xb4, 0x1b, 0x95, 0xf5, 0x37, 0xd7, 0x52, 0xc2, 0x49, 0xa9, 0xee, 0xd3, 0xc1, 0x1d, 0x8b, 0x62, - 0x93, 0x63, 0x22, 0x04, 0x05, 0xbb, 0xd7, 0x69, 0x37, 0x73, 0x2b, 0xda, 0x8d, 0xbc, 0xc9, 0xbf, - 0xd1, 0xdb, 0x50, 0xeb, 0xc7, 0xb4, 0x3b, 0x6d, 0xda, 0xcc, 0xaf, 0xe4, 0x6f, 0xe4, 0xcd, 0x34, - 0xd0, 0xf8, 0xa3, 0x06, 0x6f, 0x4c, 0x88, 0x41, 0x87, 0xc4, 0xa7, 0x18, 0xdd, 0x86, 0x79, 0x1a, - 0x5a, 0xe1, 0x88, 0x4a, 0x49, 0xbe, 0xa5, 0x94, 0x64, 0x87, 0xa3, 0x98, 0x12, 0x75, 0x92, 0x6d, - 0x4e, 0xc1, 0x16, 0xbd, 0x0f, 0xe7, 0x1d, 0xff, 0x3e, 0xf6, 0x48, 0x70, 0xd8, 0x1d, 0xe2, 0xa0, - 0x8f, 0xfd, 0xd0, 0x1a, 0xe0, 0x48, 0xc6, 0x73, 0xd1, 0xda, 0xf6, 0x78, 0xc9, 0xf8, 0x83, 0x06, - 0x4b, 0x4c, 0xd2, 0x6d, 0x2b, 0x08, 0x9d, 0x97, 0xa0, 0x2f, 0x03, 0xaa, 0x49, 0x19, 0x9b, 0x79, - 0xbe, 0x96, 0x82, 0x31, 0x9c, 0x61, 0xc4, 0x9e, 0x9d, 0xad, 0xc0, 0xc5, 0x4d, 0xc1, 0x8c, 0x2f, - 0xa5, 0x61, 0x93, 0x72, 0x9e, 0x45, 0xa1, 0x59, 0x9e, 0xb9, 0x49, 0x9e, 0xa7, 0x51, 0xe7, 0x0b, - 0x0d, 0x96, 0xee, 0x11, 0xcb, 0x1e, 0x1b, 0xfe, 0x9b, 0x57, 0xe7, 0x47, 0x30, 0x2f, 0x02, 0xa7, - 0x59, 0xe0, 0xbc, 0xae, 0xa6, 0x79, 0xc9, 0xa0, 0x1a, 0x4b, 0xb8, 0xc3, 0x01, 0xa6, 0xdc, 0x64, - 0xfc, 0x56, 0x83, 0xa6, 0x89, 0x5d, 0x6c, 0x51, 0xfc, 0x2a, 0x4f, 0xb1, 0x0c, 0xf3, 0x3e, 0xb1, - 0x71, 0xa7, 0xcd, 0x4f, 0x91, 0x37, 0xe5, 0x9f, 0xf1, 0xb5, 0xd4, 0xf0, 0x6b, 0xee, 0xb0, 0x09, - 0x2b, 0x14, 0x4f, 0x63, 0x85, 0x17, 0x63, 0x2b, 0xbc, 0xee, 0x27, 0x1d, 0x5b, 0xaa, 0x98, 0xb2, - 0xd4, 0x4f, 0xe1, 0xc2, 0x46, 0x80, 0xad, 0x10, 0xff, 0x98, 0x65, 0xfe, 0x8d, 0x7d, 0xcb, 0xf7, - 0xb1, 0x1b, 0x1d, 0x21, 0xcb, 0x5c, 0x53, 0x30, 0x6f, 0xc2, 0xc2, 0x30, 0x20, 0xcf, 0x0e, 0x63, - 0xb9, 0xa3, 0x5f, 0xe3, 0xf7, 0x1a, 0xb4, 0x54, 0xb4, 0xcf, 0x92, 0x11, 0xae, 0x43, 0x23, 0x10, - 0xc2, 0x75, 0xfb, 0x82, 0x1e, 0xe7, 0x5a, 0x36, 0xeb, 0x12, 0x2c, 0xb9, 0xa0, 0xab, 0x50, 0x0f, - 0x30, 0x1d, 0xb9, 0x63, 0xbc, 0x3c, 0xc7, 0xab, 0x09, 0xa8, 0x44, 0x33, 0xbe, 0xd2, 0xe0, 0xc2, - 0x26, 0x0e, 0x63, 0xeb, 0x31, 0x76, 0xf8, 0x35, 0xcd, 0xae, 0xbf, 0xd3, 0xa0, 0x91, 0x11, 0x14, - 0xad, 0x40, 0x25, 0x81, 0x23, 0x0d, 0x94, 0x04, 0xa1, 0xef, 0x43, 0x91, 0xe9, 0x0e, 0x73, 0x91, - 0xea, 0xeb, 0xc6, 0xda, 0x64, 0xbd, 0x5f, 0x4b, 0x53, 0x35, 0xc5, 0x06, 0x74, 0x13, 0xce, 0x29, - 0x32, 0xab, 0x14, 0x1f, 0x4d, 0x26, 0x56, 0xe3, 0x4f, 0x1a, 0xb4, 0x54, 0xca, 0x3c, 0x8b, 0xc1, - 0x1f, 0xc2, 0x72, 0x7c, 0x9a, 0xae, 0x8d, 0x69, 0x3f, 0x70, 0x86, 0x3c, 0xcc, 0x78, 0x31, 0xa8, - 0xac, 0x5f, 0x39, 0xfe, 0x3c, 0xd4, 0x5c, 0x8a, 0x49, 0xb4, 0x13, 0x14, 0x8c, 0x5f, 0x69, 0xb0, - 0xb4, 0x89, 0xc3, 0x1d, 0x3c, 0xf0, 0xb0, 0x1f, 0x76, 0xfc, 0x3d, 0x72, 0x7a, 0xc3, 0x5f, 0x02, - 0xa0, 0x92, 0x4e, 0x5c, 0xa8, 0x12, 0x90, 0x59, 0x9c, 0xc0, 0xf8, 0xba, 0x00, 0x95, 0x84, 0x30, - 0xe8, 0x4d, 0x28, 0xc7, 0x14, 0xa4, 0x69, 0xc7, 0x80, 0x09, 0x8a, 0x39, 0x85, 0x5b, 0x65, 0xdc, - 0x23, 0x3f, 0xe9, 0x1e, 0x53, 0x32, 0x38, 0xba, 0x00, 0x25, 0x0f, 0x7b, 0x5d, 0xea, 0x3c, 0xc7, - 0x32, 0x63, 0x2c, 0x78, 0xd8, 0xdb, 0x71, 0x9e, 0x63, 0xb6, 0xe4, 0x8f, 0xbc, 0x6e, 0x40, 0x0e, - 0x68, 0x73, 0x5e, 0x2c, 0xf9, 0x23, 0xcf, 0x24, 0x07, 0x14, 0x5d, 0x04, 0x10, 0xd7, 0x3d, 0xdf, - 0xf2, 0x70, 0x73, 0x81, 0x47, 0x5c, 0x99, 0x43, 0xb6, 0x2c, 0x0f, 0xb3, 0x5c, 0xc1, 0x7f, 0x3a, - 0xed, 0x66, 0x49, 0x6c, 0x94, 0xbf, 0xec, 0xa8, 0x32, 0x4e, 0x3b, 0xed, 0x66, 0x59, 0xec, 0x8b, - 0x01, 0xe8, 0x13, 0xa8, 0xc9, 0x73, 0x77, 0x85, 0x2f, 0x03, 0xf7, 0xe5, 0x15, 0x95, 0xed, 0xa5, - 0x02, 0x85, 0x27, 0x57, 0x69, 0xe2, 0x0f, 0x5d, 0x83, 0x7a, 0x9f, 0x78, 0x43, 0x8b, 0x6b, 0xe7, - 0x6e, 0x40, 0xbc, 0x66, 0x85, 0xdb, 0x29, 0x03, 0x45, 0xb7, 0xe0, 0x5c, 0x9f, 0xe7, 0x2d, 0xfb, - 0xce, 0xe1, 0x46, 0xbc, 0xd4, 0xac, 0xae, 0x68, 0x37, 0x4a, 0xa6, 0x6a, 0x09, 0x7d, 0x2f, 0x0a, - 0xb2, 0x1a, 0x17, 0xec, 0xb2, 0xda, 0xb3, 0x93, 0x92, 0xc9, 0x18, 0xbb, 0x0c, 0x55, 0xec, 0x5b, - 0x3d, 0x17, 0x77, 0xb9, 0x26, 0x9a, 0x75, 0xce, 0xa3, 0x22, 0x60, 0x1d, 0x06, 0x42, 0x0f, 0x40, - 0x17, 0x3a, 0x1d, 0x5a, 0xe1, 0x7e, 0xd7, 0xf1, 0xf7, 0x08, 0x6d, 0x36, 0xb8, 0xef, 0x67, 0xaa, - 0x15, 0xc7, 0x5a, 0xe3, 0x9b, 0xee, 0x3a, 0x2e, 0xde, 0xb6, 0xc2, 0x7d, 0xee, 0xd3, 0x75, 0xbe, - 0x10, 0xfd, 0x52, 0x7e, 0xfd, 0xce, 0xba, 0xfd, 0x59, 0x42, 0xf4, 0x3b, 0x50, 0x14, 0x52, 0x89, - 0x88, 0x7c, 0xeb, 0x08, 0xab, 0x70, 0x66, 0x02, 0xdb, 0xf8, 0x4b, 0x1e, 0x96, 0x3f, 0xb6, 0x6d, - 0x55, 0xdd, 0x39, 0x79, 0xf8, 0x8d, 0xdd, 0x38, 0x97, 0x72, 0xe3, 0x59, 0x72, 0xef, 0xbb, 0xb0, - 0x98, 0xa9, 0x29, 0x32, 0x1a, 0xca, 0xa6, 0x9e, 0xae, 0x2a, 0x9d, 0x36, 0x7a, 0x07, 0xf4, 0x74, - 0x5d, 0x91, 0x15, 0xb5, 0x6c, 0x36, 0x52, 0x95, 0xa5, 0xd3, 0x46, 0xdf, 0x85, 0x37, 0x06, 0x2e, - 0xe9, 0x59, 0x6e, 0x97, 0x62, 0xcb, 0xc5, 0x76, 0x77, 0x1c, 0xcc, 0xf3, 0xdc, 0xef, 0x96, 0xc4, - 0xf2, 0x0e, 0x5f, 0xdd, 0x89, 0x03, 0x7b, 0x93, 0x79, 0x3b, 0x7e, 0xdc, 0x1d, 0x12, 0xca, 0xa3, - 0x94, 0xc7, 0x51, 0x25, 0x9b, 0xb9, 0xe3, 0x36, 0xec, 0x3e, 0x1d, 0x6c, 0x4b, 0x4c, 0xe6, 0xef, - 0xf8, 0x71, 0xf4, 0x87, 0x3e, 0x87, 0x65, 0xa5, 0x00, 0xb4, 0x59, 0x9a, 0xcd, 0x52, 0xe7, 0x15, - 0x02, 0x52, 0xe3, 0x1f, 0x1a, 0x5c, 0x30, 0xb1, 0x47, 0x9e, 0xe2, 0xff, 0x59, 0xdb, 0x19, 0xff, - 0xcc, 0xc1, 0xf2, 0x4f, 0xac, 0xb0, 0xbf, 0xdf, 0xf6, 0x24, 0x90, 0xbe, 0x9a, 0x03, 0x66, 0x32, - 0x78, 0x61, 0x32, 0x83, 0xc7, 0xe1, 0x57, 0x54, 0x19, 0x95, 0xf5, 0xe3, 0x6b, 0x5f, 0x44, 0xe7, - 0x1d, 0x87, 0x5f, 0xe2, 0xea, 0x3b, 0x7f, 0x8a, 0xab, 0x2f, 0xda, 0x80, 0x1a, 0x7e, 0xd6, 0x77, - 0x47, 0x36, 0x96, 0x29, 0x69, 0x81, 0x73, 0xbf, 0xa4, 0xe0, 0x9e, 0xf4, 0xa8, 0xaa, 0xdc, 0x24, - 0x32, 0xd1, 0x0b, 0x0d, 0x2e, 0x08, 0x2d, 0x63, 0x37, 0xb4, 0x5e, 0xad, 0xa2, 0x63, 0x35, 0x16, - 0x4e, 0xa2, 0x46, 0xe3, 0xcb, 0x02, 0x34, 0xe4, 0x01, 0x59, 0xc3, 0x33, 0x43, 0xdd, 0xce, 0x58, - 0x34, 0x37, 0x69, 0xd1, 0x59, 0xc4, 0x8d, 0x2e, 0x9a, 0x85, 0xc4, 0x45, 0xf3, 0x22, 0xc0, 0x9e, - 0x3b, 0xa2, 0xfb, 0xdd, 0xd0, 0xf1, 0xa2, 0xaa, 0x5d, 0xe6, 0x90, 0x5d, 0xc7, 0xc3, 0xe8, 0x63, - 0xa8, 0xf6, 0x1c, 0xdf, 0x25, 0x03, 0x5e, 0x49, 0x28, 0x4f, 0x42, 0x6a, 0x8b, 0xdd, 0x75, 0xb0, - 0x6b, 0xdf, 0xe1, 0xb8, 0x66, 0x45, 0xec, 0x61, 0xe5, 0x83, 0xa2, 0x4b, 0x50, 0x61, 0xa5, 0x9f, - 0xec, 0x89, 0xea, 0xbf, 0x20, 0x58, 0xf8, 0x23, 0xef, 0xc1, 0x1e, 0xaf, 0xff, 0x3f, 0x84, 0x32, - 0x2b, 0x0a, 0xd4, 0x25, 0x83, 0x28, 0xc9, 0x1c, 0x47, 0x7f, 0xbc, 0x01, 0x7d, 0x04, 0x65, 0x9b, - 0x39, 0x02, 0xdf, 0x5d, 0x9e, 0x6a, 0x06, 0xee, 0x2c, 0xf7, 0xc8, 0x80, 0x9b, 0x61, 0xbc, 0x43, - 0x51, 0xde, 0x41, 0x59, 0xde, 0xb3, 0x35, 0xb7, 0x32, 0x5b, 0xcd, 0xad, 0x9e, 0xa5, 0xe6, 0xfe, - 0x3b, 0x07, 0xe7, 0x98, 0x7f, 0x44, 0x49, 0xf4, 0xf4, 0x3e, 0x7e, 0x11, 0xc0, 0xa6, 0x61, 0x37, - 0xe5, 0xe7, 0x65, 0x9b, 0x86, 0x5b, 0xc2, 0xd5, 0x3f, 0x8c, 0xdc, 0x38, 0x3f, 0xfd, 0x7a, 0x9c, - 0xf1, 0xd7, 0xc9, 0x8c, 0x70, 0x9a, 0x91, 0x04, 0xfa, 0x11, 0xd4, 0x5d, 0x62, 0xd9, 0xdd, 0x3e, - 0xf1, 0x6d, 0x51, 0xb7, 0x8a, 0xfc, 0x32, 0xf4, 0xb6, 0x4a, 0x84, 0xdd, 0xc0, 0x19, 0x0c, 0x70, - 0xb0, 0x11, 0xe1, 0x9a, 0x35, 0x97, 0x0f, 0x64, 0xe4, 0x2f, 0xba, 0x02, 0x35, 0x4a, 0x46, 0x41, - 0x1f, 0x47, 0x07, 0x15, 0x17, 0xcd, 0xaa, 0x00, 0x6e, 0xa9, 0xc3, 0x7a, 0x41, 0x71, 0xa7, 0xfe, - 0xbb, 0x06, 0xcb, 0xb2, 0x45, 0x3f, 0xbb, 0xee, 0xa7, 0xe5, 0x97, 0x28, 0x18, 0xf3, 0x47, 0x74, - 0x7d, 0x85, 0x19, 0xba, 0xbe, 0xa2, 0xa2, 0x71, 0x4f, 0x37, 0x16, 0xf3, 0xd9, 0xc6, 0xc2, 0xd8, - 0x85, 0x5a, 0x5c, 0xa3, 0x78, 0xf6, 0xb9, 0x02, 0x35, 0x21, 0x56, 0x97, 0xa9, 0x14, 0xdb, 0x51, - 0xd7, 0x2e, 0x80, 0xf7, 0x38, 0x8c, 0x51, 0x8d, 0x6b, 0xa0, 0xb8, 0xb8, 0x95, 0xcd, 0x04, 0xc4, - 0xf8, 0x73, 0x0e, 0xf4, 0x64, 0x75, 0xe7, 0x94, 0x67, 0x19, 0x07, 0x5c, 0x87, 0x86, 0x9c, 0x31, - 0xc7, 0x25, 0x56, 0x36, 0xe8, 0x4f, 0x92, 0xe4, 0xda, 0xe8, 0x03, 0x58, 0x16, 0x88, 0x13, 0x25, - 0x59, 0x34, 0xea, 0xe7, 0xf9, 0xaa, 0x99, 0xb9, 0x53, 0x4d, 0xbf, 0xd2, 0x14, 0xce, 0x70, 0xa5, - 0x99, 0xbc, 0x72, 0x15, 0x4f, 0x77, 0xe5, 0x32, 0xfe, 0x96, 0x87, 0xfa, 0x38, 0x42, 0x66, 0xd6, - 0xda, 0x2c, 0x83, 0xce, 0x2d, 0xd0, 0xc7, 0x9d, 0x30, 0xef, 0x1e, 0x8e, 0x0c, 0xf2, 0x6c, 0x0f, - 0xdc, 0x18, 0x66, 0x46, 0x07, 0x77, 0xa1, 0x26, 0x75, 0xde, 0x4d, 0x16, 0xbe, 0xcb, 0x2a, 0x62, - 0x29, 0x0f, 0x33, 0xab, 0x89, 0x3a, 0x48, 0xd1, 0x87, 0x50, 0xe6, 0x71, 0x1f, 0x1e, 0x0e, 0xb1, - 0x0c, 0xf9, 0x37, 0x55, 0x34, 0x98, 0xe7, 0xed, 0x1e, 0x0e, 0xb1, 0x59, 0x72, 0xe5, 0xd7, 0x59, - 0xef, 0x20, 0xb7, 0x61, 0x29, 0x10, 0xa1, 0x6d, 0x77, 0x53, 0xea, 0x5b, 0xe0, 0xea, 0x3b, 0x1f, - 0x2d, 0x6e, 0x27, 0xd5, 0x38, 0x65, 0xaa, 0x51, 0x9a, 0x3a, 0xd5, 0xf8, 0x4d, 0x0e, 0x96, 0x99, - 0xec, 0x77, 0x2c, 0xd7, 0xf2, 0xfb, 0x78, 0xf6, 0x06, 0xfd, 0xbf, 0x53, 0xe8, 0x27, 0x32, 0x61, - 0x41, 0x91, 0x09, 0xd3, 0x45, 0xa1, 0x98, 0x2d, 0x0a, 0x6f, 0x41, 0x45, 0xd2, 0xb0, 0x89, 0x8f, - 0xb9, 0xb2, 0x4b, 0x26, 0x08, 0x50, 0x9b, 0xf8, 0xbc, 0xa5, 0x67, 0xfb, 0xf9, 0xea, 0x02, 0x5f, - 0x5d, 0xb0, 0x69, 0xc8, 0x97, 0x2e, 0x02, 0x3c, 0xb5, 0x5c, 0xc7, 0xe6, 0x4e, 0xc2, 0xd5, 0x54, - 0x32, 0xcb, 0x1c, 0xc2, 0x54, 0x60, 0xfc, 0x5a, 0x83, 0xe5, 0x4f, 0x2d, 0xdf, 0x26, 0x7b, 0x7b, - 0x67, 0xcf, 0xaf, 0x1b, 0x10, 0x35, 0xec, 0x9d, 0x93, 0x34, 0x94, 0xa9, 0x4d, 0xc6, 0x2f, 0x72, - 0x80, 0x12, 0xf6, 0x3a, 0xbd, 0x34, 0x57, 0xa1, 0x9e, 0xd2, 0x7c, 0xfc, 0x9e, 0x93, 0x54, 0x3d, - 0x65, 0x75, 0xaf, 0x27, 0x58, 0x75, 0x03, 0x6c, 0x51, 0xe2, 0x73, 0x33, 0xce, 0x5c, 0xf7, 0x7a, - 0x91, 0x98, 0x6c, 0x2b, 0xb3, 0xd4, 0xd8, 0x90, 0xd1, 0x18, 0x10, 0x62, 0x4b, 0x52, 0xd6, 0xf0, - 0x64, 0xbb, 0xc9, 0xa8, 0x6e, 0xe8, 0x34, 0xdd, 0x48, 0x52, 0xe3, 0x5f, 0x1a, 0x2c, 0xca, 0x5f, - 0x16, 0xbf, 0x03, 0x1c, 0x15, 0x08, 0xe2, 0xbb, 0x8e, 0x1f, 0x7b, 0x94, 0xcc, 0x48, 0x02, 0x28, - 0x5d, 0xe6, 0x53, 0x68, 0x48, 0xa4, 0x38, 0xc3, 0xce, 0x68, 0x8d, 0xba, 0xd8, 0x17, 0xe7, 0xd6, - 0xab, 0x50, 0x27, 0x7b, 0x7b, 0x49, 0x7e, 0xc2, 0xcd, 0x6b, 0x12, 0x2a, 0x19, 0x7e, 0x06, 0x7a, - 0x84, 0x76, 0xd2, 0x9c, 0xde, 0x90, 0x1b, 0xe3, 0x0e, 0xf5, 0x97, 0x1a, 0x34, 0xd3, 0x19, 0x3e, - 0x71, 0xfc, 0x93, 0x3b, 0xc2, 0x0f, 0xd2, 0x03, 0x8e, 0xab, 0x47, 0xc8, 0x33, 0xe6, 0x23, 0x6f, - 0x55, 0xab, 0xcf, 0xa1, 0x9e, 0x4e, 0xc5, 0xa8, 0x0a, 0xa5, 0x2d, 0x12, 0x7e, 0xf2, 0xcc, 0xa1, - 0xa1, 0x3e, 0x87, 0xea, 0x00, 0x5b, 0x24, 0xdc, 0x0e, 0x30, 0xc5, 0x7e, 0xa8, 0x6b, 0x08, 0x60, - 0xfe, 0x81, 0xdf, 0x76, 0xe8, 0x63, 0x3d, 0x87, 0xce, 0xc9, 0x81, 0xaf, 0xe5, 0x76, 0x64, 0x5e, - 0xd2, 0xf3, 0x6c, 0x7b, 0xfc, 0x57, 0x40, 0x3a, 0x54, 0x63, 0x94, 0xcd, 0xed, 0xcf, 0xf5, 0x22, - 0x2a, 0x43, 0x51, 0x7c, 0xce, 0xaf, 0x3e, 0x00, 0x3d, 0xeb, 0x70, 0xa8, 0x02, 0x0b, 0xfb, 0x22, - 0x5e, 0xf5, 0x39, 0xd4, 0x80, 0x8a, 0x3b, 0x0e, 0x15, 0x5d, 0x63, 0x80, 0x41, 0x30, 0xec, 0xcb, - 0xa0, 0xd1, 0x73, 0x8c, 0x1b, 0xb3, 0x5a, 0x9b, 0x1c, 0xf8, 0x7a, 0x7e, 0xf5, 0x33, 0xa8, 0x26, - 0xa7, 0x58, 0xa8, 0x04, 0x85, 0x2d, 0xe2, 0x63, 0x7d, 0x8e, 0x91, 0xdd, 0x0c, 0xc8, 0x81, 0xe3, - 0x0f, 0xc4, 0x19, 0xee, 0x06, 0xe4, 0x39, 0xf6, 0xf5, 0x1c, 0x5b, 0x60, 0x7e, 0xc9, 0x16, 0xf2, - 0x6c, 0x41, 0x38, 0xa9, 0x5e, 0x58, 0x7d, 0x1f, 0x4a, 0x51, 0x49, 0x40, 0x8b, 0x50, 0x4b, 0x3d, - 0x17, 0xe9, 0x73, 0x08, 0x89, 0xeb, 0xe4, 0x38, 0xf9, 0xeb, 0xda, 0xfa, 0x5f, 0x2b, 0x00, 0xe2, - 0x56, 0x42, 0x48, 0x60, 0xa3, 0x21, 0xa0, 0x4d, 0x1c, 0x6e, 0x10, 0x6f, 0x48, 0xfc, 0x48, 0x24, - 0x8a, 0x6e, 0x4d, 0x29, 0xda, 0x93, 0xa8, 0xf2, 0x94, 0xad, 0x6b, 0x53, 0x76, 0x64, 0xd0, 0x8d, - 0x39, 0xe4, 0x71, 0x8e, 0xac, 0x9b, 0xda, 0x75, 0xfa, 0x8f, 0xa3, 0xb7, 0x86, 0x23, 0x38, 0x66, - 0x50, 0x23, 0x8e, 0x99, 0x8a, 0x2d, 0x7f, 0x76, 0xc2, 0xc0, 0xf1, 0x07, 0xd1, 0x30, 0xce, 0x98, - 0x43, 0x4f, 0xe0, 0xfc, 0x26, 0xe6, 0xdc, 0x1d, 0x1a, 0x3a, 0x7d, 0x1a, 0x31, 0x5c, 0x9f, 0xce, - 0x70, 0x02, 0xf9, 0x84, 0x2c, 0x5d, 0x68, 0x64, 0xde, 0xc4, 0xd1, 0xaa, 0xd2, 0xdf, 0x95, 0xef, - 0xf7, 0xad, 0x77, 0x67, 0xc2, 0x8d, 0xb9, 0x39, 0x50, 0x4f, 0xbf, 0x17, 0xa3, 0x77, 0xa6, 0x11, - 0x98, 0x78, 0x60, 0x6b, 0xad, 0xce, 0x82, 0x1a, 0xb3, 0x7a, 0x08, 0xf5, 0xf4, 0x8b, 0xa4, 0x9a, - 0x95, 0xf2, 0xd5, 0xb2, 0x75, 0xd4, 0x1c, 0xd4, 0x98, 0x43, 0x3f, 0x83, 0xc5, 0x89, 0x67, 0x40, - 0xf4, 0x6d, 0x15, 0xf9, 0x69, 0xaf, 0x85, 0xc7, 0x71, 0x90, 0xd2, 0x8f, 0xb5, 0x38, 0x5d, 0xfa, - 0x89, 0xf7, 0xe0, 0xd9, 0xa5, 0x4f, 0x90, 0x3f, 0x4a, 0xfa, 0x13, 0x73, 0x18, 0x01, 0x9a, 0x7c, - 0x08, 0x44, 0xef, 0xa9, 0x58, 0x4c, 0x7d, 0x8c, 0x6c, 0xad, 0xcd, 0x8a, 0x1e, 0x9b, 0x7c, 0xc4, - 0xa3, 0x35, 0xfb, 0x64, 0xa6, 0x64, 0x3b, 0xf5, 0x0d, 0x50, 0xcd, 0x76, 0xfa, 0x2b, 0x97, 0x70, - 0xea, 0xf4, 0x78, 0x5d, 0x6d, 0x2b, 0xe5, 0xcb, 0x93, 0xda, 0xa9, 0xd5, 0xd3, 0x7a, 0x63, 0x0e, - 0xed, 0x42, 0x25, 0x71, 0xd5, 0x41, 0xd7, 0xa6, 0xf9, 0x44, 0xfa, 0x2e, 0x74, 0x9c, 0xb9, 0xba, - 0x00, 0x9b, 0x38, 0xbc, 0x8f, 0xc3, 0xc0, 0xe9, 0xd3, 0x2c, 0x51, 0xf9, 0x33, 0x46, 0x88, 0x88, - 0x5e, 0x3f, 0x16, 0x2f, 0x12, 0x7b, 0xfd, 0x2b, 0x80, 0x32, 0xb7, 0x19, 0xab, 0xfd, 0xff, 0x4f, - 0xe3, 0x2f, 0x21, 0x8d, 0x3f, 0x82, 0x46, 0xe6, 0x6d, 0x45, 0x9d, 0xc6, 0xd5, 0x0f, 0x30, 0xc7, - 0x39, 0x48, 0x0f, 0xd0, 0xe4, 0x03, 0x80, 0x3a, 0xb0, 0xa6, 0x3e, 0x14, 0x1c, 0xc7, 0xe3, 0x11, - 0x34, 0x32, 0x03, 0x78, 0xf5, 0x09, 0xd4, 0x53, 0xfa, 0x19, 0x4e, 0x30, 0x39, 0x78, 0x56, 0x9f, - 0x60, 0xea, 0x80, 0xfa, 0x38, 0x1e, 0x5f, 0x40, 0x35, 0x39, 0xf2, 0x43, 0xd7, 0xa7, 0x45, 0x67, - 0xa6, 0x71, 0x7a, 0xf5, 0xf9, 0xfa, 0xe5, 0xd7, 0xb3, 0x47, 0xd0, 0xc8, 0x4c, 0xe5, 0xd4, 0xd6, - 0x55, 0x8f, 0xee, 0x8e, 0xa3, 0xfe, 0x0d, 0x66, 0xe0, 0x97, 0x9d, 0x2b, 0xef, 0x7c, 0xf0, 0x70, - 0x7d, 0xe0, 0x84, 0xfb, 0xa3, 0x1e, 0x3b, 0xe5, 0x4d, 0x81, 0xf9, 0x9e, 0x43, 0xe4, 0xd7, 0xcd, - 0x28, 0x69, 0xdc, 0xe4, 0x94, 0x6e, 0x72, 0x69, 0x87, 0xbd, 0xde, 0x3c, 0xff, 0xbd, 0xfd, 0x9f, - 0x00, 0x00, 0x00, 0xff, 0xff, 0xec, 0xe8, 0x29, 0x4c, 0xf1, 0x29, 0x00, 0x00, + // 2254 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x59, 0xcf, 0x73, 0xdc, 0x48, + 0xf5, 0xb7, 0xe6, 0x97, 0x3d, 0x6f, 0xc6, 0x33, 0x72, 0x27, 0xf6, 0x4e, 0xe6, 0xbb, 0xc9, 0x66, + 0xb5, 0x9b, 0x6c, 0xbe, 0x59, 0xd6, 0x0e, 0x0e, 0x50, 0x6c, 0xc1, 0x1e, 0x62, 0x9b, 0x78, 0x4d, + 0x12, 0xc7, 0xc8, 0xce, 0x52, 0xa4, 0x52, 0x25, 0x34, 0xa3, 0xf6, 0x58, 0x15, 0x49, 0x3d, 0x51, + 0x6b, 0xd6, 0x76, 0xce, 0x1c, 0xe0, 0x40, 0xf1, 0x07, 0x40, 0x71, 0x5a, 0x0a, 0x52, 0xc5, 0x1e, + 0xb9, 0xe7, 0xc2, 0x9f, 0xc0, 0x95, 0xa2, 0x0a, 0xfe, 0x05, 0xee, 0x54, 0xb7, 0x5a, 0x1a, 0xfd, + 0x68, 0x79, 0xc6, 0x76, 0x79, 0x93, 0xa2, 0xb8, 0x49, 0xdd, 0xaf, 0xfb, 0xbd, 0x7e, 0x3f, 0x3f, + 0xdd, 0x0f, 0x16, 0x5e, 0x8c, 0xb0, 0x7f, 0x6c, 0xf4, 0x09, 0xf1, 0xad, 0xe5, 0xa1, 0x4f, 0x02, + 0x82, 0x90, 0x6b, 0x3b, 0x5f, 0x8e, 0x68, 0xf8, 0xb7, 0xcc, 0xe7, 0xbb, 0xcd, 0x3e, 0x71, 0x5d, + 0xe2, 0x85, 0x63, 0xdd, 0x66, 0x92, 0xa2, 0xdb, 0xb2, 0xbd, 0x00, 0xfb, 0x9e, 0xe9, 0x44, 0xb3, + 0xb4, 0x7f, 0x80, 0x5d, 0x53, 0xfc, 0xa9, 0x96, 0x19, 0x98, 0xc9, 0xfd, 0xbb, 0x0b, 0xb6, 0x67, + 0xe1, 0xa3, 0xe4, 0x90, 0xf6, 0x0b, 0x05, 0x96, 0x76, 0x0f, 0xc8, 0xe1, 0x3a, 0x71, 0x1c, 0xdc, + 0x0f, 0x6c, 0xe2, 0x51, 0x1d, 0xbf, 0x18, 0x61, 0x1a, 0xa0, 0x3b, 0x50, 0xe9, 0x99, 0x14, 0x77, + 0x94, 0xeb, 0xca, 0xad, 0xc6, 0xea, 0xbb, 0xcb, 0x29, 0xe1, 0x84, 0x54, 0x8f, 0xe8, 0x60, 0xcd, + 0xa4, 0x58, 0xe7, 0x94, 0x08, 0x41, 0xc5, 0xea, 0x6d, 0x6d, 0x74, 0x4a, 0xd7, 0x95, 0x5b, 0x65, + 0x9d, 0x7f, 0xa3, 0x0f, 0x61, 0xbe, 0x1f, 0xef, 0xbd, 0xb5, 0x41, 0x3b, 0xe5, 0xeb, 0xe5, 0x5b, + 0x65, 0x3d, 0x3d, 0xa8, 0xfd, 0x51, 0x81, 0x77, 0x72, 0x62, 0xd0, 0x21, 0xf1, 0x28, 0x46, 0x77, + 0xa1, 0x46, 0x03, 0x33, 0x18, 0x51, 0x21, 0xc9, 0xff, 0x49, 0x25, 0xd9, 0xe5, 0x24, 0xba, 0x20, + 0xcd, 0xb3, 0x2d, 0x49, 0xd8, 0xa2, 0x6f, 0xc3, 0x65, 0xdb, 0x7b, 0x84, 0x5d, 0xe2, 0x1f, 0x1b, + 0x43, 0xec, 0xf7, 0xb1, 0x17, 0x98, 0x03, 0x1c, 0xc9, 0x78, 0x29, 0x9a, 0xdb, 0x19, 0x4f, 0x69, + 0x7f, 0x50, 0x60, 0x91, 0x49, 0xba, 0x63, 0xfa, 0x81, 0x7d, 0x01, 0xfa, 0xd2, 0xa0, 0x99, 0x94, + 0xb1, 0x53, 0xe6, 0x73, 0xa9, 0x31, 0x46, 0x33, 0x8c, 0xd8, 0xb3, 0xb3, 0x55, 0xb8, 0xb8, 0xa9, + 0x31, 0xed, 0x2b, 0x61, 0xd8, 0xa4, 0x9c, 0xe7, 0x51, 0x68, 0x96, 0x67, 0x29, 0xcf, 0xf3, 0x2c, + 0xea, 0x7c, 0xad, 0xc0, 0xe2, 0x43, 0x62, 0x5a, 0x63, 0xc3, 0x7f, 0xf3, 0xea, 0xfc, 0x0c, 0x6a, + 0x61, 0xe0, 0x74, 0x2a, 0x9c, 0xd7, 0x8d, 0x34, 0x2f, 0x11, 0x54, 0x63, 0x09, 0x77, 0xf9, 0x80, + 0x2e, 0x16, 0x69, 0xbf, 0x53, 0xa0, 0xa3, 0x63, 0x07, 0x9b, 0x14, 0xbf, 0xc9, 0x53, 0x2c, 0x41, + 0xcd, 0x23, 0x16, 0xde, 0xda, 0xe0, 0xa7, 0x28, 0xeb, 0xe2, 0x4f, 0xfb, 0x97, 0xd0, 0xf0, 0x5b, + 0xee, 0xb0, 0x09, 0x2b, 0x54, 0xcf, 0x62, 0x85, 0xd7, 0x63, 0x2b, 0xbc, 0xed, 0x27, 0x1d, 0x5b, + 0xaa, 0x9a, 0xb2, 0xd4, 0xcf, 0xe0, 0xca, 0xba, 0x8f, 0xcd, 0x00, 0xff, 0x84, 0x65, 0xfe, 0xf5, + 0x03, 0xd3, 0xf3, 0xb0, 0x13, 0x1d, 0x21, 0xcb, 0x5c, 0x91, 0x30, 0xef, 0xc0, 0xec, 0xd0, 0x27, + 0x47, 0xc7, 0xb1, 0xdc, 0xd1, 0xaf, 0xf6, 0x27, 0x05, 0xba, 0xb2, 0xbd, 0xcf, 0x93, 0x11, 0x3e, + 0x80, 0x79, 0x51, 0xc2, 0xc2, 0xdd, 0x38, 0xcf, 0xba, 0xde, 0x7c, 0x91, 0xe0, 0x80, 0xee, 0xc0, + 0xe5, 0x90, 0xc8, 0xc7, 0x74, 0xe4, 0x04, 0x31, 0x6d, 0x99, 0xd3, 0x22, 0x3e, 0xa7, 0xf3, 0x29, + 0xb1, 0x42, 0x7b, 0xa5, 0xc0, 0x95, 0x4d, 0x1c, 0xc4, 0x46, 0x64, 0x5c, 0xf1, 0x5b, 0x9a, 0x64, + 0xbf, 0x56, 0xa0, 0x2b, 0x93, 0xf5, 0x3c, 0x6a, 0x7d, 0x0a, 0x4b, 0x31, 0x0f, 0xc3, 0xc2, 0xb4, + 0xef, 0xdb, 0x43, 0xee, 0xcc, 0x3c, 0xe5, 0x36, 0x56, 0x3f, 0x58, 0xce, 0xa3, 0x84, 0xe5, 0xac, + 0x04, 0x8b, 0xf1, 0x16, 0x1b, 0x89, 0x1d, 0xb4, 0x5f, 0x2b, 0xb0, 0xb8, 0x89, 0x83, 0x5d, 0x3c, + 0x70, 0xb1, 0x17, 0x6c, 0x79, 0xfb, 0xe4, 0xec, 0x7a, 0xbd, 0x06, 0x40, 0xc5, 0x3e, 0x71, 0x39, + 0x48, 0x8c, 0x4c, 0xa3, 0x63, 0x8e, 0x3e, 0xb2, 0xf2, 0x9c, 0x47, 0x77, 0xdf, 0x85, 0xaa, 0xed, + 0xed, 0x93, 0x48, 0x55, 0xef, 0xc9, 0x54, 0x95, 0x64, 0x16, 0x52, 0x6b, 0x7f, 0x29, 0xc3, 0xd2, + 0x3d, 0xcb, 0x92, 0x85, 0xdd, 0xe9, 0xf5, 0x32, 0x8e, 0xee, 0x52, 0x32, 0xba, 0xa7, 0xf2, 0xb9, + 0x5c, 0x48, 0x55, 0x4e, 0x11, 0x52, 0xd5, 0xa2, 0x90, 0x42, 0xdf, 0x83, 0x77, 0x06, 0x0e, 0xe9, + 0x99, 0x8e, 0x41, 0xb1, 0xe9, 0x60, 0xcb, 0x88, 0xcd, 0xd4, 0xa9, 0x71, 0xbb, 0x2d, 0x86, 0xd3, + 0xbb, 0x7c, 0x36, 0x52, 0xd0, 0x06, 0xda, 0x84, 0x79, 0x8a, 0xf1, 0x73, 0x63, 0x48, 0x28, 0xf7, + 0xa5, 0xce, 0x2c, 0xd7, 0x82, 0x96, 0xd6, 0x42, 0x0c, 0x42, 0x1f, 0xd1, 0xc1, 0x8e, 0xa0, 0xd4, + 0x9b, 0x6c, 0x61, 0xf4, 0x87, 0x9e, 0xc0, 0x92, 0x54, 0x00, 0xda, 0x99, 0x9b, 0xce, 0x50, 0x97, + 0x25, 0x02, 0x52, 0xed, 0x1f, 0x0a, 0x5c, 0xd1, 0xb1, 0x4b, 0xbe, 0xc4, 0xff, 0xad, 0xa6, 0xd3, + 0xfe, 0x59, 0x82, 0xa5, 0x9f, 0x9a, 0x41, 0xff, 0x60, 0xc3, 0x15, 0x43, 0xf4, 0xcd, 0x9c, 0xef, + 0x3a, 0x34, 0x12, 0xa9, 0x4f, 0x60, 0x8c, 0xe4, 0xd0, 0x38, 0xf8, 0xaa, 0x32, 0x9b, 0xb2, 0xcb, + 0xc8, 0xf2, 0x17, 0xe2, 0xc0, 0x89, 0xe0, 0x4b, 0xd4, 0xfd, 0xda, 0x19, 0xea, 0x3e, 0x5a, 0x87, + 0x79, 0x7c, 0xd4, 0x77, 0x46, 0x16, 0x36, 0x42, 0xee, 0xb3, 0x9c, 0xfb, 0x35, 0x09, 0xf7, 0xa4, + 0x43, 0x35, 0xc5, 0xa2, 0x2d, 0x9e, 0x00, 0x5e, 0x2b, 0x70, 0x25, 0xd4, 0x32, 0x76, 0x02, 0xf3, + 0xcd, 0x2a, 0x3a, 0x56, 0x63, 0xe5, 0x34, 0x6a, 0xd4, 0xbe, 0xaa, 0x40, 0x5b, 0x1c, 0x90, 0xa1, + 0x3d, 0x36, 0x85, 0xde, 0x85, 0xfa, 0x38, 0xd2, 0x43, 0xc0, 0x30, 0x1e, 0xc8, 0x5a, 0xb4, 0x94, + 0xb7, 0xe8, 0x34, 0xe2, 0x46, 0xe5, 0xb5, 0x92, 0x28, 0xaf, 0x57, 0x01, 0xf6, 0x9d, 0x11, 0x3d, + 0x30, 0x02, 0xdb, 0xc5, 0x02, 0xe4, 0xd4, 0xf9, 0xc8, 0x9e, 0xed, 0x62, 0x74, 0x0f, 0x9a, 0x3d, + 0xdb, 0x73, 0xc8, 0xc0, 0x18, 0x9a, 0xc1, 0x01, 0xe5, 0x39, 0x48, 0x6e, 0xb1, 0xfb, 0x36, 0x76, + 0xac, 0x35, 0x4e, 0xab, 0x37, 0xc2, 0x35, 0x3b, 0x6c, 0x09, 0xba, 0x06, 0x0d, 0x6f, 0xe4, 0x1a, + 0x64, 0xdf, 0xf0, 0xc9, 0x21, 0xe5, 0x79, 0xa9, 0xac, 0xd7, 0xbd, 0x91, 0xfb, 0x78, 0x5f, 0x27, + 0x87, 0x14, 0xfd, 0x10, 0xea, 0xac, 0x24, 0x50, 0x87, 0x0c, 0xa2, 0x1c, 0x33, 0x69, 0xff, 0xf1, + 0x02, 0xf4, 0x19, 0xd4, 0x2d, 0xe6, 0x08, 0x7c, 0x75, 0xbd, 0xd0, 0x0c, 0xdc, 0x59, 0x1e, 0x92, + 0x01, 0x37, 0xc3, 0x78, 0x05, 0xba, 0x09, 0xad, 0x3e, 0x71, 0x87, 0x26, 0x57, 0xd1, 0x7d, 0x9f, + 0xb8, 0x1d, 0xe0, 0x59, 0x36, 0x33, 0x8a, 0xde, 0x87, 0x26, 0xf6, 0xcc, 0x9e, 0xc3, 0x3c, 0xd7, + 0xc2, 0x47, 0x9d, 0xc6, 0x75, 0xe5, 0xd6, 0x9c, 0xde, 0x08, 0xc7, 0xb6, 0xd8, 0x10, 0x7a, 0x0c, + 0x6a, 0x78, 0x67, 0x67, 0x9a, 0x12, 0x0e, 0xde, 0xe4, 0x02, 0xdd, 0xc8, 0x26, 0x61, 0x0b, 0x1f, + 0x2d, 0xf3, 0x45, 0xf7, 0x6d, 0x07, 0x33, 0x2d, 0x71, 0xb1, 0x5a, 0x7c, 0x22, 0xfa, 0xa5, 0xda, + 0xab, 0x12, 0x5c, 0x62, 0xfe, 0x11, 0xe5, 0xd0, 0xb3, 0xfb, 0xf8, 0x55, 0x00, 0x8b, 0x06, 0x46, + 0xca, 0xcf, 0xeb, 0x16, 0x0d, 0xb6, 0x43, 0x57, 0xff, 0x34, 0x72, 0xe3, 0x72, 0x31, 0x6a, 0xc9, + 0xf8, 0x6b, 0x3e, 0x23, 0x9c, 0xe5, 0x3e, 0xc6, 0x32, 0x31, 0x25, 0x23, 0xbf, 0x8f, 0x8d, 0x14, + 0xca, 0x6e, 0x86, 0x83, 0xdb, 0xf2, 0x48, 0xac, 0x49, 0xd0, 0xc9, 0xdf, 0x15, 0x58, 0x12, 0x57, + 0x8a, 0xf3, 0xab, 0xab, 0x28, 0x25, 0x44, 0xf1, 0x53, 0x3e, 0x01, 0x9e, 0x56, 0xa6, 0x80, 0xa7, + 0x55, 0xc9, 0x45, 0x23, 0x0d, 0xd1, 0x6a, 0x59, 0x88, 0xa6, 0xfd, 0x46, 0x81, 0xa5, 0xcf, 0x4d, + 0xcf, 0x22, 0xfb, 0xfb, 0xe7, 0x3f, 0xe0, 0x3a, 0x34, 0xe9, 0x38, 0xc1, 0x4e, 0x0d, 0xc1, 0x52, + 0x8b, 0xb4, 0x5f, 0x96, 0x00, 0x31, 0x77, 0x58, 0x33, 0x1d, 0xd3, 0xeb, 0xe3, 0xb3, 0x4b, 0x73, + 0x03, 0x5a, 0x29, 0x27, 0x88, 0x1f, 0x80, 0x92, 0x5e, 0x40, 0xd1, 0x03, 0x68, 0xf5, 0x42, 0x56, + 0x86, 0x8f, 0x4d, 0x4a, 0x3c, 0x6e, 0x87, 0xd6, 0xea, 0x87, 0x32, 0xb1, 0xf7, 0x7c, 0x7b, 0x30, + 0xc0, 0xfe, 0x3a, 0xf1, 0xac, 0x10, 0xe4, 0xcc, 0xf7, 0x22, 0x31, 0xd9, 0x52, 0xf4, 0x1e, 0x34, + 0xc6, 0x11, 0x11, 0x5d, 0x18, 0x20, 0x0e, 0x09, 0x8a, 0x3e, 0x86, 0x85, 0x2c, 0x00, 0x8b, 0x0c, + 0xa7, 0xd2, 0x34, 0xf6, 0xa2, 0xda, 0x6f, 0x15, 0x40, 0x71, 0xd1, 0xe7, 0xc5, 0x89, 0xe7, 0xf4, + 0x69, 0xee, 0x81, 0xd7, 0x00, 0xa2, 0x0a, 0x21, 0x0e, 0x5e, 0xd7, 0x13, 0x23, 0xac, 0x2e, 0x58, + 0xd1, 0xce, 0xe2, 0x26, 0x36, 0x1e, 0x60, 0xf1, 0x13, 0x1e, 0xc1, 0x70, 0x88, 0x69, 0x61, 0x2b, + 0x72, 0xbf, 0x70, 0xf0, 0x21, 0x1f, 0xd3, 0xbe, 0x2e, 0x81, 0x9a, 0x04, 0x5d, 0x53, 0xcb, 0x76, + 0x31, 0xb7, 0xc6, 0x13, 0x10, 0x66, 0xe5, 0x1c, 0x08, 0x33, 0x8f, 0x80, 0xab, 0x67, 0x43, 0xc0, + 0xda, 0xef, 0x15, 0x68, 0x67, 0x2e, 0x69, 0xd9, 0x02, 0xac, 0xe4, 0x0b, 0xf0, 0xf7, 0xa1, 0xca, + 0xaa, 0x12, 0xe6, 0x4a, 0x6a, 0x65, 0xd9, 0xca, 0xae, 0x7e, 0x7a, 0xb8, 0x00, 0xad, 0xc0, 0x25, + 0xc9, 0x53, 0x9c, 0xc8, 0x32, 0x28, 0xff, 0x12, 0xa7, 0xfd, 0xb9, 0x02, 0x8d, 0x84, 0x3e, 0x26, + 0x60, 0x87, 0xac, 0xa5, 0x4b, 0x93, 0x11, 0x63, 0x39, 0x7f, 0xbc, 0x82, 0x27, 0x2b, 0x74, 0x05, + 0xe6, 0x5c, 0xec, 0x1a, 0xd4, 0x7e, 0x19, 0xa1, 0x87, 0x59, 0x17, 0xbb, 0xbb, 0xf6, 0x4b, 0xcc, + 0xa6, 0x58, 0xe1, 0xe7, 0x55, 0x3f, 0xcc, 0xd9, 0xb3, 0xde, 0xc8, 0xe5, 0x35, 0xff, 0x2a, 0x40, + 0x58, 0x2b, 0x3d, 0xd3, 0xc5, 0x1c, 0x12, 0xd4, 0xf5, 0x3a, 0x1f, 0xd9, 0x36, 0x5d, 0x8c, 0x3a, + 0x30, 0xcb, 0x7f, 0xb6, 0x36, 0x3a, 0x73, 0xe1, 0x42, 0xf1, 0x9b, 0x0e, 0x87, 0x7a, 0x36, 0x1c, + 0xa6, 0xad, 0xe6, 0x77, 0xe0, 0x52, 0x9f, 0xbf, 0xb0, 0x58, 0x6b, 0xc7, 0xeb, 0xf1, 0x94, 0x28, + 0xea, 0xb2, 0x29, 0x74, 0x9f, 0x39, 0x17, 0xd7, 0xa8, 0x11, 0x5a, 0xb9, 0xc9, 0xad, 0xfc, 0xbe, + 0xfc, 0xa6, 0x1b, 0x52, 0x86, 0x46, 0x8e, 0x92, 0x26, 0xff, 0xcb, 0xe1, 0x88, 0xf9, 0xe9, 0x70, + 0x44, 0xeb, 0x3c, 0x38, 0xe2, 0x6f, 0x65, 0x68, 0x8d, 0x2b, 0xf0, 0xd4, 0xd1, 0x3f, 0xcd, 0x2b, + 0xf2, 0x36, 0xa8, 0xe3, 0x07, 0x10, 0xae, 0x98, 0x13, 0x41, 0x44, 0xf6, 0xe9, 0xa3, 0x3d, 0xcc, + 0x84, 0xd9, 0x03, 0x98, 0x17, 0xf9, 0xc3, 0x48, 0x02, 0xeb, 0x9b, 0xb2, 0xcd, 0xf2, 0x09, 0x57, + 0x6f, 0x26, 0xc0, 0x36, 0x45, 0x9f, 0x42, 0x9d, 0x65, 0x45, 0x23, 0x38, 0x1e, 0x86, 0xbe, 0xd9, + 0xca, 0x96, 0xa3, 0x70, 0x23, 0x96, 0x26, 0xf7, 0x8e, 0x87, 0x58, 0x9f, 0x73, 0xc4, 0xd7, 0x79, + 0x2f, 0x3a, 0x77, 0x61, 0xd1, 0x0f, 0xc1, 0x88, 0x65, 0xa4, 0x74, 0x38, 0xcb, 0x75, 0x78, 0x39, + 0x9a, 0xdc, 0x49, 0xea, 0xb2, 0x20, 0x0d, 0xcc, 0x15, 0xa6, 0x81, 0x7f, 0x2b, 0xb0, 0x20, 0x5c, + 0x8d, 0x69, 0x62, 0xc0, 0x2f, 0x48, 0x2c, 0x69, 0x13, 0xcf, 0xb1, 0xbd, 0x18, 0x52, 0x09, 0xdb, + 0x86, 0x83, 0x02, 0x52, 0x7d, 0x0e, 0x6d, 0x41, 0x14, 0xe7, 0xde, 0x29, 0x31, 0x40, 0x2b, 0x5c, + 0x17, 0x67, 0xdd, 0x1b, 0xd0, 0x22, 0xfb, 0xfb, 0x49, 0x7e, 0x61, 0xf2, 0x98, 0x17, 0xa3, 0x82, + 0xe1, 0x8f, 0x41, 0x8d, 0xc8, 0x4e, 0x9b, 0xed, 0xdb, 0x62, 0x61, 0xfc, 0x94, 0xf0, 0x2b, 0x05, + 0x3a, 0xe9, 0xdc, 0x9f, 0x38, 0xfe, 0xe9, 0xe1, 0xc7, 0x0f, 0xd2, 0x0f, 0x51, 0x37, 0x4e, 0x90, + 0x67, 0xcc, 0x47, 0xe0, 0xdf, 0xdb, 0x2f, 0xa1, 0x95, 0x76, 0x6a, 0xd4, 0x84, 0xb9, 0x6d, 0x12, + 0xfc, 0xe8, 0xc8, 0xa6, 0x81, 0x3a, 0x83, 0x5a, 0x00, 0xdb, 0x24, 0xd8, 0xf1, 0x31, 0xc5, 0x5e, + 0xa0, 0x2a, 0x08, 0xa0, 0xf6, 0xd8, 0xdb, 0xb0, 0xe9, 0x73, 0xb5, 0x84, 0x2e, 0x89, 0x32, 0x63, + 0x3a, 0x5b, 0xc2, 0xb8, 0x6a, 0x99, 0x2d, 0x8f, 0xff, 0x2a, 0x48, 0x85, 0x66, 0x4c, 0xb2, 0xb9, + 0xf3, 0x44, 0xad, 0xa2, 0x3a, 0x54, 0xc3, 0xcf, 0xda, 0x6d, 0x0b, 0xd4, 0x2c, 0xcc, 0x61, 0x7b, + 0x3e, 0xf1, 0x1e, 0x78, 0xe4, 0x30, 0x1e, 0x52, 0x67, 0x50, 0x03, 0x66, 0x05, 0x74, 0x54, 0x15, + 0xd4, 0x86, 0x46, 0x02, 0xb5, 0xa9, 0x25, 0x36, 0xb0, 0xe9, 0x0f, 0xfb, 0x02, 0xbf, 0x85, 0x22, + 0x30, 0xab, 0x6d, 0x90, 0x43, 0x4f, 0xad, 0xdc, 0xbe, 0x07, 0x73, 0x51, 0x80, 0xb0, 0xd3, 0x84, + 0xbb, 0xb3, 0x3f, 0x75, 0x06, 0x2d, 0xc0, 0x7c, 0xaa, 0x5d, 0xa1, 0x2a, 0x08, 0x41, 0xcb, 0x49, + 0xf5, 0x88, 0xd4, 0xd2, 0xea, 0x5f, 0x1b, 0x00, 0x21, 0x00, 0x21, 0xc4, 0xb7, 0xd0, 0x10, 0xd0, + 0x26, 0x0e, 0x58, 0x72, 0x25, 0x5e, 0x94, 0x18, 0x29, 0xba, 0x53, 0x50, 0xa7, 0xf3, 0xa4, 0x42, + 0xd2, 0xee, 0xcd, 0x82, 0x15, 0x19, 0x72, 0x6d, 0x06, 0xb9, 0x9c, 0x23, 0xbb, 0xd0, 0xee, 0xd9, + 0xfd, 0xe7, 0x31, 0x72, 0x29, 0xe6, 0x98, 0x21, 0x8d, 0x38, 0x66, 0x92, 0x9a, 0xf8, 0xd9, 0x0d, + 0x7c, 0xdb, 0x1b, 0x44, 0xaf, 0xa1, 0xda, 0x0c, 0x7a, 0x01, 0x97, 0x37, 0x31, 0xe7, 0x6e, 0xd3, + 0xc0, 0xee, 0xd3, 0x88, 0xe1, 0x6a, 0x31, 0xc3, 0x1c, 0xf1, 0x29, 0x59, 0x3a, 0xd0, 0xce, 0xf4, + 0x64, 0xd1, 0x6d, 0xa9, 0x23, 0x4b, 0xfb, 0xc7, 0xdd, 0x8f, 0xa7, 0xa2, 0x8d, 0xb9, 0xd9, 0xd0, + 0x4a, 0xf7, 0x2b, 0xd1, 0xff, 0x17, 0x6d, 0x90, 0x6b, 0xf0, 0x74, 0x6f, 0x4f, 0x43, 0x1a, 0xb3, + 0x7a, 0x0a, 0xad, 0x74, 0x47, 0x4c, 0xce, 0x4a, 0xda, 0x35, 0xeb, 0x9e, 0xf4, 0x10, 0xad, 0xcd, + 0xa0, 0x9f, 0xc3, 0x42, 0xae, 0x0d, 0x85, 0xbe, 0x25, 0xdb, 0xbe, 0xa8, 0x5b, 0x35, 0x89, 0x83, + 0x90, 0x7e, 0xac, 0xc5, 0x62, 0xe9, 0x73, 0xfd, 0xc8, 0xe9, 0xa5, 0x4f, 0x6c, 0x7f, 0x92, 0xf4, + 0xa7, 0xe6, 0x30, 0x02, 0x94, 0x6f, 0x44, 0xa1, 0x4f, 0x64, 0x2c, 0x0a, 0x9b, 0x61, 0xdd, 0xe5, + 0x69, 0xc9, 0x63, 0x93, 0x8f, 0x78, 0xb4, 0x66, 0x11, 0xb8, 0x94, 0x6d, 0x61, 0xf3, 0x49, 0xce, + 0xb6, 0xb8, 0xff, 0x13, 0x3a, 0x75, 0xba, 0xbf, 0x21, 0xb7, 0x95, 0xb4, 0x27, 0x23, 0x77, 0x6a, + 0x79, 0xbb, 0x44, 0x9b, 0x41, 0x7b, 0xa9, 0x1c, 0x8c, 0x6e, 0x16, 0xf9, 0x44, 0xfa, 0x6a, 0x3d, + 0xc9, 0x5c, 0x06, 0xc0, 0x26, 0x0e, 0x1e, 0xe1, 0xc0, 0xb7, 0xfb, 0x34, 0xbb, 0xa9, 0xf8, 0x19, + 0x13, 0x44, 0x9b, 0x7e, 0x34, 0x91, 0x2e, 0x12, 0x7b, 0xf5, 0x15, 0x40, 0x9d, 0xdb, 0x8c, 0x95, + 0x87, 0xff, 0xa5, 0xf1, 0x0b, 0x48, 0xe3, 0xcf, 0xa0, 0x9d, 0x69, 0x6e, 0xc9, 0xd3, 0xb8, 0xbc, + 0x03, 0x36, 0xc9, 0x41, 0x7a, 0x80, 0xf2, 0x2d, 0x18, 0x79, 0x60, 0x15, 0xb6, 0x6a, 0x26, 0xf1, + 0x78, 0x06, 0xed, 0x4c, 0x0f, 0x44, 0x7e, 0x02, 0x79, 0xa3, 0x64, 0x8a, 0x13, 0xe4, 0xdf, 0xfe, + 0xe5, 0x27, 0x28, 0xec, 0x11, 0x4c, 0xe2, 0xf1, 0x05, 0x34, 0x93, 0xaf, 0xae, 0xe8, 0xa3, 0xa2, + 0xe8, 0xcc, 0xbc, 0xc3, 0xbd, 0xf9, 0x7c, 0x7d, 0xf1, 0xf5, 0xec, 0x19, 0xb4, 0x33, 0xaf, 0xac, + 0x72, 0xeb, 0xca, 0x9f, 0x62, 0x27, 0xed, 0xfe, 0x0d, 0x66, 0xe0, 0x8b, 0xce, 0x95, 0x6b, 0xdf, + 0x79, 0xba, 0x3a, 0xb0, 0x83, 0x83, 0x51, 0x8f, 0x9d, 0x72, 0x25, 0xa4, 0xfc, 0xc4, 0x26, 0xe2, + 0x6b, 0x25, 0x4a, 0x1a, 0x2b, 0x7c, 0xa7, 0x15, 0x2e, 0xed, 0xb0, 0xd7, 0xab, 0xf1, 0xdf, 0xbb, + 0xff, 0x09, 0x00, 0x00, 0xff, 0xff, 0x68, 0xaa, 0xae, 0xcf, 0x71, 0x28, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. diff --git a/internal/proxy/channels_mgr.go b/internal/proxy/channels_mgr.go index fab74d9ff7..ad8a883e85 100644 --- a/internal/proxy/channels_mgr.go +++ b/internal/proxy/channels_mgr.go @@ -117,7 +117,7 @@ func getDqlChannelsFunc(ctx context.Context, proxyID int64, qc createQueryChanne } m := make(map[vChan]pChan) - m[resp.RequestChannel] = resp.RequestChannel + m[resp.QueryChannel] = resp.QueryChannel return m, nil } diff --git a/internal/proxy/impl.go b/internal/proxy/impl.go index c1211fc1e2..3b905a300e 100644 --- a/internal/proxy/impl.go +++ b/internal/proxy/impl.go @@ -3215,7 +3215,7 @@ func (node *Proxy) GetQuerySegmentInfo(ctx context.Context, req *milvuspb.GetQue IndexName: info.IndexName, IndexID: info.IndexID, NodeID: info.NodeID, - State: info.State, + State: info.SegmentState, } } resp.Status.ErrorCode = commonpb.ErrorCode_Success @@ -3460,7 +3460,7 @@ func (node *Proxy) LoadBalance(ctx context.Context, req *milvuspb.LoadBalanceReq }, SourceNodeIDs: []int64{req.SrcNodeID}, DstNodeIDs: req.DstNodeIDs, - BalanceReason: querypb.TriggerCondition_grpcRequest, + BalanceReason: querypb.TriggerCondition_GrpcRequest, SealedSegmentIDs: req.SealedSegmentIDs, }) if err != nil { diff --git a/internal/proxy/proxy.go b/internal/proxy/proxy.go index 3f429b7f10..1e4737e1f4 100644 --- a/internal/proxy/proxy.go +++ b/internal/proxy/proxy.go @@ -189,8 +189,8 @@ func (node *Proxy) Init() error { // TODO SearchResultChannelNames and RetrieveResultChannelNames should not be part in the Param table // we should maintain a separate map for search result - Params.SearchResultChannelNames = []string{resp.ResultChannel} - Params.RetrieveResultChannelNames = []string{resp.ResultChannel} + Params.SearchResultChannelNames = []string{resp.QueryResultChannel} + Params.RetrieveResultChannelNames = []string{resp.QueryResultChannel} log.Debug("Proxy CreateQueryChannel success", zap.Any("SearchResultChannelNames", Params.SearchResultChannelNames)) log.Debug("Proxy CreateQueryChannel success", zap.Any("RetrieveResultChannelNames", Params.RetrieveResultChannelNames)) } diff --git a/internal/querycoord/cluster_test.go b/internal/querycoord/cluster_test.go index 05af2f0a07..197874658f 100644 --- a/internal/querycoord/cluster_test.go +++ b/internal/querycoord/cluster_test.go @@ -546,10 +546,10 @@ func TestGrpcRequest(t *testing.T) { info, err := cluster.clusterMeta.getQueryChannelInfoByID(defaultCollectionID) assert.Nil(t, err) addQueryChannelReq := &querypb.AddQueryChannelRequest{ - NodeID: nodeID, - CollectionID: defaultCollectionID, - RequestChannelID: info.QueryChannelID, - ResultChannelID: info.QueryResultChannelID, + NodeID: nodeID, + CollectionID: defaultCollectionID, + QueryChannel: info.QueryChannel, + QueryResultChannel: info.QueryResultChannel, } err = cluster.addQueryChannel(baseCtx, nodeID, addQueryChannelReq) assert.Nil(t, err) @@ -559,10 +559,10 @@ func TestGrpcRequest(t *testing.T) { info, err := cluster.clusterMeta.getQueryChannelInfoByID(defaultCollectionID) assert.Nil(t, err) removeQueryChannelReq := &querypb.RemoveQueryChannelRequest{ - NodeID: nodeID, - CollectionID: defaultCollectionID, - RequestChannelID: info.QueryChannelID, - ResultChannelID: info.QueryResultChannelID, + NodeID: nodeID, + CollectionID: defaultCollectionID, + QueryChannel: info.QueryChannel, + QueryResultChannel: info.QueryResultChannel, } err = cluster.removeQueryChannel(baseCtx, nodeID, removeQueryChannelReq) assert.Nil(t, err) diff --git a/internal/querycoord/impl.go b/internal/querycoord/impl.go index 1ed285bb87..dedb9b87ae 100644 --- a/internal/querycoord/impl.go +++ b/internal/querycoord/impl.go @@ -159,7 +159,7 @@ func (qc *QueryCoord) LoadCollection(ctx context.Context, req *querypb.LoadColle return status, nil } - baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_GrpcRequest) loadCollectionTask := &loadCollectionTask{ baseTask: baseTask, LoadCollectionRequest: req, @@ -212,7 +212,7 @@ func (qc *QueryCoord) ReleaseCollection(ctx context.Context, req *querypb.Releas return status, nil } - baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_GrpcRequest) releaseCollectionTask := &releaseCollectionTask{ baseTask: baseTask, ReleaseCollectionRequest: req, @@ -362,7 +362,7 @@ func (qc *QueryCoord) LoadPartitions(ctx context.Context, req *querypb.LoadParti req.PartitionIDs = partitionIDsToLoad } - baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_GrpcRequest) loadPartitionTask := &loadPartitionTask{ baseTask: baseTask, LoadPartitionsRequest: req, @@ -443,7 +443,7 @@ func (qc *QueryCoord) ReleasePartitions(ctx context.Context, req *querypb.Releas } req.PartitionIDs = toReleasedPartitions - baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_GrpcRequest) releasePartitionTask := &releasePartitionTask{ baseTask: baseTask, ReleasePartitionsRequest: req, @@ -497,9 +497,9 @@ func (qc *QueryCoord) CreateQueryChannel(ctx context.Context, req *querypb.Creat } return &querypb.CreateQueryChannelResponse{ - Status: status, - RequestChannel: info.QueryChannelID, - ResultChannel: info.QueryResultChannelID, + Status: status, + QueryChannel: info.QueryChannel, + QueryResultChannel: info.QueryResultChannel, }, nil } @@ -599,7 +599,7 @@ func (qc *QueryCoord) LoadBalance(ctx context.Context, req *querypb.LoadBalanceR return status, nil } - baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_loadBalance) + baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_LoadBalance) loadBalanceTask := &loadBalanceTask{ baseTask: baseTask, LoadBalanceRequest: req, diff --git a/internal/querycoord/impl_test.go b/internal/querycoord/impl_test.go index 187a15df9d..8a82812a52 100644 --- a/internal/querycoord/impl_test.go +++ b/internal/querycoord/impl_test.go @@ -480,14 +480,14 @@ func TestLoadBalanceTask(t *testing.T) { SourceID: nodeID, }, SourceNodeIDs: []int64{nodeID}, - BalanceReason: querypb.TriggerCondition_nodeDown, + BalanceReason: querypb.TriggerCondition_NodeDown, } loadBalanceTask := &loadBalanceTask{ baseTask: &baseTask{ ctx: baseCtx, condition: newTaskCondition(baseCtx), - triggerCondition: querypb.TriggerCondition_nodeDown, + triggerCondition: querypb.TriggerCondition_NodeDown, }, LoadBalanceRequest: loadBalanceSegment, rootCoord: queryCoord.rootCoordClient, diff --git a/internal/querycoord/index_checker.go b/internal/querycoord/index_checker.go index 532e05f5bf..d5f8ac5243 100644 --- a/internal/querycoord/index_checker.go +++ b/internal/querycoord/index_checker.go @@ -236,7 +236,7 @@ func (ic *IndexChecker) processHandoffAfterIndexDone() { partitionID := segmentInfo.PartitionID segmentID := segmentInfo.SegmentID log.Debug("processHandoffAfterIndexDone: handoff segment start", zap.Any("segmentInfo", segmentInfo)) - baseTask := newBaseTask(ic.ctx, querypb.TriggerCondition_handoff) + baseTask := newBaseTask(ic.ctx, querypb.TriggerCondition_Handoff) handoffReq := &querypb.HandoffSegmentsRequest{ Base: &commonpb.MsgBase{ MsgType: commonpb.MsgType_HandoffSegments, diff --git a/internal/querycoord/index_checker_test.go b/internal/querycoord/index_checker_test.go index 75db6c4404..db52e1de28 100644 --- a/internal/querycoord/index_checker_test.go +++ b/internal/querycoord/index_checker_test.go @@ -26,6 +26,7 @@ import ( "github.com/milvus-io/milvus/internal/allocator" etcdkv "github.com/milvus-io/milvus/internal/kv/etcd" + "github.com/milvus-io/milvus/internal/proto/commonpb" "github.com/milvus-io/milvus/internal/proto/querypb" "github.com/milvus-io/milvus/internal/util/tsoutil" ) @@ -42,7 +43,7 @@ func TestReloadFromKV(t *testing.T) { SegmentID: defaultSegmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, } key := fmt.Sprintf("%s/%d/%d/%d", handoffSegmentPrefix, defaultCollectionID, defaultPartitionID, defaultSegmentID) value, err := proto.Marshal(segmentInfo) @@ -102,7 +103,7 @@ func TestCheckIndexLoop(t *testing.T) { SegmentID: defaultSegmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, } key := fmt.Sprintf("%s/%d/%d/%d", handoffSegmentPrefix, defaultCollectionID, defaultPartitionID, defaultSegmentID) value, err := proto.Marshal(segmentInfo) @@ -180,7 +181,7 @@ func TestProcessHandoffAfterIndexDone(t *testing.T) { SegmentID: defaultSegmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, } key := fmt.Sprintf("%s/%d/%d/%d", handoffSegmentPrefix, defaultCollectionID, defaultPartitionID, defaultSegmentID) value, err := proto.Marshal(segmentInfo) diff --git a/internal/querycoord/meta.go b/internal/querycoord/meta.go index 20b41c9575..6395250808 100644 --- a/internal/querycoord/meta.go +++ b/internal/querycoord/meta.go @@ -313,7 +313,7 @@ func (m *MetaReplica) addCollection(collectionID UniqueID, schema *schemapb.Coll if !hasCollection { partitions := make([]UniqueID, 0) partitionStates := make([]*querypb.PartitionStates, 0) - channels := make([]*querypb.DmChannelInfo, 0) + channels := make([]*querypb.DmChannelWatchInfo, 0) newCollection := &querypb.CollectionInfo{ CollectionID: collectionID, PartitionIDs: partitions, @@ -438,7 +438,7 @@ func (m *MetaReplica) saveGlobalSealedSegInfos(saves col2SegmentInfos) (col2Seal if err == nil { offlineNodeID := offlineInfo.NodeID // if the offline segment state is growing, it will not impact the global sealed segments - if offlineInfo.SegmentState == querypb.SegmentState_sealed { + if offlineInfo.SegmentState == commonpb.SegmentState_Sealed { changeInfo.OfflineNodeID = offlineNodeID changeInfo.OfflineSegments = []*querypb.SegmentInfo{offlineInfo} } @@ -448,7 +448,7 @@ func (m *MetaReplica) saveGlobalSealedSegInfos(saves col2SegmentInfos) (col2Seal // generate offline segment change info if the loaded segment is compacted from other sealed segments for _, compactionSegmentID := range info.CompactionFrom { compactionSegmentInfo, err := m.getSegmentInfoByID(compactionSegmentID) - if err == nil && compactionSegmentInfo.SegmentState == querypb.SegmentState_sealed { + if err == nil && compactionSegmentInfo.SegmentState == commonpb.SegmentState_Sealed { segmentsChangeInfo.Infos = append(segmentsChangeInfo.Infos, &querypb.SegmentChangeInfo{ OfflineNodeID: compactionSegmentInfo.NodeID, OfflineSegments: []*querypb.SegmentInfo{compactionSegmentInfo}, @@ -471,14 +471,14 @@ func (m *MetaReplica) saveGlobalSealedSegInfos(saves col2SegmentInfos) (col2Seal return nil, err } // len(messageIDs) == 1 - messageIDs, ok := messageIDInfos[queryChannelInfo.QueryChannelID] + messageIDs, ok := messageIDInfos[queryChannelInfo.QueryChannel] if !ok || len(messageIDs) == 0 { return col2SegmentChangeInfos, errors.New("updateGlobalSealedSegmentInfos: send sealed segment change info failed") } if queryChannelInfo.SeekPosition == nil { queryChannelInfo.SeekPosition = &internalpb.MsgPosition{ - ChannelName: queryChannelInfo.QueryChannelID, + ChannelName: queryChannelInfo.QueryChannel, } } @@ -618,14 +618,14 @@ func (m *MetaReplica) removeGlobalSealedSegInfos(collectionID UniqueID, partitio return nil, err } // len(messageIDs) = 1 - messageIDs, ok := messageIDInfos[queryChannelInfo.QueryChannelID] + messageIDs, ok := messageIDInfos[queryChannelInfo.QueryChannel] if !ok || len(messageIDs) == 0 { return col2SealedSegmentChangeInfos{collectionID: segmentChangeInfos}, errors.New("updateGlobalSealedSegmentInfos: send sealed segment change info failed") } if queryChannelInfo.SeekPosition == nil { queryChannelInfo.SeekPosition = &internalpb.MsgPosition{ - ChannelName: queryChannelInfo.QueryChannelID, + ChannelName: queryChannelInfo.QueryChannel, } } queryChannelInfo.SeekPosition.MsgID = messageIDs[0].Serialize() @@ -907,7 +907,7 @@ func (m *MetaReplica) addDmChannel(collectionID UniqueID, nodeID int64, channels } } if !findNodeID { - newChannelInfo := &querypb.DmChannelInfo{ + newChannelInfo := &querypb.DmChannelWatchInfo{ NodeIDLoaded: nodeID, ChannelIDs: channels, } @@ -977,8 +977,8 @@ func createQueryChannel(collectionID UniqueID) *querypb.QueryChannelInfo { } info := &querypb.QueryChannelInfo{ CollectionID: collectionID, - QueryChannelID: allocatedQueryChannel, - QueryResultChannelID: allocatedQueryResultChannel, + QueryChannel: allocatedQueryChannel, + QueryResultChannel: allocatedQueryResultChannel, GlobalSealedSegments: []*querypb.SegmentInfo{}, SeekPosition: seekPosition, } @@ -1039,7 +1039,7 @@ func (m *MetaReplica) getQueryChannelInfoByID(collectionID UniqueID) (*querypb.Q m.queryChannelInfos[collectionID] = info info.SeekPosition = m.globalSeekPosition if info.SeekPosition != nil { - info.SeekPosition.ChannelName = info.QueryChannelID + info.SeekPosition.ChannelName = info.QueryChannel } return proto.Clone(info).(*querypb.QueryChannelInfo), nil } @@ -1061,7 +1061,7 @@ func (m *MetaReplica) getQueryStreamByID(collectionID UniqueID) (msgstream.MsgSt return nil, err } - queryChannel := info.QueryChannelID + queryChannel := info.QueryChannel stream.AsProducer([]string{queryChannel}) m.queryStreams[collectionID] = stream log.Debug("getQueryStreamByID: create query msgStream for collection", zap.Int64("collectionID", collectionID)) diff --git a/internal/querycoord/meta_test.go b/internal/querycoord/meta_test.go index 80fb72cc6b..1d14d1f494 100644 --- a/internal/querycoord/meta_test.go +++ b/internal/querycoord/meta_test.go @@ -254,8 +254,8 @@ func TestMetaFunc(t *testing.T) { t.Run("Test getQueryChannel", func(t *testing.T) { info, err := meta.getQueryChannelInfoByID(defaultCollectionID) - assert.NotNil(t, info.QueryChannelID) - assert.NotNil(t, info.QueryResultChannelID) + assert.NotNil(t, info.QueryChannel) + assert.NotNil(t, info.QueryResultChannel) assert.Nil(t, err) }) diff --git a/internal/querycoord/mock_querynode_server_test.go b/internal/querycoord/mock_querynode_server_test.go index a4b838798d..121c69d91e 100644 --- a/internal/querycoord/mock_querynode_server_test.go +++ b/internal/querycoord/mock_querynode_server_test.go @@ -213,7 +213,7 @@ func (qs *queryNodeServerMock) LoadSegments(ctx context.Context, req *querypb.Lo PartitionID: info.PartitionID, CollectionID: info.CollectionID, NodeID: qs.queryNodeID, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, MemSize: info.NumOfRows * int64(sizePerRecord), NumRows: info.NumOfRows, } diff --git a/internal/querycoord/query_coord.go b/internal/querycoord/query_coord.go index 7086255729..7e78413323 100644 --- a/internal/querycoord/query_coord.go +++ b/internal/querycoord/query_coord.go @@ -328,7 +328,7 @@ func (qc *QueryCoord) watchNodeLoop() { SourceNodeIDs: offlineNodeIDs, } - baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_nodeDown) + baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_NodeDown) loadBalanceTask := &loadBalanceTask{ baseTask: baseTask, LoadBalanceRequest: loadBalanceSegment, @@ -377,10 +377,10 @@ func (qc *QueryCoord) watchNodeLoop() { SourceID: qc.session.ServerID, }, SourceNodeIDs: []int64{serverID}, - BalanceReason: querypb.TriggerCondition_nodeDown, + BalanceReason: querypb.TriggerCondition_NodeDown, } - baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_nodeDown) + baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_NodeDown) loadBalanceTask := &loadBalanceTask{ baseTask: baseTask, LoadBalanceRequest: loadBalanceSegment, @@ -526,12 +526,12 @@ func (qc *QueryCoord) loadBalanceSegmentLoop() { Base: &commonpb.MsgBase{ MsgType: commonpb.MsgType_LoadBalanceSegments, }, - BalanceReason: querypb.TriggerCondition_loadBalance, + BalanceReason: querypb.TriggerCondition_LoadBalance, SourceNodeIDs: []UniqueID{sourceNodeID}, DstNodeIDs: []UniqueID{dstNodeID}, SealedSegmentIDs: []UniqueID{selectedSegmentInfo.SegmentID}, } - baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_loadBalance) + baseTask := newBaseTask(qc.loopCtx, querypb.TriggerCondition_LoadBalance) balanceTask := &loadBalanceTask{ baseTask: baseTask, LoadBalanceRequest: req, diff --git a/internal/querycoord/query_coord_test.go b/internal/querycoord/query_coord_test.go index a4a42b5845..4332a944c5 100644 --- a/internal/querycoord/query_coord_test.go +++ b/internal/querycoord/query_coord_test.go @@ -248,7 +248,7 @@ func TestHandoffSegmentLoop(t *testing.T) { SegmentID: defaultSegmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, } key := fmt.Sprintf("%s/%d/%d/%d", handoffSegmentPrefix, defaultCollectionID, defaultPartitionID, defaultSegmentID) @@ -270,12 +270,12 @@ func TestHandoffSegmentLoop(t *testing.T) { waitTaskFinalState(loadPartitionTask, taskExpired) t.Run("Test partitionNotLoaded", func(t *testing.T) { - baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_handoff) + baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_Handoff) segmentInfo := &querypb.SegmentInfo{ SegmentID: defaultSegmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID + 1, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, } handoffReq := &querypb.HandoffSegmentsRequest{ Base: &commonpb.MsgBase{ @@ -305,13 +305,13 @@ func TestHandoffSegmentLoop(t *testing.T) { infos := queryCoord.meta.showSegmentInfos(defaultCollectionID, nil) assert.NotEqual(t, 0, len(infos)) segmentID := defaultSegmentID + 4 - baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_handoff) + baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_Handoff) segmentInfo := &querypb.SegmentInfo{ SegmentID: segmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID + 2, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, } handoffReq := &querypb.HandoffSegmentsRequest{ Base: &commonpb.MsgBase{ @@ -333,12 +333,12 @@ func TestHandoffSegmentLoop(t *testing.T) { }) t.Run("Test binlogNotExist", func(t *testing.T) { - baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_handoff) + baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_Handoff) segmentInfo := &querypb.SegmentInfo{ SegmentID: defaultSegmentID + 100, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, } handoffReq := &querypb.HandoffSegmentsRequest{ Base: &commonpb.MsgBase{ @@ -360,12 +360,12 @@ func TestHandoffSegmentLoop(t *testing.T) { }) t.Run("Test sealedSegmentExist", func(t *testing.T) { - baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_handoff) + baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_Handoff) segmentInfo := &querypb.SegmentInfo{ SegmentID: defaultSegmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, } handoffReq := &querypb.HandoffSegmentsRequest{ Base: &commonpb.MsgBase{ @@ -390,13 +390,13 @@ func TestHandoffSegmentLoop(t *testing.T) { infos := queryCoord.meta.showSegmentInfos(defaultCollectionID, nil) assert.NotEqual(t, 0, len(infos)) segmentID := defaultSegmentID + 5 - baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_handoff) + baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_Handoff) segmentInfo := &querypb.SegmentInfo{ SegmentID: segmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID + 2, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, CompactionFrom: []UniqueID{defaultSegmentID, defaultSegmentID + 1}, } handoffReq := &querypb.HandoffSegmentsRequest{ @@ -429,13 +429,13 @@ func TestHandoffSegmentLoop(t *testing.T) { infos := queryCoord.meta.showSegmentInfos(defaultCollectionID, nil) assert.NotEqual(t, 0, len(infos)) segmentID := defaultSegmentID + 6 - baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_handoff) + baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_Handoff) segmentInfo := &querypb.SegmentInfo{ SegmentID: segmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID + 2, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, CompactionFrom: []UniqueID{defaultSegmentID + 2, defaultSegmentID + 100}, } handoffReq := &querypb.HandoffSegmentsRequest{ @@ -470,12 +470,12 @@ func TestHandoffSegmentLoop(t *testing.T) { waitTaskFinalState(releasePartitionTask, taskExpired) t.Run("Test handoffReleasedPartition", func(t *testing.T) { - baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_handoff) + baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_Handoff) segmentInfo := &querypb.SegmentInfo{ SegmentID: defaultSegmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, } handoffReq := &querypb.HandoffSegmentsRequest{ Base: &commonpb.MsgBase{ @@ -529,7 +529,7 @@ func TestLoadBalanceSegmentLoop(t *testing.T) { PartitionIDs: []UniqueID{partitionID}, Schema: genCollectionSchema(defaultCollectionID, false), } - baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(baseCtx, querypb.TriggerCondition_GrpcRequest) loadPartitionTask := &loadPartitionTask{ baseTask: baseTask, LoadPartitionsRequest: req, diff --git a/internal/querycoord/querynode.go b/internal/querycoord/querynode.go index e9526ad908..cae3061a21 100644 --- a/internal/querycoord/querynode.go +++ b/internal/querycoord/querynode.go @@ -158,7 +158,7 @@ func (qn *queryNode) addCollection(collectionID UniqueID, schema *schemapb.Colle if _, ok := qn.collectionInfos[collectionID]; !ok { partitions := make([]UniqueID, 0) - channels := make([]*querypb.DmChannelInfo, 0) + channels := make([]*querypb.DmChannelWatchInfo, 0) newCollection := &querypb.CollectionInfo{ CollectionID: collectionID, PartitionIDs: partitions, @@ -282,7 +282,7 @@ func (qn *queryNode) addDmChannel(collectionID UniqueID, channels []string) erro } } if !findNodeID { - newChannelInfo := &querypb.DmChannelInfo{ + newChannelInfo := &querypb.DmChannelWatchInfo{ NodeIDLoaded: qn.id, ChannelIDs: channels, } @@ -479,9 +479,9 @@ func (qn *queryNode) addQueryChannel(ctx context.Context, in *querypb.AddQueryCh } queryChannelInfo := &querypb.QueryChannelInfo{ - CollectionID: in.CollectionID, - QueryChannelID: in.RequestChannelID, - QueryResultChannelID: in.ResultChannelID, + CollectionID: in.CollectionID, + QueryChannel: in.QueryChannel, + QueryResultChannel: in.QueryResultChannel, } qn.setQueryChannelInfo(queryChannelInfo) return nil diff --git a/internal/querycoord/task.go b/internal/querycoord/task.go index 3575f235a9..8517fdb338 100644 --- a/internal/querycoord/task.go +++ b/internal/querycoord/task.go @@ -403,11 +403,10 @@ func (lct *loadCollectionTask) execute(ctx context.Context) error { msgBase := proto.Clone(lct.Base).(*commonpb.MsgBase) msgBase.MsgType = commonpb.MsgType_LoadSegments loadSegmentReq := &querypb.LoadSegmentsRequest{ - Base: msgBase, - Infos: []*querypb.SegmentLoadInfo{segmentLoadInfo}, - Schema: lct.Schema, - LoadCondition: querypb.TriggerCondition_grpcRequest, - CollectionID: collectionID, + Base: msgBase, + Infos: []*querypb.SegmentLoadInfo{segmentLoadInfo}, + Schema: lct.Schema, + CollectionID: collectionID, } loadSegmentReqs = append(loadSegmentReqs, loadSegmentReq) @@ -527,7 +526,7 @@ func (lct *loadCollectionTask) rollBack(ctx context.Context) []task { CollectionID: lct.CollectionID, NodeID: nodeID, } - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) baseTask.setParentTask(lct) releaseCollectionTask := &releaseCollectionTask{ baseTask: baseTask, @@ -615,7 +614,7 @@ func (rct *releaseCollectionTask) execute(ctx context.Context) error { for nodeID := range nodes { req := proto.Clone(rct.ReleaseCollectionRequest).(*querypb.ReleaseCollectionRequest) req.NodeID = nodeID - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) baseTask.setParentTask(rct) releaseCollectionTask := &releaseCollectionTask{ baseTask: baseTask, @@ -772,11 +771,10 @@ func (lpt *loadPartitionTask) execute(ctx context.Context) error { msgBase := proto.Clone(lpt.Base).(*commonpb.MsgBase) msgBase.MsgType = commonpb.MsgType_LoadSegments loadSegmentReq := &querypb.LoadSegmentsRequest{ - Base: msgBase, - Infos: []*querypb.SegmentLoadInfo{segmentLoadInfo}, - Schema: lpt.Schema, - LoadCondition: querypb.TriggerCondition_grpcRequest, - CollectionID: collectionID, + Base: msgBase, + Infos: []*querypb.SegmentLoadInfo{segmentLoadInfo}, + Schema: lpt.Schema, + CollectionID: collectionID, } loadSegmentReqs = append(loadSegmentReqs, loadSegmentReq) } @@ -883,7 +881,7 @@ func (lpt *loadPartitionTask) rollBack(ctx context.Context) []task { CollectionID: lpt.CollectionID, NodeID: nodeID, } - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) baseTask.setParentTask(lpt) releaseCollectionTask := &releaseCollectionTask{ baseTask: baseTask, @@ -908,7 +906,7 @@ func (lpt *loadPartitionTask) rollBack(ctx context.Context) []task { NodeID: nodeID, } - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) baseTask.setParentTask(lpt) releasePartitionTask := &releasePartitionTask{ baseTask: baseTask, @@ -970,7 +968,7 @@ func (rpt *releasePartitionTask) execute(ctx context.Context) error { for nodeID := range nodes { req := proto.Clone(rpt.ReleasePartitionsRequest).(*querypb.ReleasePartitionsRequest) req.NodeID = nodeID - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) baseTask.setParentTask(rpt) releasePartitionTask := &releasePartitionTask{ baseTask: baseTask, @@ -1104,12 +1102,11 @@ func (lst *loadSegmentTask) reschedule(ctx context.Context) ([]task, error) { msgBase := proto.Clone(lst.Base).(*commonpb.MsgBase) msgBase.MsgType = commonpb.MsgType_LoadSegments req := &querypb.LoadSegmentsRequest{ - Base: msgBase, - Infos: []*querypb.SegmentLoadInfo{info}, - Schema: lst.Schema, - LoadCondition: lst.triggerCondition, - SourceNodeID: lst.SourceNodeID, - CollectionID: lst.CollectionID, + Base: msgBase, + Infos: []*querypb.SegmentLoadInfo{info}, + Schema: lst.Schema, + SourceNodeID: lst.SourceNodeID, + CollectionID: lst.CollectionID, } loadSegmentReqs = append(loadSegmentReqs, req) } @@ -1429,8 +1426,8 @@ func (wqt *watchQueryChannelTask) preExecute(context.Context) error { wqt.setResultInfo(nil) log.Debug("start do watchQueryChannelTask", zap.Int64("collectionID", wqt.CollectionID), - zap.String("queryChannel", wqt.RequestChannelID), - zap.String("queryResultChannel", wqt.ResultChannelID), + zap.String("queryChannel", wqt.QueryChannel), + zap.String("queryResultChannel", wqt.QueryResultChannel), zap.Int64("loaded nodeID", wqt.NodeID), zap.Int64("taskID", wqt.getTaskID())) return nil @@ -1450,8 +1447,8 @@ func (wqt *watchQueryChannelTask) execute(ctx context.Context) error { log.Debug("watchQueryChannelTask Execute done", zap.Int64("collectionID", wqt.CollectionID), - zap.String("queryChannel", wqt.RequestChannelID), - zap.String("queryResultChannel", wqt.ResultChannelID), + zap.String("queryChannel", wqt.QueryChannel), + zap.String("queryResultChannel", wqt.QueryResultChannel), zap.Int64("taskID", wqt.getTaskID())) return nil } @@ -1459,8 +1456,8 @@ func (wqt *watchQueryChannelTask) execute(ctx context.Context) error { func (wqt *watchQueryChannelTask) postExecute(context.Context) error { log.Debug("watchQueryChannelTask postExecute done", zap.Int64("collectionID", wqt.CollectionID), - zap.String("queryChannel", wqt.RequestChannelID), - zap.String("queryResultChannel", wqt.ResultChannelID), + zap.String("queryChannel", wqt.QueryChannel), + zap.String("queryResultChannel", wqt.QueryResultChannel), zap.Int64("taskID", wqt.getTaskID())) return nil } @@ -1572,10 +1569,9 @@ func (ht *handoffTask) execute(ctx context.Context) error { msgBase := proto.Clone(ht.Base).(*commonpb.MsgBase) msgBase.MsgType = commonpb.MsgType_LoadSegments loadSegmentReq = &querypb.LoadSegmentsRequest{ - Base: msgBase, - Infos: []*querypb.SegmentLoadInfo{segmentLoadInfo}, - Schema: collectionInfo.Schema, - LoadCondition: querypb.TriggerCondition_handoff, + Base: msgBase, + Infos: []*querypb.SegmentLoadInfo{segmentLoadInfo}, + Schema: collectionInfo.Schema, } } } @@ -1694,7 +1690,7 @@ func (lbt *loadBalanceTask) execute(ctx context.Context) error { lbt.retryCount-- }() - if lbt.triggerCondition == querypb.TriggerCondition_nodeDown { + if lbt.triggerCondition == querypb.TriggerCondition_NodeDown { for _, nodeID := range lbt.SourceNodeIDs { collectionInfos := lbt.cluster.getCollectionInfosByID(lbt.ctx, nodeID) for _, info := range collectionInfos { @@ -1754,11 +1750,10 @@ func (lbt *loadBalanceTask) execute(ctx context.Context) error { msgBase := proto.Clone(lbt.Base).(*commonpb.MsgBase) msgBase.MsgType = commonpb.MsgType_LoadSegments loadSegmentReq := &querypb.LoadSegmentsRequest{ - Base: msgBase, - Infos: []*querypb.SegmentLoadInfo{segmentLoadInfo}, - Schema: schema, - LoadCondition: querypb.TriggerCondition_nodeDown, - SourceNodeID: nodeID, + Base: msgBase, + Infos: []*querypb.SegmentLoadInfo{segmentLoadInfo}, + Schema: schema, + SourceNodeID: nodeID, } segmentsToLoad = append(segmentsToLoad, segmentID) @@ -1847,7 +1842,7 @@ func (lbt *loadBalanceTask) execute(ctx context.Context) error { } //TODO:: use request.DstNodeIDs to balance - if lbt.triggerCondition == querypb.TriggerCondition_loadBalance { + if lbt.triggerCondition == querypb.TriggerCondition_LoadBalance { if len(lbt.SourceNodeIDs) == 0 { err := errors.New("loadBalanceTask: empty source Node list to balance") log.Error(err.Error()) @@ -1956,10 +1951,9 @@ func (lbt *loadBalanceTask) execute(ctx context.Context) error { msgBase := proto.Clone(lbt.Base).(*commonpb.MsgBase) msgBase.MsgType = commonpb.MsgType_LoadSegments loadSegmentReq := &querypb.LoadSegmentsRequest{ - Base: msgBase, - Infos: []*querypb.SegmentLoadInfo{segmentLoadInfo}, - Schema: collectionInfo.Schema, - LoadCondition: querypb.TriggerCondition_grpcRequest, + Base: msgBase, + Infos: []*querypb.SegmentLoadInfo{segmentLoadInfo}, + Schema: collectionInfo.Schema, } segmentsToLoad = append(segmentsToLoad, segmentID) @@ -2015,7 +2009,7 @@ func (lbt *loadBalanceTask) postExecute(context.Context) error { if lbt.result.ErrorCode != commonpb.ErrorCode_Success { lbt.childTasks = []task{} } - if lbt.triggerCondition == querypb.TriggerCondition_nodeDown { + if lbt.triggerCondition == querypb.TriggerCondition_NodeDown { for _, id := range lbt.SourceNodeIDs { err := lbt.cluster.removeNodeInfo(id) if err != nil { @@ -2184,8 +2178,8 @@ func assignInternalTask(ctx context.Context, Base: msgBase, NodeID: nodeID, CollectionID: collectionID, - RequestChannelID: queryChannelInfo.QueryChannelID, - ResultChannelID: queryChannelInfo.QueryResultChannelID, + QueryChannel: queryChannelInfo.QueryChannel, + QueryResultChannel: queryChannelInfo.QueryResultChannel, GlobalSealedSegments: queryChannelInfo.GlobalSealedSegments, SeekPosition: queryChannelInfo.SeekPosition, } diff --git a/internal/querycoord/task_scheduler.go b/internal/querycoord/task_scheduler.go index 6b0f48aafa..f51d39dd1a 100644 --- a/internal/querycoord/task_scheduler.go +++ b/internal/querycoord/task_scheduler.go @@ -266,7 +266,7 @@ func (scheduler *TaskScheduler) unmarshalTask(taskID UniqueID, t string) (task, return nil, fmt.Errorf("failed to unmarshal message header, err %s ", err.Error()) } var newTask task - baseTask := newBaseTask(scheduler.ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(scheduler.ctx, querypb.TriggerCondition_GrpcRequest) switch header.Base.MsgType { case commonpb.MsgType_LoadCollection: loadReq := querypb.LoadCollectionRequest{} @@ -906,7 +906,7 @@ func updateSegmentInfoFromTask(ctx context.Context, triggerTask task, meta Meta) CollectionID: loadInfo.CollectionID, PartitionID: loadInfo.PartitionID, NodeID: dstNodeID, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, CompactionFrom: loadInfo.CompactionFrom, } if _, ok := segmentInfosToSave[collectionID]; !ok { diff --git a/internal/querycoord/task_scheduler_test.go b/internal/querycoord/task_scheduler_test.go index c853dccbfe..64e82f0d00 100644 --- a/internal/querycoord/task_scheduler_test.go +++ b/internal/querycoord/task_scheduler_test.go @@ -178,7 +178,7 @@ func TestWatchQueryChannel_ClearEtcdInfoAfterAssignedNodeDown(t *testing.T) { baseTask: baseTask{ ctx: baseCtx, condition: newTaskCondition(baseCtx), - triggerCondition: querypb.TriggerCondition_grpcRequest, + triggerCondition: querypb.TriggerCondition_GrpcRequest, }, baseMsg: &commonpb.MsgBase{ MsgType: commonpb.MsgType_WatchQueryChannels, @@ -511,7 +511,7 @@ func Test_saveInternalTaskToEtcd(t *testing.T) { baseTask: baseTask{ ctx: ctx, condition: newTaskCondition(ctx), - triggerCondition: querypb.TriggerCondition_grpcRequest, + triggerCondition: querypb.TriggerCondition_GrpcRequest, taskID: 100, }, baseMsg: &commonpb.MsgBase{ diff --git a/internal/querycoord/task_test.go b/internal/querycoord/task_test.go index 7f2964ace8..e7d316622f 100644 --- a/internal/querycoord/task_test.go +++ b/internal/querycoord/task_test.go @@ -37,7 +37,7 @@ func genLoadCollectionTask(ctx context.Context, queryCoord *QueryCoord) *loadCol CollectionID: defaultCollectionID, Schema: genCollectionSchema(defaultCollectionID, false), } - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) loadCollectionTask := &loadCollectionTask{ baseTask: baseTask, LoadCollectionRequest: req, @@ -59,7 +59,7 @@ func genLoadPartitionTask(ctx context.Context, queryCoord *QueryCoord) *loadPart PartitionIDs: []UniqueID{defaultPartitionID}, Schema: genCollectionSchema(defaultCollectionID, false), } - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) loadPartitionTask := &loadPartitionTask{ baseTask: baseTask, LoadPartitionsRequest: req, @@ -79,7 +79,7 @@ func genReleaseCollectionTask(ctx context.Context, queryCoord *QueryCoord) *rele }, CollectionID: defaultCollectionID, } - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) releaseCollectionTask := &releaseCollectionTask{ baseTask: baseTask, ReleaseCollectionRequest: req, @@ -99,7 +99,7 @@ func genReleasePartitionTask(ctx context.Context, queryCoord *QueryCoord) *relea CollectionID: defaultCollectionID, PartitionIDs: []UniqueID{defaultPartitionID}, } - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) releasePartitionTask := &releasePartitionTask{ baseTask: baseTask, ReleasePartitionsRequest: req, @@ -119,7 +119,7 @@ func genReleaseSegmentTask(ctx context.Context, queryCoord *QueryCoord, nodeID i PartitionIDs: []UniqueID{defaultPartitionID}, SegmentIDs: []UniqueID{defaultSegmentID}, } - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) releaseSegmentTask := &releaseSegmentTask{ baseTask: baseTask, ReleaseSegmentsRequest: req, @@ -144,7 +144,7 @@ func genWatchDmChannelTask(ctx context.Context, queryCoord *QueryCoord, nodeID i Schema: schema, Infos: []*datapb.VchannelInfo{vChannelInfo}, } - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) baseTask.taskID = 100 watchDmChannelTask := &watchDmChannelTask{ baseTask: baseTask, @@ -161,7 +161,7 @@ func genWatchDmChannelTask(ctx context.Context, queryCoord *QueryCoord, nodeID i CollectionID: defaultCollectionID, Schema: genCollectionSchema(defaultCollectionID, false), } - baseParentTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseParentTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) baseParentTask.taskID = 10 baseParentTask.setState(taskDone) parentTask := &loadCollectionTask{ @@ -197,7 +197,7 @@ func genLoadSegmentTask(ctx context.Context, queryCoord *QueryCoord, nodeID int6 Infos: []*querypb.SegmentLoadInfo{segmentInfo}, CollectionID: defaultCollectionID, } - baseTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) baseTask.taskID = 100 loadSegmentTask := &loadSegmentTask{ baseTask: baseTask, @@ -214,7 +214,7 @@ func genLoadSegmentTask(ctx context.Context, queryCoord *QueryCoord, nodeID int6 CollectionID: defaultCollectionID, Schema: genCollectionSchema(defaultCollectionID, false), } - baseParentTask := newBaseTask(ctx, querypb.TriggerCondition_grpcRequest) + baseParentTask := newBaseTask(ctx, querypb.TriggerCondition_GrpcRequest) baseParentTask.taskID = 10 baseParentTask.setState(taskDone) parentTask := &loadCollectionTask{ @@ -773,13 +773,13 @@ func Test_handoffSegmentFail(t *testing.T) { infos := queryCoord.meta.showSegmentInfos(defaultCollectionID, nil) assert.NotEqual(t, 0, len(infos)) segmentID := defaultSegmentID + 4 - baseTask := newBaseTask(ctx, querypb.TriggerCondition_handoff) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_Handoff) segmentInfo := &querypb.SegmentInfo{ SegmentID: segmentID, CollectionID: defaultCollectionID, PartitionID: defaultPartitionID + 2, - SegmentState: querypb.SegmentState_sealed, + SegmentState: commonpb.SegmentState_Sealed, } handoffReq := &querypb.HandoffSegmentsRequest{ Base: &commonpb.MsgBase{ @@ -827,7 +827,7 @@ func TestLoadBalanceSegmentsTask(t *testing.T) { waitQueryNodeOnline(queryCoord.cluster, node2.queryNodeID) t.Run("Test LoadBalanceBySegmentID", func(t *testing.T) { - baseTask := newBaseTask(ctx, querypb.TriggerCondition_loadBalance) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_LoadBalance) loadBalanceTask := &loadBalanceTask{ baseTask: baseTask, LoadBalanceRequest: &querypb.LoadBalanceRequest{ @@ -849,7 +849,7 @@ func TestLoadBalanceSegmentsTask(t *testing.T) { }) t.Run("Test LoadBalanceByNotExistSegmentID", func(t *testing.T) { - baseTask := newBaseTask(ctx, querypb.TriggerCondition_loadBalance) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_LoadBalance) loadBalanceTask := &loadBalanceTask{ baseTask: baseTask, LoadBalanceRequest: &querypb.LoadBalanceRequest{ @@ -871,7 +871,7 @@ func TestLoadBalanceSegmentsTask(t *testing.T) { }) t.Run("Test LoadBalanceByNode", func(t *testing.T) { - baseTask := newBaseTask(ctx, querypb.TriggerCondition_loadBalance) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_LoadBalance) loadBalanceTask := &loadBalanceTask{ baseTask: baseTask, LoadBalanceRequest: &querypb.LoadBalanceRequest{ @@ -892,7 +892,7 @@ func TestLoadBalanceSegmentsTask(t *testing.T) { }) t.Run("Test LoadBalanceWithEmptySourceNode", func(t *testing.T) { - baseTask := newBaseTask(ctx, querypb.TriggerCondition_loadBalance) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_LoadBalance) loadBalanceTask := &loadBalanceTask{ baseTask: baseTask, LoadBalanceRequest: &querypb.LoadBalanceRequest{ @@ -912,7 +912,7 @@ func TestLoadBalanceSegmentsTask(t *testing.T) { }) t.Run("Test LoadBalanceByNotExistNode", func(t *testing.T) { - baseTask := newBaseTask(ctx, querypb.TriggerCondition_loadBalance) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_LoadBalance) loadBalanceTask := &loadBalanceTask{ baseTask: baseTask, LoadBalanceRequest: &querypb.LoadBalanceRequest{ @@ -968,7 +968,7 @@ func TestLoadBalanceIndexedSegmentsTask(t *testing.T) { assert.Nil(t, err) waitQueryNodeOnline(queryCoord.cluster, node2.queryNodeID) - baseTask := newBaseTask(ctx, querypb.TriggerCondition_loadBalance) + baseTask := newBaseTask(ctx, querypb.TriggerCondition_LoadBalance) loadBalanceTask := &loadBalanceTask{ baseTask: baseTask, LoadBalanceRequest: &querypb.LoadBalanceRequest{ diff --git a/internal/querynode/collection_replica.go b/internal/querynode/collection_replica.go index 91ae0eb986..aaa9aaedb4 100644 --- a/internal/querynode/collection_replica.go +++ b/internal/querynode/collection_replica.go @@ -715,8 +715,8 @@ func getSegmentInfo(segment *Segment) *querypb.SegmentInfo { NumRows: segment.getRowCount(), IndexName: indexName, IndexID: indexID, - ChannelID: segment.vChannelID, - State: getSegmentStateBySegmentType(segment.segmentType), + DmChannel: segment.vChannelID, + SegmentState: getSegmentStateBySegmentType(segment.segmentType), } return info } diff --git a/internal/querynode/impl_test.go b/internal/querynode/impl_test.go index 2a519ac544..2e5b79dcf2 100644 --- a/internal/querynode/impl_test.go +++ b/internal/querynode/impl_test.go @@ -90,10 +90,10 @@ func TestImpl_AddQueryChannel(t *testing.T) { MsgType: commonpb.MsgType_LoadCollection, MsgID: rand.Int63(), }, - NodeID: 0, - CollectionID: defaultCollectionID, - RequestChannelID: genQueryChannel(), - ResultChannelID: genQueryResultChannel(), + NodeID: 0, + CollectionID: defaultCollectionID, + QueryChannel: genQueryChannel(), + QueryResultChannel: genQueryResultChannel(), } status, err := node.AddQueryChannel(ctx, req) @@ -159,9 +159,8 @@ func TestImpl_LoadSegments(t *testing.T) { MsgType: commonpb.MsgType_WatchQueryChannels, MsgID: rand.Int63(), }, - DstNodeID: 0, - Schema: schema, - LoadCondition: queryPb.TriggerCondition_grpcRequest, + DstNodeID: 0, + Schema: schema, } status, err := node.LoadSegments(ctx, req) diff --git a/internal/querynode/query_collection.go b/internal/querynode/query_collection.go index 470b051cea..069cd26986 100644 --- a/internal/querynode/query_collection.go +++ b/internal/querynode/query_collection.go @@ -386,7 +386,7 @@ func (q *queryCollection) adjustByChangeInfo(msg *msgstream.SealedSegmentsChange ID: segment.SegmentID, CollectionID: segment.CollectionID, PartitionID: segment.PartitionID, - InsertChannel: segment.ChannelID, + InsertChannel: segment.DmChannel, NumOfRows: segment.NumRows, // TODO: add status, remove query pb segment status, use common pb segment status? DmlPosition: &internalpb.MsgPosition{ diff --git a/internal/querynode/query_node_test.go b/internal/querynode/query_node_test.go index 4636a0989a..920963cf82 100644 --- a/internal/querynode/query_node_test.go +++ b/internal/querynode/query_node_test.go @@ -162,8 +162,8 @@ func initTestMeta(t *testing.T, node *QueryNode, collectionID UniqueID, segmentI func initSearchChannel(ctx context.Context, searchChan string, resultChan string, node *QueryNode) { searchReq := &querypb.AddQueryChannelRequest{ - RequestChannelID: searchChan, - ResultChannelID: resultChan, + QueryChannel: searchChan, + QueryResultChannel: resultChan, } _, err := node.AddQueryChannel(ctx, searchReq) if err != nil { diff --git a/internal/querynode/segment_loader_test.go b/internal/querynode/segment_loader_test.go index 464979600c..32b56d36c2 100644 --- a/internal/querynode/segment_loader_test.go +++ b/internal/querynode/segment_loader_test.go @@ -53,9 +53,8 @@ func TestSegmentLoader_loadSegment(t *testing.T) { MsgType: commonpb.MsgType_WatchQueryChannels, MsgID: rand.Int63(), }, - DstNodeID: 0, - Schema: schema, - LoadCondition: querypb.TriggerCondition_grpcRequest, + DstNodeID: 0, + Schema: schema, Infos: []*querypb.SegmentLoadInfo{ { SegmentID: defaultSegmentID, @@ -85,9 +84,8 @@ func TestSegmentLoader_loadSegment(t *testing.T) { MsgType: commonpb.MsgType_WatchQueryChannels, MsgID: rand.Int63(), }, - DstNodeID: 0, - Schema: schema, - LoadCondition: querypb.TriggerCondition_grpcRequest, + DstNodeID: 0, + Schema: schema, Infos: []*querypb.SegmentLoadInfo{ { SegmentID: defaultSegmentID, @@ -204,8 +202,7 @@ func TestSegmentLoader_invalid(t *testing.T) { MsgType: commonpb.MsgType_WatchQueryChannels, MsgID: rand.Int63(), }, - DstNodeID: 0, - LoadCondition: querypb.TriggerCondition_grpcRequest, + DstNodeID: 0, Infos: []*querypb.SegmentLoadInfo{ { SegmentID: defaultSegmentID, @@ -281,9 +278,8 @@ func TestSegmentLoader_invalid(t *testing.T) { MsgType: commonpb.MsgType_WatchQueryChannels, MsgID: rand.Int63(), }, - DstNodeID: 0, - Schema: schema, - LoadCondition: querypb.TriggerCondition_grpcRequest, + DstNodeID: 0, + Schema: schema, Infos: []*querypb.SegmentLoadInfo{ { SegmentID: defaultSegmentID, @@ -434,9 +430,8 @@ func TestSegmentLoader_testLoadGrowingAndSealed(t *testing.T) { MsgType: commonpb.MsgType_WatchQueryChannels, MsgID: rand.Int63(), }, - DstNodeID: 0, - Schema: schema, - LoadCondition: querypb.TriggerCondition_grpcRequest, + DstNodeID: 0, + Schema: schema, Infos: []*querypb.SegmentLoadInfo{ { SegmentID: segmentID1, @@ -456,9 +451,8 @@ func TestSegmentLoader_testLoadGrowingAndSealed(t *testing.T) { MsgType: commonpb.MsgType_WatchQueryChannels, MsgID: rand.Int63(), }, - DstNodeID: 0, - Schema: schema, - LoadCondition: querypb.TriggerCondition_grpcRequest, + DstNodeID: 0, + Schema: schema, Infos: []*querypb.SegmentLoadInfo{ { SegmentID: segmentID2, diff --git a/internal/querynode/task.go b/internal/querynode/task.go index 446dfcfbb2..2a26bc7226 100644 --- a/internal/querynode/task.go +++ b/internal/querynode/task.go @@ -156,7 +156,7 @@ func (r *addQueryChannelTask) Execute(ctx context.Context) error { if err != nil { return err } - consumeChannels := []string{r.req.RequestChannelID} + consumeChannels := []string{r.req.QueryChannel} consumeSubName := Params.MsgChannelSubName + "-" + strconv.FormatInt(collectionID, 10) + "-" + strconv.Itoa(rand.Int()) if Params.skipQueryChannelRecovery { @@ -181,7 +181,7 @@ func (r *addQueryChannelTask) Execute(ctx context.Context) error { } // add result channel - producerChannels := []string{r.req.ResultChannelID} + producerChannels := []string{r.req.QueryResultChannel} sc.queryResultMsgStream.AsProducer(producerChannels) log.Debug("QueryNode AsProducer", zap.Strings("channels", producerChannels)) diff --git a/internal/querynode/task_test.go b/internal/querynode/task_test.go index 19acea07ed..416355dd1f 100644 --- a/internal/querynode/task_test.go +++ b/internal/querynode/task_test.go @@ -36,11 +36,11 @@ func TestTask_AddQueryChannel(t *testing.T) { genAddQueryChanelRequest := func() *querypb.AddQueryChannelRequest { return &querypb.AddQueryChannelRequest{ - Base: genCommonMsgBase(commonpb.MsgType_LoadCollection), - NodeID: 0, - CollectionID: defaultCollectionID, - RequestChannelID: genQueryChannel(), - ResultChannelID: genQueryResultChannel(), + Base: genCommonMsgBase(commonpb.MsgType_LoadCollection), + NodeID: 0, + CollectionID: defaultCollectionID, + QueryChannel: genQueryChannel(), + QueryResultChannel: genQueryResultChannel(), } } @@ -409,9 +409,8 @@ func TestTask_loadSegmentsTask(t *testing.T) { genLoadEmptySegmentsRequest := func() *querypb.LoadSegmentsRequest { schema := genSimpleSegCoreSchema() req := &querypb.LoadSegmentsRequest{ - Base: genCommonMsgBase(commonpb.MsgType_LoadSegments), - Schema: schema, - LoadCondition: querypb.TriggerCondition_grpcRequest, + Base: genCommonMsgBase(commonpb.MsgType_LoadSegments), + Schema: schema, } return req } @@ -450,9 +449,8 @@ func TestTask_loadSegmentsTask(t *testing.T) { assert.NoError(t, err) req := &querypb.LoadSegmentsRequest{ - Base: genCommonMsgBase(commonpb.MsgType_LoadSegments), - Schema: schema, - LoadCondition: querypb.TriggerCondition_grpcRequest, + Base: genCommonMsgBase(commonpb.MsgType_LoadSegments), + Schema: schema, Infos: []*querypb.SegmentLoadInfo{ { SegmentID: defaultSegmentID, @@ -505,7 +503,6 @@ func TestTask_loadSegmentsTask(t *testing.T) { CollectionID: defaultCollectionID + 1, }, } - task.req.LoadCondition = querypb.TriggerCondition_nodeDown err = task.Execute(ctx) assert.Error(t, err) }) @@ -534,7 +531,6 @@ func TestTask_loadSegmentsTask(t *testing.T) { NumOfRows: totalRAM / int64(sizePerRecord), }, } - task.req.LoadCondition = querypb.TriggerCondition_handoff err = task.Execute(ctx) assert.Error(t, err) })