2021-01-14 14:24:14 +08:00
|
|
|
syntax = "proto3";
|
|
|
|
|
|
|
|
package milvus.proto.data;
|
|
|
|
|
2021-04-22 14:45:57 +08:00
|
|
|
option go_package = "github.com/milvus-io/milvus/internal/proto/datapb";
|
2021-01-14 14:24:14 +08:00
|
|
|
|
|
|
|
import "common.proto";
|
|
|
|
import "internal.proto";
|
2021-01-22 11:07:07 +08:00
|
|
|
import "milvus.proto";
|
2021-04-09 09:55:04 +08:00
|
|
|
import "schema.proto";
|
2023-03-04 23:21:50 +08:00
|
|
|
import "msg.proto";
|
2023-01-11 14:35:40 +08:00
|
|
|
import "index_coord.proto";
|
2021-01-14 14:24:14 +08:00
|
|
|
|
2022-04-20 14:03:40 +08:00
|
|
|
// TODO: import google/protobuf/empty.proto
|
|
|
|
message Empty {}
|
|
|
|
|
2022-09-26 18:06:54 +08:00
|
|
|
enum SegmentType {
|
|
|
|
New = 0;
|
|
|
|
Normal = 1;
|
|
|
|
Flushed = 2;
|
2022-10-18 15:33:26 +08:00
|
|
|
Compacted = 3;
|
2022-09-26 18:06:54 +08:00
|
|
|
}
|
|
|
|
|
2023-10-07 20:55:31 +08:00
|
|
|
enum SegmentLevel {
|
|
|
|
Legacy = 0; // zero value for legacy logic
|
|
|
|
L0 = 1; // L0 segment, contains delta data for current channel
|
|
|
|
L1 = 2; // L1 segment, normal segment, with no extra compaction attribute
|
2024-06-05 10:17:50 +08:00
|
|
|
L2 = 3; // L2 segment, segment with extra data distribution info
|
2023-10-07 20:55:31 +08:00
|
|
|
}
|
|
|
|
|
2021-06-21 18:22:13 +08:00
|
|
|
service DataCoord {
|
2022-10-10 15:55:22 +08:00
|
|
|
rpc GetComponentStates(milvus.GetComponentStatesRequest) returns (milvus.ComponentStates) {}
|
2021-03-12 14:22:09 +08:00
|
|
|
rpc GetTimeTickChannel(internal.GetTimeTickChannelRequest) returns(milvus.StringResponse) {}
|
|
|
|
rpc GetStatisticsChannel(internal.GetStatisticsChannelRequest) returns(milvus.StringResponse){}
|
|
|
|
|
2021-06-23 16:56:11 +08:00
|
|
|
rpc Flush(FlushRequest) returns (FlushResponse) {}
|
2021-03-12 14:22:09 +08:00
|
|
|
|
|
|
|
rpc AssignSegmentID(AssignSegmentIDRequest) returns (AssignSegmentIDResponse) {}
|
|
|
|
|
|
|
|
rpc GetSegmentInfo(GetSegmentInfoRequest) returns (GetSegmentInfoResponse) {}
|
|
|
|
rpc GetSegmentStates(GetSegmentStatesRequest) returns (GetSegmentStatesResponse) {}
|
|
|
|
rpc GetInsertBinlogPaths(GetInsertBinlogPathsRequest) returns (GetInsertBinlogPathsResponse) {}
|
|
|
|
|
|
|
|
rpc GetCollectionStatistics(GetCollectionStatisticsRequest) returns (GetCollectionStatisticsResponse) {}
|
|
|
|
rpc GetPartitionStatistics(GetPartitionStatisticsRequest) returns (GetPartitionStatisticsResponse) {}
|
|
|
|
|
|
|
|
rpc GetSegmentInfoChannel(GetSegmentInfoChannelRequest) returns (milvus.StringResponse){}
|
2021-05-20 11:34:45 +08:00
|
|
|
|
|
|
|
rpc SaveBinlogPaths(SaveBinlogPathsRequest) returns (common.Status){}
|
2021-06-07 14:16:36 +08:00
|
|
|
rpc GetRecoveryInfo(GetRecoveryInfoRequest) returns (GetRecoveryInfoResponse){}
|
2023-04-18 18:30:32 +08:00
|
|
|
rpc GetRecoveryInfoV2(GetRecoveryInfoRequestV2) returns (GetRecoveryInfoResponseV2){}
|
2021-07-02 11:16:20 +08:00
|
|
|
rpc GetFlushedSegments(GetFlushedSegmentsRequest) returns(GetFlushedSegmentsResponse){}
|
2022-10-08 11:51:02 +08:00
|
|
|
rpc GetSegmentsByStates(GetSegmentsByStatesRequest) returns(GetSegmentsByStatesResponse){}
|
2023-03-30 11:28:25 +08:00
|
|
|
rpc GetFlushAllState(milvus.GetFlushAllStateRequest) returns(milvus.GetFlushAllStateResponse) {}
|
2021-09-01 10:13:15 +08:00
|
|
|
|
2022-08-12 13:20:39 +08:00
|
|
|
rpc ShowConfigurations(internal.ShowConfigurationsRequest) returns (internal.ShowConfigurationsResponse){}
|
2021-09-01 10:13:15 +08:00
|
|
|
// https://wiki.lfaidata.foundation/display/MIL/MEP+8+--+Add+metrics+for+proxy
|
|
|
|
rpc GetMetrics(milvus.GetMetricsRequest) returns (milvus.GetMetricsResponse) {}
|
2021-11-09 14:47:02 +08:00
|
|
|
rpc ManualCompaction(milvus.ManualCompactionRequest) returns (milvus.ManualCompactionResponse) {}
|
|
|
|
rpc GetCompactionState(milvus.GetCompactionStateRequest) returns (milvus.GetCompactionStateResponse) {}
|
|
|
|
rpc GetCompactionStateWithPlans(milvus.GetCompactionPlansRequest) returns (milvus.GetCompactionPlansResponse) {}
|
2021-11-11 00:54:45 +08:00
|
|
|
|
|
|
|
rpc WatchChannels(WatchChannelsRequest) returns (WatchChannelsResponse) {}
|
2023-09-12 21:07:19 +08:00
|
|
|
rpc GetFlushState(GetFlushStateRequest) returns (milvus.GetFlushStateResponse) {}
|
2021-11-29 22:35:41 +08:00
|
|
|
rpc DropVirtualChannel(DropVirtualChannelRequest) returns (DropVirtualChannelResponse) {}
|
2022-03-09 18:33:59 +08:00
|
|
|
|
2022-04-06 15:33:32 +08:00
|
|
|
rpc SetSegmentState(SetSegmentStateRequest) returns (SetSegmentStateResponse) {}
|
2022-04-20 14:03:40 +08:00
|
|
|
rpc UpdateSegmentStatistics(UpdateSegmentStatisticsRequest) returns (common.Status) {}
|
2022-11-10 22:13:04 +08:00
|
|
|
rpc UpdateChannelCheckpoint(UpdateChannelCheckpointRequest) returns (common.Status) {}
|
2022-05-31 16:36:03 +08:00
|
|
|
|
2022-09-26 18:06:54 +08:00
|
|
|
rpc MarkSegmentsDropped(MarkSegmentsDroppedRequest) returns(common.Status) {}
|
2022-10-10 20:31:22 +08:00
|
|
|
|
2022-11-21 10:09:10 +08:00
|
|
|
rpc BroadcastAlteredCollection(AlterCollectionRequest) returns (common.Status) {}
|
2022-10-18 13:39:26 +08:00
|
|
|
|
|
|
|
rpc CheckHealth(milvus.CheckHealthRequest) returns (milvus.CheckHealthResponse) {}
|
2023-01-04 19:37:36 +08:00
|
|
|
|
2023-01-11 14:35:40 +08:00
|
|
|
rpc CreateIndex(index.CreateIndexRequest) returns (common.Status){}
|
2023-12-21 18:07:24 +08:00
|
|
|
rpc AlterIndex(index.AlterIndexRequest) returns (common.Status){}
|
2023-01-04 19:37:36 +08:00
|
|
|
// Deprecated: use DescribeIndex instead
|
2023-01-11 14:35:40 +08:00
|
|
|
rpc GetIndexState(index.GetIndexStateRequest) returns (index.GetIndexStateResponse) {}
|
|
|
|
rpc GetSegmentIndexState(index.GetSegmentIndexStateRequest) returns (index.GetSegmentIndexStateResponse) {}
|
|
|
|
rpc GetIndexInfos(index.GetIndexInfoRequest) returns (index.GetIndexInfoResponse){}
|
|
|
|
rpc DropIndex(index.DropIndexRequest) returns (common.Status) {}
|
|
|
|
rpc DescribeIndex(index.DescribeIndexRequest) returns (index.DescribeIndexResponse) {}
|
2023-05-06 10:34:39 +08:00
|
|
|
rpc GetIndexStatistics(index.GetIndexStatisticsRequest) returns (index.GetIndexStatisticsResponse) {}
|
2023-01-04 19:37:36 +08:00
|
|
|
// Deprecated: use DescribeIndex instead
|
2023-01-11 14:35:40 +08:00
|
|
|
rpc GetIndexBuildProgress(index.GetIndexBuildProgressRequest) returns (index.GetIndexBuildProgressResponse) {}
|
2024-03-07 17:37:01 +08:00
|
|
|
rpc ListIndexes(index.ListIndexesRequest) returns (index.ListIndexesResponse) {}
|
2023-01-12 09:55:42 +08:00
|
|
|
|
|
|
|
rpc GcConfirm(GcConfirmRequest) returns (GcConfirmResponse) {}
|
2023-09-25 14:05:27 +08:00
|
|
|
|
2023-06-14 14:16:38 +08:00
|
|
|
rpc ReportDataNodeTtMsgs(ReportDataNodeTtMsgsRequest) returns (common.Status) {}
|
2023-12-14 19:26:39 +08:00
|
|
|
|
|
|
|
rpc GcControl(GcControlRequest) returns(common.Status){}
|
2024-03-01 18:31:02 +08:00
|
|
|
|
|
|
|
// importV2
|
|
|
|
rpc ImportV2(internal.ImportRequestInternal) returns(internal.ImportResponse){}
|
|
|
|
rpc GetImportProgress(internal.GetImportProgressRequest) returns(internal.GetImportProgressResponse){}
|
|
|
|
rpc ListImports(internal.ListImportsRequestInternal) returns(internal.ListImportsResponse){}
|
2021-03-12 14:22:09 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
service DataNode {
|
2022-10-10 15:55:22 +08:00
|
|
|
rpc GetComponentStates(milvus.GetComponentStatesRequest) returns (milvus.ComponentStates) {}
|
2022-08-23 15:50:52 +08:00
|
|
|
rpc GetStatisticsChannel(internal.GetStatisticsChannelRequest) returns (milvus.StringResponse) {}
|
2021-03-12 14:22:09 +08:00
|
|
|
|
|
|
|
rpc WatchDmChannels(WatchDmChannelsRequest) returns (common.Status) {}
|
|
|
|
rpc FlushSegments(FlushSegmentsRequest) returns(common.Status) {}
|
2021-09-01 10:13:15 +08:00
|
|
|
|
2022-08-12 13:20:39 +08:00
|
|
|
rpc ShowConfigurations(internal.ShowConfigurationsRequest) returns (internal.ShowConfigurationsResponse){}
|
2021-09-01 10:13:15 +08:00
|
|
|
// https://wiki.lfaidata.foundation/display/MIL/MEP+8+--+Add+metrics+for+proxy
|
|
|
|
rpc GetMetrics(milvus.GetMetricsRequest) returns (milvus.GetMetricsResponse) {}
|
2022-08-23 15:50:52 +08:00
|
|
|
|
2024-06-16 22:07:57 +08:00
|
|
|
rpc CompactionV2(CompactionPlan) returns (common.Status) {}
|
2022-08-23 15:50:52 +08:00
|
|
|
rpc GetCompactionState(CompactionStateRequest) returns (CompactionStateResponse) {}
|
2022-09-23 10:22:52 +08:00
|
|
|
rpc SyncSegments(SyncSegmentsRequest) returns (common.Status) {}
|
2022-03-09 18:33:59 +08:00
|
|
|
|
2023-10-16 10:26:09 +08:00
|
|
|
// Deprecated
|
2022-05-25 14:34:00 +08:00
|
|
|
rpc ResendSegmentStats(ResendSegmentStatsRequest) returns(ResendSegmentStatsResponse) {}
|
2022-06-02 18:54:04 +08:00
|
|
|
|
2023-09-12 21:07:19 +08:00
|
|
|
rpc FlushChannels(FlushChannelsRequest) returns(common.Status) {}
|
2023-09-25 14:05:27 +08:00
|
|
|
rpc NotifyChannelOperation(ChannelOperationsRequest) returns(common.Status) {}
|
|
|
|
rpc CheckChannelOperationProgress(ChannelWatchInfo) returns(ChannelOperationProgressResponse) {}
|
2023-12-04 19:56:35 +08:00
|
|
|
|
|
|
|
// import v2
|
|
|
|
rpc PreImport(PreImportRequest) returns(common.Status) {}
|
|
|
|
rpc ImportV2(ImportRequest) returns(common.Status) {}
|
|
|
|
rpc QueryPreImport(QueryPreImportRequest) returns(QueryPreImportResponse) {}
|
|
|
|
rpc QueryImport(QueryImportRequest) returns(QueryImportResponse) {}
|
|
|
|
rpc DropImport(DropImportRequest) returns(common.Status) {}
|
2024-05-17 18:19:38 +08:00
|
|
|
|
|
|
|
rpc QuerySlot(QuerySlotRequest) returns(QuerySlotResponse) {}
|
2024-06-05 20:27:51 +08:00
|
|
|
|
|
|
|
rpc DropCompactionPlan(DropCompactionPlanRequest) returns(common.Status) {}
|
2021-03-12 14:22:09 +08:00
|
|
|
}
|
2021-01-14 14:24:14 +08:00
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message FlushRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
int64 dbID = 2;
|
2022-04-25 11:07:47 +08:00
|
|
|
repeated int64 segmentIDs = 3;
|
2021-03-12 14:22:09 +08:00
|
|
|
int64 collectionID = 4;
|
2024-03-22 15:29:09 +08:00
|
|
|
bool isImport = 5; // deprecated
|
2021-03-12 14:22:09 +08:00
|
|
|
}
|
2021-01-14 14:24:14 +08:00
|
|
|
|
2021-06-23 16:56:11 +08:00
|
|
|
message FlushResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
int64 dbID = 2;
|
|
|
|
int64 collectionID = 3;
|
2022-09-09 09:58:37 +08:00
|
|
|
repeated int64 segmentIDs = 4; // newly sealed segments
|
|
|
|
repeated int64 flushSegmentIDs = 5; // old flushed segment
|
|
|
|
int64 timeOfSeal = 6;
|
2023-09-12 21:07:19 +08:00
|
|
|
uint64 flush_ts = 7;
|
2024-04-30 09:45:27 +08:00
|
|
|
map<string, msg.MsgPosition> channel_cps = 8;
|
2023-09-12 21:07:19 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message FlushChannelsRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
uint64 flush_ts = 2;
|
|
|
|
repeated string channels = 3;
|
2021-06-23 16:56:11 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message SegmentIDRequest {
|
2021-01-18 19:32:08 +08:00
|
|
|
uint32 count = 1;
|
2021-03-12 14:22:09 +08:00
|
|
|
string channel_name = 2;
|
|
|
|
int64 collectionID = 3;
|
2021-01-14 14:24:14 +08:00
|
|
|
int64 partitionID = 4;
|
2024-03-22 15:29:09 +08:00
|
|
|
bool isImport = 5; // deprecated
|
|
|
|
int64 importTaskID = 6; // deprecated
|
2023-11-06 15:26:16 +08:00
|
|
|
SegmentLevel level = 7;
|
2021-01-14 14:24:14 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message AssignSegmentIDRequest {
|
2021-01-14 14:24:14 +08:00
|
|
|
int64 nodeID = 1;
|
|
|
|
string peer_role = 2;
|
2021-03-12 14:22:09 +08:00
|
|
|
repeated SegmentIDRequest segmentIDRequests = 3;
|
2021-01-14 14:24:14 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message SegmentIDAssignment {
|
2021-01-14 14:24:14 +08:00
|
|
|
int64 segID = 1;
|
2021-03-12 14:22:09 +08:00
|
|
|
string channel_name = 2;
|
2021-01-14 14:24:14 +08:00
|
|
|
uint32 count = 3;
|
|
|
|
int64 collectionID = 4;
|
|
|
|
int64 partitionID = 5;
|
|
|
|
uint64 expire_time = 6;
|
|
|
|
common.Status status = 7;
|
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message AssignSegmentIDResponse {
|
|
|
|
repeated SegmentIDAssignment segIDAssignments = 1;
|
2021-01-19 12:10:49 +08:00
|
|
|
common.Status status = 2;
|
2021-01-14 14:24:14 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message GetSegmentStatesRequest {
|
2021-01-16 15:06:19 +08:00
|
|
|
common.MsgBase base = 1;
|
2021-03-12 14:22:09 +08:00
|
|
|
repeated int64 segmentIDs = 2;
|
2021-02-02 10:58:39 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message SegmentStateInfo {
|
|
|
|
int64 segmentID = 1;
|
2021-02-03 18:55:00 +08:00
|
|
|
common.SegmentState state = 2;
|
2023-03-04 23:21:50 +08:00
|
|
|
msg.MsgPosition start_position = 3;
|
|
|
|
msg.MsgPosition end_position = 4;
|
2021-05-21 14:51:25 +08:00
|
|
|
common.Status status = 5;
|
2021-01-14 14:24:14 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message GetSegmentStatesResponse {
|
2021-02-02 10:58:39 +08:00
|
|
|
common.Status status = 1;
|
|
|
|
repeated SegmentStateInfo states = 2;
|
2021-01-14 14:24:14 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message GetSegmentInfoRequest {
|
2021-01-16 15:06:19 +08:00
|
|
|
common.MsgBase base = 1;
|
2021-03-12 14:22:09 +08:00
|
|
|
repeated int64 segmentIDs = 2;
|
2022-06-17 18:24:12 +08:00
|
|
|
bool includeUnHealthy =3;
|
2021-01-14 14:24:14 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message GetSegmentInfoResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
repeated SegmentInfo infos = 2;
|
2023-03-04 23:21:50 +08:00
|
|
|
map<string, msg.MsgPosition> channel_checkpoint = 3;
|
2021-03-12 14:22:09 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message GetInsertBinlogPathsRequest {
|
2021-01-20 09:36:50 +08:00
|
|
|
common.MsgBase base = 1;
|
2021-03-12 14:22:09 +08:00
|
|
|
int64 segmentID = 2;
|
2021-01-20 09:36:50 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message GetInsertBinlogPathsResponse {
|
|
|
|
repeated int64 fieldIDs = 1;
|
|
|
|
repeated internal.StringList paths = 2;
|
|
|
|
common.Status status = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetCollectionStatisticsRequest {
|
2021-01-22 11:07:07 +08:00
|
|
|
common.MsgBase base = 1;
|
2021-02-02 14:25:58 +08:00
|
|
|
int64 dbID = 2;
|
|
|
|
int64 collectionID = 3;
|
2021-01-22 11:07:07 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message GetCollectionStatisticsResponse {
|
2021-01-22 11:07:07 +08:00
|
|
|
repeated common.KeyValuePair stats = 1;
|
|
|
|
common.Status status = 2;
|
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message GetPartitionStatisticsRequest{
|
2021-01-22 11:07:07 +08:00
|
|
|
common.MsgBase base = 1;
|
2021-02-02 14:25:58 +08:00
|
|
|
int64 dbID = 2;
|
|
|
|
int64 collectionID = 3;
|
2022-07-18 09:58:28 +08:00
|
|
|
repeated int64 partitionIDs = 4;
|
2021-01-22 11:07:07 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message GetPartitionStatisticsResponse {
|
2021-01-22 11:07:07 +08:00
|
|
|
repeated common.KeyValuePair stats = 1;
|
|
|
|
common.Status status = 2;
|
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message GetSegmentInfoChannelRequest {
|
2021-01-22 09:36:40 +08:00
|
|
|
}
|
|
|
|
|
2021-06-04 09:57:54 +08:00
|
|
|
message VchannelInfo {
|
|
|
|
int64 collectionID = 1;
|
|
|
|
string channelName = 2;
|
2023-03-04 23:21:50 +08:00
|
|
|
msg.MsgPosition seek_position = 3;
|
2022-06-16 12:00:10 +08:00
|
|
|
repeated SegmentInfo unflushedSegments = 4; // deprecated, keep it for compatibility
|
|
|
|
repeated SegmentInfo flushedSegments = 5; // deprecated, keep it for compatibility
|
|
|
|
repeated SegmentInfo dropped_segments = 6; // deprecated, keep it for compatibility
|
|
|
|
repeated int64 unflushedSegmentIds = 7;
|
|
|
|
repeated int64 flushedSegmentIds = 8;
|
|
|
|
repeated int64 dropped_segmentIds = 9;
|
2023-01-04 19:37:36 +08:00
|
|
|
repeated int64 indexed_segmentIds = 10;
|
|
|
|
repeated SegmentInfo indexed_segments = 11;
|
2024-01-04 16:46:45 +08:00
|
|
|
repeated int64 level_zero_segment_ids = 12;
|
2024-06-10 21:34:08 +08:00
|
|
|
map<int64, int64> partition_stats_versions = 13;
|
2021-06-04 09:57:54 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message WatchDmChannelsRequest {
|
|
|
|
common.MsgBase base = 1;
|
2021-06-04 09:57:54 +08:00
|
|
|
repeated VchannelInfo vchannels = 2;
|
2021-01-22 09:36:40 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message FlushSegmentsRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
int64 dbID = 2;
|
|
|
|
int64 collectionID = 3;
|
2021-10-20 15:02:36 +08:00
|
|
|
repeated int64 segmentIDs = 4; // segments to flush
|
2023-10-17 12:00:10 +08:00
|
|
|
string channelName = 5; // vchannel name to flush
|
2021-01-22 09:36:40 +08:00
|
|
|
}
|
|
|
|
|
2021-03-12 14:22:09 +08:00
|
|
|
message SegmentMsg{
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
SegmentInfo segment = 2;
|
|
|
|
}
|
2021-01-25 15:17:17 +08:00
|
|
|
|
2021-04-09 09:55:04 +08:00
|
|
|
message SegmentInfo {
|
|
|
|
int64 ID = 1;
|
|
|
|
int64 collectionID = 2;
|
|
|
|
int64 partitionID = 3;
|
|
|
|
string insert_channel = 4;
|
2021-06-04 11:45:45 +08:00
|
|
|
int64 num_of_rows = 5;
|
2021-05-21 14:51:25 +08:00
|
|
|
common.SegmentState state = 6;
|
2021-08-19 13:00:12 +08:00
|
|
|
int64 max_row_num = 7;
|
|
|
|
uint64 last_expire_time = 8;
|
2023-03-04 23:21:50 +08:00
|
|
|
msg.MsgPosition start_position = 9;
|
|
|
|
msg.MsgPosition dml_position = 10;
|
2021-10-18 21:27:09 +08:00
|
|
|
// binlogs consist of insert binlogs
|
2021-08-19 13:00:12 +08:00
|
|
|
repeated FieldBinlog binlogs = 11;
|
2021-10-15 18:24:39 +08:00
|
|
|
repeated FieldBinlog statslogs = 12;
|
2021-12-19 20:00:42 +08:00
|
|
|
// deltalogs consists of delete binlogs. FieldID is not used yet since delete is always applied on primary key
|
|
|
|
repeated FieldBinlog deltalogs = 13;
|
2021-11-05 22:25:00 +08:00
|
|
|
bool createdByCompaction = 14;
|
|
|
|
repeated int64 compactionFrom = 15;
|
2021-11-16 14:23:21 +08:00
|
|
|
uint64 dropped_at = 16; // timestamp when segment marked drop
|
2022-09-21 16:34:51 +08:00
|
|
|
// A flag indicating if:
|
2022-10-27 16:21:34 +08:00
|
|
|
// (1) this segment is created by bulk insert, and
|
|
|
|
// (2) the bulk insert task that creates this segment has not yet reached `ImportCompleted` state.
|
2022-09-21 16:34:51 +08:00
|
|
|
bool is_importing = 17;
|
2022-10-26 16:49:31 +08:00
|
|
|
bool is_fake = 18;
|
2023-08-09 19:39:15 +08:00
|
|
|
|
|
|
|
// denote if this segment is compacted to other segment.
|
|
|
|
// For compatibility reasons, this flag of an old compacted segment may still be False.
|
|
|
|
// As for new fields added in the message, they will be populated with their respective field types' default values.
|
|
|
|
bool compacted = 19;
|
2023-10-07 20:55:31 +08:00
|
|
|
|
|
|
|
// Segment level, indicating compaction segment level
|
2024-02-18 14:12:49 +08:00
|
|
|
// Available value: Legacy, L0, L1, L2
|
2023-10-07 20:55:31 +08:00
|
|
|
// For legacy level, it represent old segment before segment level introduced
|
|
|
|
// so segments with Legacy level shall be treated as L1 segment
|
|
|
|
SegmentLevel level = 20;
|
2023-11-23 17:26:24 +08:00
|
|
|
int64 storage_version = 21;
|
2024-06-10 21:34:08 +08:00
|
|
|
|
|
|
|
int64 partition_stats_version = 22;
|
|
|
|
// use in major compaction, if compaction fail, should revert segment level to last value
|
|
|
|
SegmentLevel last_level = 23;
|
|
|
|
// use in major compaction, if compaction fail, should revert partition stats version to last value
|
|
|
|
int64 last_partition_stats_version = 24;
|
2021-04-09 09:55:04 +08:00
|
|
|
}
|
2021-05-20 11:34:45 +08:00
|
|
|
|
2021-06-11 19:15:48 +08:00
|
|
|
message SegmentStartPosition {
|
2023-03-04 23:21:50 +08:00
|
|
|
msg.MsgPosition start_position = 1;
|
2021-06-11 19:15:48 +08:00
|
|
|
int64 segmentID = 2;
|
2021-05-21 19:38:58 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message SaveBinlogPathsRequest {
|
|
|
|
common.MsgBase base = 1;
|
2021-05-20 11:34:45 +08:00
|
|
|
int64 segmentID = 2;
|
|
|
|
int64 collectionID = 3;
|
2021-08-19 13:00:12 +08:00
|
|
|
repeated FieldBinlog field2BinlogPaths = 4;
|
2021-06-08 19:25:37 +08:00
|
|
|
repeated CheckPoint checkPoints = 5;
|
2021-10-15 18:24:39 +08:00
|
|
|
repeated SegmentStartPosition start_positions = 6;
|
2021-06-11 19:15:48 +08:00
|
|
|
bool flushed = 7;
|
2021-10-19 00:26:35 +08:00
|
|
|
repeated FieldBinlog field2StatslogPaths = 8;
|
2021-12-19 20:00:42 +08:00
|
|
|
repeated FieldBinlog deltalogs = 9;
|
2021-11-09 22:27:37 +08:00
|
|
|
bool dropped = 10;
|
2024-03-22 15:29:09 +08:00
|
|
|
bool importing = 11; // deprecated
|
2023-06-21 21:26:42 +08:00
|
|
|
string channel = 12; // report channel name for verification
|
2023-11-06 15:26:16 +08:00
|
|
|
SegmentLevel seg_level =13;
|
|
|
|
int64 partitionID =14; // report partitionID for create L0 segment
|
2023-11-23 17:26:24 +08:00
|
|
|
int64 storageVersion = 15;
|
2021-06-03 18:34:21 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message CheckPoint {
|
|
|
|
int64 segmentID = 1;
|
2023-03-04 23:21:50 +08:00
|
|
|
msg.MsgPosition position = 2;
|
2021-06-04 11:45:45 +08:00
|
|
|
int64 num_of_rows = 3;
|
2021-06-07 14:16:36 +08:00
|
|
|
}
|
|
|
|
|
2021-10-19 00:26:35 +08:00
|
|
|
message DeltaLogInfo {
|
|
|
|
uint64 record_entries = 1;
|
|
|
|
uint64 timestamp_from = 2;
|
|
|
|
uint64 timestamp_to = 3;
|
|
|
|
string delta_log_path = 4;
|
2022-09-23 10:22:52 +08:00
|
|
|
int64 delta_log_size = 5;
|
2021-10-19 00:26:35 +08:00
|
|
|
}
|
|
|
|
|
2021-05-25 16:22:02 +08:00
|
|
|
enum ChannelWatchState {
|
2022-03-03 18:43:56 +08:00
|
|
|
Uncomplete = 0; // deprecated, keep it for compatibility
|
|
|
|
Complete = 1; // deprecated, keep it for compatibility
|
|
|
|
ToWatch = 2;
|
|
|
|
WatchSuccess = 3;
|
|
|
|
WatchFailure = 4;
|
|
|
|
ToRelease = 5;
|
|
|
|
ReleaseSuccess = 6;
|
|
|
|
ReleaseFailure = 7;
|
2021-05-25 16:22:02 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message ChannelStatus {
|
|
|
|
string name = 1;
|
|
|
|
ChannelWatchState state=2;
|
2021-05-27 14:14:05 +08:00
|
|
|
int64 collectionID = 3;
|
2021-05-25 16:22:02 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message DataNodeInfo {
|
|
|
|
string address = 1;
|
|
|
|
int64 version = 2;
|
|
|
|
repeated ChannelStatus channels = 3;
|
|
|
|
}
|
|
|
|
|
2021-06-07 09:47:36 +08:00
|
|
|
message SegmentBinlogs {
|
|
|
|
int64 segmentID = 1;
|
|
|
|
repeated FieldBinlog fieldBinlogs = 2;
|
2021-09-07 11:35:18 +08:00
|
|
|
int64 num_of_rows = 3;
|
2021-10-22 14:31:13 +08:00
|
|
|
repeated FieldBinlog statslogs = 4;
|
2021-12-19 20:00:42 +08:00
|
|
|
repeated FieldBinlog deltalogs = 5;
|
2022-04-20 16:15:41 +08:00
|
|
|
string insert_channel = 6;
|
2021-06-07 09:47:36 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message FieldBinlog{
|
|
|
|
int64 fieldID = 1;
|
2021-12-19 20:00:42 +08:00
|
|
|
repeated Binlog binlogs = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message Binlog {
|
|
|
|
int64 entries_num = 1;
|
|
|
|
uint64 timestamp_from = 2;
|
|
|
|
uint64 timestamp_to = 3;
|
2022-09-25 15:56:51 +08:00
|
|
|
// deprecated
|
2021-12-19 20:00:42 +08:00
|
|
|
string log_path = 4;
|
2022-08-20 10:24:51 +08:00
|
|
|
int64 log_size = 5;
|
2022-09-25 15:56:51 +08:00
|
|
|
int64 logID = 6;
|
2024-05-15 12:59:34 +08:00
|
|
|
// memory_size represents the size occupied by loading data into memory.
|
|
|
|
// log_size represents the size after data serialized.
|
|
|
|
// for stats_log, the memory_size always equal log_size.
|
|
|
|
int64 memory_size = 7;
|
2021-06-07 09:47:36 +08:00
|
|
|
}
|
|
|
|
|
2021-06-07 14:16:36 +08:00
|
|
|
message GetRecoveryInfoResponse {
|
2021-06-07 09:47:36 +08:00
|
|
|
common.Status status = 1;
|
2021-06-07 14:16:36 +08:00
|
|
|
repeated VchannelInfo channels = 2;
|
|
|
|
repeated SegmentBinlogs binlogs = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetRecoveryInfoRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
int64 collectionID = 2;
|
|
|
|
int64 partitionID = 3;
|
|
|
|
}
|
|
|
|
|
2023-04-18 18:30:32 +08:00
|
|
|
message GetRecoveryInfoResponseV2 {
|
|
|
|
common.Status status = 1;
|
|
|
|
repeated VchannelInfo channels = 2;
|
|
|
|
repeated SegmentInfo segments = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetRecoveryInfoRequestV2 {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
int64 collectionID = 2;
|
|
|
|
repeated int64 partitionIDs = 3;
|
|
|
|
}
|
|
|
|
|
2022-10-08 11:51:02 +08:00
|
|
|
message GetSegmentsByStatesRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
int64 collectionID = 2;
|
|
|
|
int64 partitionID = 3;
|
|
|
|
repeated common.SegmentState states = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetSegmentsByStatesResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
repeated int64 segments = 2;
|
|
|
|
}
|
|
|
|
|
2021-07-02 11:16:20 +08:00
|
|
|
message GetFlushedSegmentsRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
int64 collectionID = 2;
|
|
|
|
int64 partitionID = 3;
|
2022-11-14 14:37:07 +08:00
|
|
|
bool includeUnhealthy = 4;
|
2021-07-02 11:16:20 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message GetFlushedSegmentsResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
repeated int64 segments = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SegmentFlushCompletedMsg {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
SegmentInfo segment = 2;
|
|
|
|
}
|
|
|
|
|
2021-08-13 10:50:09 +08:00
|
|
|
message ChannelWatchInfo {
|
|
|
|
VchannelInfo vchan= 1;
|
|
|
|
int64 startTs = 2;
|
|
|
|
ChannelWatchState state = 3;
|
2022-03-03 18:43:56 +08:00
|
|
|
// the timeout ts, datanode shall do nothing after it
|
2023-02-15 16:20:34 +08:00
|
|
|
// NOT USED.
|
2022-03-03 18:43:56 +08:00
|
|
|
int64 timeoutTs = 4;
|
2022-10-10 01:37:21 +08:00
|
|
|
// the schema of the collection to watch, to avoid get schema rpc issues.
|
|
|
|
schema.CollectionSchema schema = 5;
|
2023-09-25 14:05:27 +08:00
|
|
|
// watch progress, deprecated
|
2023-02-15 16:20:34 +08:00
|
|
|
int32 progress = 6;
|
2023-09-25 14:05:27 +08:00
|
|
|
int64 opID = 7;
|
2021-08-13 10:50:09 +08:00
|
|
|
}
|
2021-08-24 15:51:51 +08:00
|
|
|
|
2021-10-20 11:58:35 +08:00
|
|
|
enum CompactionType {
|
|
|
|
UndefinedCompaction = 0;
|
2022-09-07 19:16:34 +08:00
|
|
|
reserved 1;
|
2021-10-20 11:58:35 +08:00
|
|
|
MergeCompaction = 2;
|
2022-02-18 14:51:49 +08:00
|
|
|
MixCompaction = 3;
|
2023-10-11 06:49:32 +08:00
|
|
|
// compactionV2
|
|
|
|
SingleCompaction = 4;
|
|
|
|
MinorCompaction = 5;
|
|
|
|
MajorCompaction = 6;
|
|
|
|
Level0DeleteCompaction = 7;
|
2024-06-10 21:34:08 +08:00
|
|
|
ClusteringCompaction = 8;
|
2021-10-20 11:58:35 +08:00
|
|
|
}
|
|
|
|
|
2022-08-23 15:50:52 +08:00
|
|
|
message CompactionStateRequest {
|
|
|
|
common.MsgBase base = 1;
|
2024-06-05 10:17:50 +08:00
|
|
|
int64 planID = 2;
|
2022-08-23 15:50:52 +08:00
|
|
|
}
|
|
|
|
|
2024-05-30 13:37:44 +08:00
|
|
|
message SyncSegmentInfo {
|
|
|
|
int64 segment_id = 1;
|
|
|
|
FieldBinlog pk_stats_log = 2;
|
|
|
|
common.SegmentState state = 3;
|
|
|
|
SegmentLevel level = 4;
|
|
|
|
int64 num_of_rows = 5;
|
|
|
|
}
|
|
|
|
|
2022-09-23 10:22:52 +08:00
|
|
|
message SyncSegmentsRequest {
|
2024-05-30 13:37:44 +08:00
|
|
|
// Deprecated, after v2.4.3
|
2022-09-23 10:22:52 +08:00
|
|
|
int64 planID = 1;
|
2024-05-30 13:37:44 +08:00
|
|
|
// Deprecated, after v2.4.3
|
2022-09-23 10:22:52 +08:00
|
|
|
int64 compacted_to = 2;
|
2024-05-30 13:37:44 +08:00
|
|
|
// Deprecated, after v2.4.3
|
2022-09-23 10:22:52 +08:00
|
|
|
int64 num_of_rows = 3;
|
2024-05-30 13:37:44 +08:00
|
|
|
// Deprecated, after v2.4.3
|
2022-09-23 10:22:52 +08:00
|
|
|
repeated int64 compacted_from = 4;
|
2024-05-30 13:37:44 +08:00
|
|
|
// Deprecated, after v2.4.3
|
2022-09-27 16:02:53 +08:00
|
|
|
repeated FieldBinlog stats_logs = 5;
|
2023-11-07 10:06:17 +08:00
|
|
|
string channel_name = 6;
|
|
|
|
int64 partition_id = 7;
|
|
|
|
int64 collection_id = 8;
|
2024-05-30 13:37:44 +08:00
|
|
|
map<int64, SyncSegmentInfo> segment_infos = 9;
|
2022-09-23 10:22:52 +08:00
|
|
|
}
|
|
|
|
|
2021-10-20 11:58:35 +08:00
|
|
|
message CompactionSegmentBinlogs {
|
|
|
|
int64 segmentID = 1;
|
|
|
|
repeated FieldBinlog fieldBinlogs = 2;
|
|
|
|
repeated FieldBinlog field2StatslogPaths = 3;
|
2021-12-19 20:00:42 +08:00
|
|
|
repeated FieldBinlog deltalogs = 4;
|
2022-04-20 16:15:41 +08:00
|
|
|
string insert_channel = 5;
|
2023-11-23 17:30:25 +08:00
|
|
|
SegmentLevel level = 6;
|
2024-01-18 22:06:31 +08:00
|
|
|
int64 collectionID = 7;
|
|
|
|
int64 partitionID = 8;
|
2021-10-20 11:58:35 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message CompactionPlan {
|
|
|
|
int64 planID = 1;
|
2021-11-05 22:25:00 +08:00
|
|
|
repeated CompactionSegmentBinlogs segmentBinlogs = 2;
|
2024-06-05 10:17:50 +08:00
|
|
|
int64 start_time = 3;
|
2021-10-20 11:58:35 +08:00
|
|
|
int32 timeout_in_seconds = 4;
|
|
|
|
CompactionType type = 5;
|
|
|
|
uint64 timetravel = 6;
|
2021-11-05 22:25:00 +08:00
|
|
|
string channel = 7;
|
2022-10-10 20:31:22 +08:00
|
|
|
int64 collection_ttl = 8;
|
2022-12-09 16:03:20 +08:00
|
|
|
int64 total_rows = 9;
|
2024-05-24 09:07:41 +08:00
|
|
|
schema.CollectionSchema schema = 10;
|
2024-06-10 21:34:08 +08:00
|
|
|
int64 clustering_key_field = 11;
|
|
|
|
int64 max_segment_rows = 12;
|
|
|
|
int64 prefer_segment_rows = 13;
|
|
|
|
string analyze_result_path = 14;
|
|
|
|
repeated int64 analyze_segment_ids = 15;
|
|
|
|
int32 state = 16;
|
2021-10-20 11:58:35 +08:00
|
|
|
}
|
|
|
|
|
2023-11-14 15:56:19 +08:00
|
|
|
message CompactionSegment {
|
|
|
|
int64 planID = 1; // deprecated after 2.3.4
|
2021-10-20 11:58:35 +08:00
|
|
|
int64 segmentID = 2;
|
|
|
|
int64 num_of_rows = 3;
|
|
|
|
repeated FieldBinlog insert_logs = 4;
|
|
|
|
repeated FieldBinlog field2StatslogPaths = 5;
|
2021-12-19 20:00:42 +08:00
|
|
|
repeated FieldBinlog deltalogs = 6;
|
2022-10-20 16:39:29 +08:00
|
|
|
string channel = 7;
|
2021-10-20 11:58:35 +08:00
|
|
|
}
|
|
|
|
|
2023-11-14 15:56:19 +08:00
|
|
|
message CompactionPlanResult {
|
2022-08-23 15:50:52 +08:00
|
|
|
int64 planID = 1;
|
2024-06-10 21:34:08 +08:00
|
|
|
CompactionTaskState state = 2;
|
2023-11-14 15:56:19 +08:00
|
|
|
repeated CompactionSegment segments = 3;
|
|
|
|
string channel = 4;
|
2024-01-19 11:34:54 +08:00
|
|
|
CompactionType type = 5;
|
2022-08-23 15:50:52 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message CompactionStateResponse {
|
|
|
|
common.Status status = 1;
|
2023-11-14 15:56:19 +08:00
|
|
|
repeated CompactionPlanResult results = 2;
|
2022-08-23 15:50:52 +08:00
|
|
|
}
|
|
|
|
|
2021-08-24 15:51:51 +08:00
|
|
|
// Deprecated
|
|
|
|
message SegmentFieldBinlogMeta {
|
|
|
|
int64 fieldID = 1;
|
|
|
|
string binlog_path = 2;
|
2021-11-09 14:47:02 +08:00
|
|
|
}
|
2021-11-11 00:54:45 +08:00
|
|
|
|
|
|
|
message WatchChannelsRequest {
|
|
|
|
int64 collectionID = 1;
|
|
|
|
repeated string channelNames = 2;
|
2022-08-22 14:42:52 +08:00
|
|
|
repeated common.KeyDataPair start_positions = 3;
|
2023-09-25 14:05:27 +08:00
|
|
|
schema.CollectionSchema schema = 4;
|
2023-08-16 09:05:32 +08:00
|
|
|
uint64 create_timestamp = 5;
|
2021-11-11 00:54:45 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message WatchChannelsResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
}
|
2021-11-29 22:35:41 +08:00
|
|
|
|
2022-04-06 15:33:32 +08:00
|
|
|
message SetSegmentStateRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
int64 segment_id = 2;
|
|
|
|
common.SegmentState new_state = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetSegmentStateResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
}
|
|
|
|
|
2021-11-29 22:35:41 +08:00
|
|
|
message DropVirtualChannelRequest {
|
2022-09-23 10:22:52 +08:00
|
|
|
common.MsgBase base = 1;
|
|
|
|
string channel_name = 2;
|
2021-11-29 22:35:41 +08:00
|
|
|
repeated DropVirtualChannelSegment segments = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message DropVirtualChannelSegment {
|
|
|
|
int64 segmentID = 1;
|
|
|
|
int64 collectionID = 2;
|
|
|
|
repeated FieldBinlog field2BinlogPaths = 3;
|
|
|
|
repeated FieldBinlog field2StatslogPaths = 4;
|
2021-12-19 20:00:42 +08:00
|
|
|
repeated FieldBinlog deltalogs = 5;
|
2023-03-04 23:21:50 +08:00
|
|
|
msg.MsgPosition startPosition = 6;
|
|
|
|
msg.MsgPosition checkPoint = 7;
|
2021-11-29 22:35:41 +08:00
|
|
|
int64 numOfRows = 8;
|
|
|
|
}
|
|
|
|
|
|
|
|
message DropVirtualChannelResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
}
|
2022-03-09 18:33:59 +08:00
|
|
|
|
2022-04-20 14:03:40 +08:00
|
|
|
message UpdateSegmentStatisticsRequest {
|
|
|
|
common.MsgBase base = 1;
|
2023-03-04 23:21:50 +08:00
|
|
|
repeated common.SegmentStats stats = 2;
|
2022-05-25 14:34:00 +08:00
|
|
|
}
|
|
|
|
|
2022-11-10 22:13:04 +08:00
|
|
|
message UpdateChannelCheckpointRequest {
|
|
|
|
common.MsgBase base = 1;
|
2024-03-07 20:39:02 +08:00
|
|
|
string vChannel = 2; // deprecated, keep it for compatibility
|
|
|
|
msg.MsgPosition position = 3; // deprecated, keep it for compatibility
|
|
|
|
repeated msg.MsgPosition channel_checkpoints = 4;
|
2022-11-10 22:13:04 +08:00
|
|
|
}
|
|
|
|
|
2022-05-25 14:34:00 +08:00
|
|
|
message ResendSegmentStatsRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ResendSegmentStatsResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
repeated int64 seg_resent = 2;
|
|
|
|
}
|
2022-06-02 18:54:04 +08:00
|
|
|
|
2022-09-26 18:06:54 +08:00
|
|
|
message MarkSegmentsDroppedRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
repeated int64 segment_ids = 2; // IDs of segments that needs to be marked as `dropped`.
|
2022-06-02 18:54:04 +08:00
|
|
|
}
|
2022-06-15 21:38:10 +08:00
|
|
|
|
|
|
|
message SegmentReferenceLock {
|
|
|
|
int64 taskID = 1;
|
|
|
|
int64 nodeID = 2;
|
|
|
|
repeated int64 segmentIDs = 3;
|
|
|
|
}
|
2022-11-21 10:09:10 +08:00
|
|
|
|
|
|
|
|
|
|
|
message AlterCollectionRequest {
|
|
|
|
int64 collectionID = 1;
|
|
|
|
schema.CollectionSchema schema = 2;
|
|
|
|
repeated int64 partitionIDs = 3;
|
|
|
|
repeated common.KeyDataPair start_positions = 4;
|
|
|
|
repeated common.KeyValuePair properties = 5;
|
2024-04-12 16:01:19 +08:00
|
|
|
int64 dbID = 6;
|
2024-04-30 09:45:27 +08:00
|
|
|
repeated string vChannels = 7;
|
2022-11-21 10:09:10 +08:00
|
|
|
}
|
2023-01-04 19:37:36 +08:00
|
|
|
|
2023-01-12 09:55:42 +08:00
|
|
|
message GcConfirmRequest {
|
|
|
|
int64 collection_id = 1;
|
|
|
|
int64 partition_id = 2; // -1 means whole collection.
|
|
|
|
}
|
|
|
|
|
|
|
|
message GcConfirmResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
bool gc_finished = 2;
|
|
|
|
}
|
|
|
|
|
2023-06-14 14:16:38 +08:00
|
|
|
message ReportDataNodeTtMsgsRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
repeated msg.DataNodeTtMsg msgs = 2; // -1 means whole collection.
|
|
|
|
}
|
2023-09-12 21:07:19 +08:00
|
|
|
|
|
|
|
message GetFlushStateRequest {
|
|
|
|
repeated int64 segmentIDs = 1;
|
|
|
|
uint64 flush_ts = 2;
|
|
|
|
string db_name = 3;
|
|
|
|
string collection_name = 4;
|
|
|
|
int64 collectionID = 5;
|
|
|
|
}
|
2023-09-25 14:05:27 +08:00
|
|
|
|
|
|
|
message ChannelOperationsRequest {
|
|
|
|
repeated ChannelWatchInfo infos = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ChannelOperationProgressResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
int64 opID = 2;
|
|
|
|
ChannelWatchState state = 3;
|
|
|
|
int32 progress = 4;
|
|
|
|
}
|
2023-12-04 19:56:35 +08:00
|
|
|
|
|
|
|
message PreImportRequest {
|
|
|
|
string clusterID = 1;
|
2024-01-31 20:45:04 +08:00
|
|
|
int64 jobID = 2;
|
2023-12-04 19:56:35 +08:00
|
|
|
int64 taskID = 3;
|
|
|
|
int64 collectionID = 4;
|
2024-01-31 20:45:04 +08:00
|
|
|
repeated int64 partitionIDs = 5;
|
|
|
|
repeated string vchannels = 6;
|
|
|
|
schema.CollectionSchema schema = 7;
|
|
|
|
repeated internal.ImportFile import_files = 8;
|
|
|
|
repeated common.KeyValuePair options = 9;
|
2023-12-04 19:56:35 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message autoIDRange {
|
|
|
|
int64 begin = 1;
|
|
|
|
int64 end = 2;
|
|
|
|
}
|
|
|
|
|
2024-01-31 20:45:04 +08:00
|
|
|
message ImportRequestSegment {
|
|
|
|
int64 segmentID = 1;
|
|
|
|
int64 partitionID = 2;
|
|
|
|
string vchannel = 3;
|
|
|
|
}
|
|
|
|
|
2023-12-04 19:56:35 +08:00
|
|
|
message ImportRequest {
|
|
|
|
string clusterID = 1;
|
2024-01-31 20:45:04 +08:00
|
|
|
int64 jobID = 2;
|
2023-12-04 19:56:35 +08:00
|
|
|
int64 taskID = 3;
|
|
|
|
int64 collectionID = 4;
|
2024-03-01 18:31:02 +08:00
|
|
|
repeated int64 partitionIDs = 5;
|
|
|
|
repeated string vchannels = 6;
|
|
|
|
schema.CollectionSchema schema = 7;
|
|
|
|
repeated internal.ImportFile files = 8;
|
|
|
|
repeated common.KeyValuePair options = 9;
|
|
|
|
uint64 ts = 10;
|
|
|
|
autoIDRange autoID_range = 11;
|
|
|
|
repeated ImportRequestSegment request_segments = 12;
|
2023-12-04 19:56:35 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message QueryPreImportRequest {
|
|
|
|
string clusterID = 1;
|
2024-01-31 20:45:04 +08:00
|
|
|
int64 jobID = 2;
|
2023-12-04 19:56:35 +08:00
|
|
|
int64 taskID = 3;
|
|
|
|
}
|
|
|
|
|
2024-03-01 18:31:02 +08:00
|
|
|
message PartitionImportStats {
|
|
|
|
map<int64, int64> partition_rows = 1; // partitionID -> numRows
|
|
|
|
map<int64, int64> partition_data_size = 2; // partitionID -> dataSize
|
2024-01-31 20:45:04 +08:00
|
|
|
}
|
|
|
|
|
2023-12-04 19:56:35 +08:00
|
|
|
message ImportFileStats {
|
2024-01-31 20:45:04 +08:00
|
|
|
internal.ImportFile import_file = 1;
|
2023-12-04 19:56:35 +08:00
|
|
|
int64 file_size = 2;
|
|
|
|
int64 total_rows = 3;
|
2024-03-01 18:31:02 +08:00
|
|
|
int64 total_memory_size = 4;
|
|
|
|
map<string, PartitionImportStats> hashed_stats = 5; // channel -> PartitionImportStats
|
2023-12-04 19:56:35 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message QueryPreImportResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
int64 taskID = 2;
|
2024-03-01 18:31:02 +08:00
|
|
|
ImportTaskStateV2 state = 3;
|
2023-12-04 19:56:35 +08:00
|
|
|
string reason = 4;
|
|
|
|
int64 slots = 5;
|
|
|
|
repeated ImportFileStats file_stats = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
message QueryImportRequest {
|
|
|
|
string clusterID = 1;
|
2024-01-31 20:45:04 +08:00
|
|
|
int64 jobID = 2;
|
2023-12-04 19:56:35 +08:00
|
|
|
int64 taskID = 3;
|
2024-01-31 20:45:04 +08:00
|
|
|
bool querySlot = 4;
|
2023-12-04 19:56:35 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message ImportSegmentInfo {
|
|
|
|
int64 segmentID = 1;
|
2024-01-31 20:45:04 +08:00
|
|
|
int64 imported_rows = 2;
|
|
|
|
repeated FieldBinlog binlogs = 3;
|
|
|
|
repeated FieldBinlog statslogs = 4;
|
2024-06-07 14:17:20 +08:00
|
|
|
repeated FieldBinlog deltalogs = 5;
|
2023-12-04 19:56:35 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message QueryImportResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
int64 taskID = 2;
|
2024-03-01 18:31:02 +08:00
|
|
|
ImportTaskStateV2 state = 3;
|
2023-12-04 19:56:35 +08:00
|
|
|
string reason = 4;
|
|
|
|
int64 slots = 5;
|
|
|
|
repeated ImportSegmentInfo import_segments_info = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
message DropImportRequest {
|
|
|
|
string clusterID = 1;
|
2024-01-31 20:45:04 +08:00
|
|
|
int64 jobID = 2;
|
2023-12-04 19:56:35 +08:00
|
|
|
int64 taskID = 3;
|
|
|
|
}
|
|
|
|
|
2024-03-01 18:31:02 +08:00
|
|
|
message ImportJob {
|
2024-01-31 20:45:04 +08:00
|
|
|
int64 jobID = 1;
|
2024-03-01 18:31:02 +08:00
|
|
|
int64 dbID = 2;
|
2023-12-04 19:56:35 +08:00
|
|
|
int64 collectionID = 3;
|
2024-03-13 19:51:03 +08:00
|
|
|
string collection_name = 4;
|
|
|
|
repeated int64 partitionIDs = 5;
|
|
|
|
repeated string vchannels = 6;
|
|
|
|
schema.CollectionSchema schema = 7;
|
|
|
|
uint64 timeout_ts = 8;
|
|
|
|
uint64 cleanup_ts = 9;
|
2024-03-15 14:43:03 +08:00
|
|
|
int64 requestedDiskSize = 10;
|
|
|
|
internal.ImportJobState state = 11;
|
|
|
|
string reason = 12;
|
|
|
|
string complete_time = 13;
|
|
|
|
repeated internal.ImportFile files = 14;
|
|
|
|
repeated common.KeyValuePair options = 15;
|
2024-03-24 21:57:06 +08:00
|
|
|
string start_time = 16;
|
2024-03-01 18:31:02 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
enum ImportTaskStateV2 {
|
|
|
|
None = 0;
|
|
|
|
Pending = 1;
|
|
|
|
InProgress = 2;
|
|
|
|
Failed = 3;
|
|
|
|
Completed = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
message PreImportTask {
|
|
|
|
int64 jobID = 1;
|
|
|
|
int64 taskID = 2;
|
|
|
|
int64 collectionID = 3;
|
2024-01-31 20:45:04 +08:00
|
|
|
int64 nodeID = 6;
|
2024-03-01 18:31:02 +08:00
|
|
|
ImportTaskStateV2 state = 7;
|
2024-01-31 20:45:04 +08:00
|
|
|
string reason = 8;
|
|
|
|
repeated ImportFileStats file_stats = 10;
|
2023-12-04 19:56:35 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message ImportTaskV2 {
|
2024-01-31 20:45:04 +08:00
|
|
|
int64 jobID = 1;
|
2023-12-04 19:56:35 +08:00
|
|
|
int64 taskID = 2;
|
|
|
|
int64 collectionID = 3;
|
2024-01-31 20:45:04 +08:00
|
|
|
repeated int64 segmentIDs = 4;
|
|
|
|
int64 nodeID = 5;
|
2024-03-01 18:31:02 +08:00
|
|
|
ImportTaskStateV2 state = 6;
|
2024-01-31 20:45:04 +08:00
|
|
|
string reason = 7;
|
2024-03-13 19:51:03 +08:00
|
|
|
string complete_time = 8;
|
2024-01-31 20:45:04 +08:00
|
|
|
repeated ImportFileStats file_stats = 9;
|
2023-12-04 19:56:35 +08:00
|
|
|
}
|
2023-12-14 19:26:39 +08:00
|
|
|
|
|
|
|
enum GcCommand {
|
|
|
|
_ = 0;
|
|
|
|
Pause = 1;
|
|
|
|
Resume = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GcControlRequest {
|
|
|
|
common.MsgBase base = 1;
|
|
|
|
GcCommand command = 2;
|
|
|
|
repeated common.KeyValuePair params = 3;
|
2024-01-19 11:34:54 +08:00
|
|
|
}
|
2024-05-17 18:19:38 +08:00
|
|
|
|
|
|
|
message QuerySlotRequest {}
|
|
|
|
|
|
|
|
message QuerySlotResponse {
|
|
|
|
common.Status status = 1;
|
|
|
|
int64 num_slots = 2;
|
|
|
|
}
|
2024-06-05 10:17:50 +08:00
|
|
|
|
|
|
|
enum CompactionTaskState {
|
|
|
|
unknown = 0;
|
|
|
|
executing = 1;
|
|
|
|
pipelining = 2;
|
|
|
|
completed = 3;
|
|
|
|
failed = 4;
|
|
|
|
timeout = 5;
|
|
|
|
analyzing = 6;
|
|
|
|
indexing = 7;
|
|
|
|
cleaned = 8;
|
|
|
|
meta_saved = 9;
|
|
|
|
}
|
|
|
|
|
|
|
|
message CompactionTask{
|
|
|
|
int64 planID = 1;
|
|
|
|
int64 triggerID = 2;
|
|
|
|
int64 collectionID = 3;
|
|
|
|
int64 partitionID = 4;
|
|
|
|
string channel = 5;
|
|
|
|
CompactionType type = 6;
|
|
|
|
CompactionTaskState state = 7;
|
|
|
|
string fail_reason = 8;
|
|
|
|
int64 start_time = 9;
|
|
|
|
int64 end_time = 10;
|
|
|
|
int32 timeout_in_seconds = 11;
|
|
|
|
int32 retry_times = 12;
|
|
|
|
int64 collection_ttl = 13;
|
|
|
|
int64 total_rows = 14;
|
|
|
|
repeated int64 inputSegments = 15;
|
|
|
|
repeated int64 resultSegments = 16;
|
|
|
|
msg.MsgPosition pos = 17;
|
|
|
|
int64 nodeID = 18;
|
|
|
|
schema.CollectionSchema schema = 19;
|
2024-06-10 21:34:08 +08:00
|
|
|
schema.FieldSchema clustering_key_field = 20;
|
|
|
|
int64 max_segment_rows = 21;
|
|
|
|
int64 prefer_segment_rows = 22;
|
|
|
|
int64 analyzeTaskID = 23;
|
|
|
|
int64 analyzeVersion = 24;
|
2024-07-03 19:08:09 +08:00
|
|
|
int64 lastStateStartTime = 25;
|
2024-06-10 21:34:08 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
message PartitionStatsInfo {
|
|
|
|
int64 collectionID = 1;
|
|
|
|
int64 partitionID = 2;
|
|
|
|
string vChannel = 3;
|
|
|
|
int64 version = 4;
|
|
|
|
repeated int64 segmentIDs = 5;
|
|
|
|
int64 analyzeTaskID = 6;
|
2024-06-05 10:17:50 +08:00
|
|
|
}
|
2024-06-05 20:27:51 +08:00
|
|
|
|
|
|
|
message DropCompactionPlanRequest {
|
|
|
|
int64 planID = 1;
|
|
|
|
}
|