From 9ec91aa19f876dbaf99a0ecc1ab1f5f497b0f1bc Mon Sep 17 00:00:00 2001 From: shuiyisong <113876041+shuiyisong@users.noreply.github.com> Date: Mon, 27 Mar 2023 15:24:03 +0800 Subject: [PATCH] chore: add `BatchDelete` to `Store` api (#21) --- go/greptime/v1/meta/store.pb.go | 513 ++++++++++++++++++--------- go/greptime/v1/meta/store_grpc.pb.go | 40 +++ proto/greptime/v1/meta/store.proto | 22 ++ 3 files changed, 406 insertions(+), 169 deletions(-) diff --git a/go/greptime/v1/meta/store.pb.go b/go/greptime/v1/meta/store.pb.go index a182f12..0c18056 100644 --- a/go/greptime/v1/meta/store.pb.go +++ b/go/greptime/v1/meta/store.pb.go @@ -540,6 +540,128 @@ func (x *BatchPutResponse) GetPrevKvs() []*KeyValue { return nil } +type BatchDeleteRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Header *RequestHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` + Keys [][]byte `protobuf:"bytes,2,rep,name=keys,proto3" json:"keys,omitempty"` + // If prev_kv is set, gets the previous key-value pairs before deleting it. + // The previous key-value pairs will be returned in the batch delete response. + PrevKv bool `protobuf:"varint,3,opt,name=prev_kv,json=prevKv,proto3" json:"prev_kv,omitempty"` +} + +func (x *BatchDeleteRequest) Reset() { + *x = BatchDeleteRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_greptime_v1_meta_store_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BatchDeleteRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BatchDeleteRequest) ProtoMessage() {} + +func (x *BatchDeleteRequest) ProtoReflect() protoreflect.Message { + mi := &file_greptime_v1_meta_store_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BatchDeleteRequest.ProtoReflect.Descriptor instead. +func (*BatchDeleteRequest) Descriptor() ([]byte, []int) { + return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{8} +} + +func (x *BatchDeleteRequest) GetHeader() *RequestHeader { + if x != nil { + return x.Header + } + return nil +} + +func (x *BatchDeleteRequest) GetKeys() [][]byte { + if x != nil { + return x.Keys + } + return nil +} + +func (x *BatchDeleteRequest) GetPrevKv() bool { + if x != nil { + return x.PrevKv + } + return false +} + +type BatchDeleteResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Header *ResponseHeader `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"` + // If prev_kv is set in the request, the previous key-value pairs will be + // returned. + PrevKvs []*KeyValue `protobuf:"bytes,2,rep,name=prev_kvs,json=prevKvs,proto3" json:"prev_kvs,omitempty"` +} + +func (x *BatchDeleteResponse) Reset() { + *x = BatchDeleteResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_greptime_v1_meta_store_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BatchDeleteResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BatchDeleteResponse) ProtoMessage() {} + +func (x *BatchDeleteResponse) ProtoReflect() protoreflect.Message { + mi := &file_greptime_v1_meta_store_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BatchDeleteResponse.ProtoReflect.Descriptor instead. +func (*BatchDeleteResponse) Descriptor() ([]byte, []int) { + return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{9} +} + +func (x *BatchDeleteResponse) GetHeader() *ResponseHeader { + if x != nil { + return x.Header + } + return nil +} + +func (x *BatchDeleteResponse) GetPrevKvs() []*KeyValue { + if x != nil { + return x.PrevKvs + } + return nil +} + type CompareAndPutRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -558,7 +680,7 @@ type CompareAndPutRequest struct { func (x *CompareAndPutRequest) Reset() { *x = CompareAndPutRequest{} if protoimpl.UnsafeEnabled { - mi := &file_greptime_v1_meta_store_proto_msgTypes[8] + mi := &file_greptime_v1_meta_store_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -571,7 +693,7 @@ func (x *CompareAndPutRequest) String() string { func (*CompareAndPutRequest) ProtoMessage() {} func (x *CompareAndPutRequest) ProtoReflect() protoreflect.Message { - mi := &file_greptime_v1_meta_store_proto_msgTypes[8] + mi := &file_greptime_v1_meta_store_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -584,7 +706,7 @@ func (x *CompareAndPutRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CompareAndPutRequest.ProtoReflect.Descriptor instead. func (*CompareAndPutRequest) Descriptor() ([]byte, []int) { - return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{8} + return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{10} } func (x *CompareAndPutRequest) GetHeader() *RequestHeader { @@ -628,7 +750,7 @@ type CompareAndPutResponse struct { func (x *CompareAndPutResponse) Reset() { *x = CompareAndPutResponse{} if protoimpl.UnsafeEnabled { - mi := &file_greptime_v1_meta_store_proto_msgTypes[9] + mi := &file_greptime_v1_meta_store_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -641,7 +763,7 @@ func (x *CompareAndPutResponse) String() string { func (*CompareAndPutResponse) ProtoMessage() {} func (x *CompareAndPutResponse) ProtoReflect() protoreflect.Message { - mi := &file_greptime_v1_meta_store_proto_msgTypes[9] + mi := &file_greptime_v1_meta_store_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -654,7 +776,7 @@ func (x *CompareAndPutResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CompareAndPutResponse.ProtoReflect.Descriptor instead. func (*CompareAndPutResponse) Descriptor() ([]byte, []int) { - return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{9} + return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{11} } func (x *CompareAndPutResponse) GetHeader() *ResponseHeader { @@ -703,7 +825,7 @@ type DeleteRangeRequest struct { func (x *DeleteRangeRequest) Reset() { *x = DeleteRangeRequest{} if protoimpl.UnsafeEnabled { - mi := &file_greptime_v1_meta_store_proto_msgTypes[10] + mi := &file_greptime_v1_meta_store_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -716,7 +838,7 @@ func (x *DeleteRangeRequest) String() string { func (*DeleteRangeRequest) ProtoMessage() {} func (x *DeleteRangeRequest) ProtoReflect() protoreflect.Message { - mi := &file_greptime_v1_meta_store_proto_msgTypes[10] + mi := &file_greptime_v1_meta_store_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -729,7 +851,7 @@ func (x *DeleteRangeRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteRangeRequest.ProtoReflect.Descriptor instead. func (*DeleteRangeRequest) Descriptor() ([]byte, []int) { - return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{10} + return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{12} } func (x *DeleteRangeRequest) GetHeader() *RequestHeader { @@ -776,7 +898,7 @@ type DeleteRangeResponse struct { func (x *DeleteRangeResponse) Reset() { *x = DeleteRangeResponse{} if protoimpl.UnsafeEnabled { - mi := &file_greptime_v1_meta_store_proto_msgTypes[11] + mi := &file_greptime_v1_meta_store_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -789,7 +911,7 @@ func (x *DeleteRangeResponse) String() string { func (*DeleteRangeResponse) ProtoMessage() {} func (x *DeleteRangeResponse) ProtoReflect() protoreflect.Message { - mi := &file_greptime_v1_meta_store_proto_msgTypes[11] + mi := &file_greptime_v1_meta_store_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -802,7 +924,7 @@ func (x *DeleteRangeResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteRangeResponse.ProtoReflect.Descriptor instead. func (*DeleteRangeResponse) Descriptor() ([]byte, []int) { - return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{11} + return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{13} } func (x *DeleteRangeResponse) GetHeader() *ResponseHeader { @@ -842,7 +964,7 @@ type MoveValueRequest struct { func (x *MoveValueRequest) Reset() { *x = MoveValueRequest{} if protoimpl.UnsafeEnabled { - mi := &file_greptime_v1_meta_store_proto_msgTypes[12] + mi := &file_greptime_v1_meta_store_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -855,7 +977,7 @@ func (x *MoveValueRequest) String() string { func (*MoveValueRequest) ProtoMessage() {} func (x *MoveValueRequest) ProtoReflect() protoreflect.Message { - mi := &file_greptime_v1_meta_store_proto_msgTypes[12] + mi := &file_greptime_v1_meta_store_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -868,7 +990,7 @@ func (x *MoveValueRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use MoveValueRequest.ProtoReflect.Descriptor instead. func (*MoveValueRequest) Descriptor() ([]byte, []int) { - return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{12} + return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{14} } func (x *MoveValueRequest) GetHeader() *RequestHeader { @@ -906,7 +1028,7 @@ type MoveValueResponse struct { func (x *MoveValueResponse) Reset() { *x = MoveValueResponse{} if protoimpl.UnsafeEnabled { - mi := &file_greptime_v1_meta_store_proto_msgTypes[13] + mi := &file_greptime_v1_meta_store_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -919,7 +1041,7 @@ func (x *MoveValueResponse) String() string { func (*MoveValueResponse) ProtoMessage() {} func (x *MoveValueResponse) ProtoReflect() protoreflect.Message { - mi := &file_greptime_v1_meta_store_proto_msgTypes[13] + mi := &file_greptime_v1_meta_store_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -932,7 +1054,7 @@ func (x *MoveValueResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use MoveValueResponse.ProtoReflect.Descriptor instead. func (*MoveValueResponse) Descriptor() ([]byte, []int) { - return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{13} + return file_greptime_v1_meta_store_proto_rawDescGZIP(), []int{15} } func (x *MoveValueResponse) GetHeader() *ResponseHeader { @@ -1024,103 +1146,125 @@ var file_greptime_v1_meta_store_proto_rawDesc = []byte{ 0x35, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x6b, 0x76, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x70, - 0x72, 0x65, 0x76, 0x4b, 0x76, 0x73, 0x22, 0x8f, 0x01, 0x0a, 0x14, 0x43, 0x6f, 0x6d, 0x70, 0x61, - 0x72, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x37, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, - 0x74, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, - 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, - 0x70, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x65, 0x78, 0x70, 0x65, - 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xa0, 0x01, 0x0a, 0x15, 0x43, 0x6f, 0x6d, - 0x70, 0x61, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, - 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, - 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x6b, - 0x76, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, - 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x52, 0x06, 0x70, 0x72, 0x65, 0x76, 0x4b, 0x76, 0x22, 0x95, 0x01, 0x0a, 0x12, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x37, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, - 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6b, - 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1b, 0x0a, - 0x09, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, - 0x52, 0x08, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x72, - 0x65, 0x76, 0x5f, 0x6b, 0x76, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x70, 0x72, 0x65, - 0x76, 0x4b, 0x76, 0x22, 0xa0, 0x01, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x68, - 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x72, - 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, - 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, - 0x35, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x6b, 0x76, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x70, - 0x72, 0x65, 0x76, 0x4b, 0x76, 0x73, 0x22, 0x7d, 0x0a, 0x10, 0x4d, 0x6f, 0x76, 0x65, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x06, 0x68, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x72, 0x65, - 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, - 0x64, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x6b, 0x65, 0x79, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x66, 0x72, 0x6f, 0x6d, 0x4b, 0x65, 0x79, 0x12, 0x15, - 0x0a, 0x06, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, - 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x22, 0x79, 0x0a, 0x11, 0x4d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x68, 0x65, + 0x72, 0x65, 0x76, 0x4b, 0x76, 0x73, 0x22, 0x7a, 0x0a, 0x12, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x06, + 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, + 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0c, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x70, 0x72, 0x65, + 0x76, 0x5f, 0x6b, 0x76, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x70, 0x72, 0x65, 0x76, + 0x4b, 0x76, 0x22, 0x86, 0x01, 0x0a, 0x13, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x02, 0x6b, 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, - 0x65, 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x02, 0x6b, 0x76, - 0x32, 0xcf, 0x04, 0x0a, 0x05, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x48, 0x0a, 0x05, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x12, 0x1e, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x03, 0x50, 0x75, 0x74, 0x12, 0x1c, 0x2e, 0x67, 0x72, - 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x50, - 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x72, 0x65, 0x70, - 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x50, 0x75, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x08, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x47, 0x65, 0x74, 0x12, 0x21, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, - 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, - 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x08, 0x42, - 0x61, 0x74, 0x63, 0x68, 0x50, 0x75, 0x74, 0x12, 0x21, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, - 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, - 0x50, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x72, 0x65, - 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x61, - 0x74, 0x63, 0x68, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, - 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x75, 0x74, 0x12, - 0x26, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, - 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x75, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, - 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x61, - 0x72, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x5a, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, - 0x24, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, - 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, - 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, 0x09, - 0x4d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x22, 0x2e, 0x67, 0x72, 0x65, 0x70, - 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x4d, 0x6f, 0x76, - 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, - 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, - 0x2e, 0x4d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x42, 0x3c, 0x5a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x2f, 0x67, 0x72, - 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, - 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x65, 0x74, 0x61, - 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x61, 0x64, 0x65, 0x72, 0x12, 0x35, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x6b, 0x76, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x52, 0x07, 0x70, 0x72, 0x65, 0x76, 0x4b, 0x76, 0x73, 0x22, 0x8f, 0x01, 0x0a, 0x14, + 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x75, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, + 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, + 0x06, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xa0, 0x01, + 0x0a, 0x15, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x75, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, + 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x07, 0x70, + 0x72, 0x65, 0x76, 0x5f, 0x6b, 0x76, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, + 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, + 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x70, 0x72, 0x65, 0x76, 0x4b, 0x76, + 0x22, 0x95, 0x01, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x37, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, + 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x45, 0x6e, 0x64, 0x12, + 0x17, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x6b, 0x76, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x06, 0x70, 0x72, 0x65, 0x76, 0x4b, 0x76, 0x22, 0xa0, 0x01, 0x0a, 0x13, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x38, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x20, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, + 0x65, 0x74, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x64, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x64, 0x12, 0x35, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x76, 0x5f, 0x6b, 0x76, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, + 0x75, 0x65, 0x52, 0x07, 0x70, 0x72, 0x65, 0x76, 0x4b, 0x76, 0x73, 0x22, 0x7d, 0x0a, 0x10, 0x4d, + 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x37, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, + 0x74, 0x61, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x72, 0x6f, 0x6d, + 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x66, 0x72, 0x6f, 0x6d, + 0x4b, 0x65, 0x79, 0x12, 0x15, 0x0a, 0x06, 0x74, 0x6f, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x05, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x22, 0x79, 0x0a, 0x11, 0x4d, 0x6f, + 0x76, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x38, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, + 0x74, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x02, 0x6b, 0x76, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, + 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x4b, 0x65, 0x79, 0x56, 0x61, 0x6c, 0x75, + 0x65, 0x52, 0x02, 0x6b, 0x76, 0x32, 0xab, 0x05, 0x0a, 0x05, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x12, + 0x48, 0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1e, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, + 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x61, 0x6e, 0x67, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, + 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x52, 0x61, 0x6e, 0x67, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x03, 0x50, 0x75, 0x74, + 0x12, 0x1c, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, + 0x65, 0x74, 0x61, 0x2e, 0x50, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, + 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, + 0x61, 0x2e, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, + 0x08, 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x12, 0x21, 0x2e, 0x67, 0x72, 0x65, 0x70, + 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x61, 0x74, + 0x63, 0x68, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, + 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x47, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x51, 0x0a, 0x08, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x75, 0x74, 0x12, 0x21, 0x2e, 0x67, + 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x22, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, + 0x74, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x0b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x12, 0x24, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, + 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, + 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x60, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x75, 0x74, + 0x12, 0x26, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, + 0x65, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x75, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, + 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x43, 0x6f, 0x6d, 0x70, + 0x61, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x50, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x5a, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, + 0x12, 0x24, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, + 0x65, 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, + 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x52, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x54, 0x0a, + 0x09, 0x4d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x22, 0x2e, 0x67, 0x72, 0x65, + 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, 0x61, 0x2e, 0x4d, 0x6f, + 0x76, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, + 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x6d, 0x65, 0x74, + 0x61, 0x2e, 0x4d, 0x6f, 0x76, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x42, 0x3c, 0x5a, 0x3a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, + 0x6d, 0x2f, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x2f, 0x67, + 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, + 0x2f, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x6d, 0x65, 0x74, + 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1135,7 +1279,7 @@ func file_greptime_v1_meta_store_proto_rawDescGZIP() []byte { return file_greptime_v1_meta_store_proto_rawDescData } -var file_greptime_v1_meta_store_proto_msgTypes = make([]protoimpl.MessageInfo, 14) +var file_greptime_v1_meta_store_proto_msgTypes = make([]protoimpl.MessageInfo, 16) var file_greptime_v1_meta_store_proto_goTypes = []interface{}{ (*RangeRequest)(nil), // 0: greptime.v1.meta.RangeRequest (*RangeResponse)(nil), // 1: greptime.v1.meta.RangeResponse @@ -1145,58 +1289,65 @@ var file_greptime_v1_meta_store_proto_goTypes = []interface{}{ (*BatchGetResponse)(nil), // 5: greptime.v1.meta.BatchGetResponse (*BatchPutRequest)(nil), // 6: greptime.v1.meta.BatchPutRequest (*BatchPutResponse)(nil), // 7: greptime.v1.meta.BatchPutResponse - (*CompareAndPutRequest)(nil), // 8: greptime.v1.meta.CompareAndPutRequest - (*CompareAndPutResponse)(nil), // 9: greptime.v1.meta.CompareAndPutResponse - (*DeleteRangeRequest)(nil), // 10: greptime.v1.meta.DeleteRangeRequest - (*DeleteRangeResponse)(nil), // 11: greptime.v1.meta.DeleteRangeResponse - (*MoveValueRequest)(nil), // 12: greptime.v1.meta.MoveValueRequest - (*MoveValueResponse)(nil), // 13: greptime.v1.meta.MoveValueResponse - (*RequestHeader)(nil), // 14: greptime.v1.meta.RequestHeader - (*ResponseHeader)(nil), // 15: greptime.v1.meta.ResponseHeader - (*KeyValue)(nil), // 16: greptime.v1.meta.KeyValue + (*BatchDeleteRequest)(nil), // 8: greptime.v1.meta.BatchDeleteRequest + (*BatchDeleteResponse)(nil), // 9: greptime.v1.meta.BatchDeleteResponse + (*CompareAndPutRequest)(nil), // 10: greptime.v1.meta.CompareAndPutRequest + (*CompareAndPutResponse)(nil), // 11: greptime.v1.meta.CompareAndPutResponse + (*DeleteRangeRequest)(nil), // 12: greptime.v1.meta.DeleteRangeRequest + (*DeleteRangeResponse)(nil), // 13: greptime.v1.meta.DeleteRangeResponse + (*MoveValueRequest)(nil), // 14: greptime.v1.meta.MoveValueRequest + (*MoveValueResponse)(nil), // 15: greptime.v1.meta.MoveValueResponse + (*RequestHeader)(nil), // 16: greptime.v1.meta.RequestHeader + (*ResponseHeader)(nil), // 17: greptime.v1.meta.ResponseHeader + (*KeyValue)(nil), // 18: greptime.v1.meta.KeyValue } var file_greptime_v1_meta_store_proto_depIdxs = []int32{ - 14, // 0: greptime.v1.meta.RangeRequest.header:type_name -> greptime.v1.meta.RequestHeader - 15, // 1: greptime.v1.meta.RangeResponse.header:type_name -> greptime.v1.meta.ResponseHeader - 16, // 2: greptime.v1.meta.RangeResponse.kvs:type_name -> greptime.v1.meta.KeyValue - 14, // 3: greptime.v1.meta.PutRequest.header:type_name -> greptime.v1.meta.RequestHeader - 15, // 4: greptime.v1.meta.PutResponse.header:type_name -> greptime.v1.meta.ResponseHeader - 16, // 5: greptime.v1.meta.PutResponse.prev_kv:type_name -> greptime.v1.meta.KeyValue - 14, // 6: greptime.v1.meta.BatchGetRequest.header:type_name -> greptime.v1.meta.RequestHeader - 15, // 7: greptime.v1.meta.BatchGetResponse.header:type_name -> greptime.v1.meta.ResponseHeader - 16, // 8: greptime.v1.meta.BatchGetResponse.kvs:type_name -> greptime.v1.meta.KeyValue - 14, // 9: greptime.v1.meta.BatchPutRequest.header:type_name -> greptime.v1.meta.RequestHeader - 16, // 10: greptime.v1.meta.BatchPutRequest.kvs:type_name -> greptime.v1.meta.KeyValue - 15, // 11: greptime.v1.meta.BatchPutResponse.header:type_name -> greptime.v1.meta.ResponseHeader - 16, // 12: greptime.v1.meta.BatchPutResponse.prev_kvs:type_name -> greptime.v1.meta.KeyValue - 14, // 13: greptime.v1.meta.CompareAndPutRequest.header:type_name -> greptime.v1.meta.RequestHeader - 15, // 14: greptime.v1.meta.CompareAndPutResponse.header:type_name -> greptime.v1.meta.ResponseHeader - 16, // 15: greptime.v1.meta.CompareAndPutResponse.prev_kv:type_name -> greptime.v1.meta.KeyValue - 14, // 16: greptime.v1.meta.DeleteRangeRequest.header:type_name -> greptime.v1.meta.RequestHeader - 15, // 17: greptime.v1.meta.DeleteRangeResponse.header:type_name -> greptime.v1.meta.ResponseHeader - 16, // 18: greptime.v1.meta.DeleteRangeResponse.prev_kvs:type_name -> greptime.v1.meta.KeyValue - 14, // 19: greptime.v1.meta.MoveValueRequest.header:type_name -> greptime.v1.meta.RequestHeader - 15, // 20: greptime.v1.meta.MoveValueResponse.header:type_name -> greptime.v1.meta.ResponseHeader - 16, // 21: greptime.v1.meta.MoveValueResponse.kv:type_name -> greptime.v1.meta.KeyValue - 0, // 22: greptime.v1.meta.Store.Range:input_type -> greptime.v1.meta.RangeRequest - 2, // 23: greptime.v1.meta.Store.Put:input_type -> greptime.v1.meta.PutRequest - 4, // 24: greptime.v1.meta.Store.BatchGet:input_type -> greptime.v1.meta.BatchGetRequest - 6, // 25: greptime.v1.meta.Store.BatchPut:input_type -> greptime.v1.meta.BatchPutRequest - 8, // 26: greptime.v1.meta.Store.CompareAndPut:input_type -> greptime.v1.meta.CompareAndPutRequest - 10, // 27: greptime.v1.meta.Store.DeleteRange:input_type -> greptime.v1.meta.DeleteRangeRequest - 12, // 28: greptime.v1.meta.Store.MoveValue:input_type -> greptime.v1.meta.MoveValueRequest - 1, // 29: greptime.v1.meta.Store.Range:output_type -> greptime.v1.meta.RangeResponse - 3, // 30: greptime.v1.meta.Store.Put:output_type -> greptime.v1.meta.PutResponse - 5, // 31: greptime.v1.meta.Store.BatchGet:output_type -> greptime.v1.meta.BatchGetResponse - 7, // 32: greptime.v1.meta.Store.BatchPut:output_type -> greptime.v1.meta.BatchPutResponse - 9, // 33: greptime.v1.meta.Store.CompareAndPut:output_type -> greptime.v1.meta.CompareAndPutResponse - 11, // 34: greptime.v1.meta.Store.DeleteRange:output_type -> greptime.v1.meta.DeleteRangeResponse - 13, // 35: greptime.v1.meta.Store.MoveValue:output_type -> greptime.v1.meta.MoveValueResponse - 29, // [29:36] is the sub-list for method output_type - 22, // [22:29] is the sub-list for method input_type - 22, // [22:22] is the sub-list for extension type_name - 22, // [22:22] is the sub-list for extension extendee - 0, // [0:22] is the sub-list for field type_name + 16, // 0: greptime.v1.meta.RangeRequest.header:type_name -> greptime.v1.meta.RequestHeader + 17, // 1: greptime.v1.meta.RangeResponse.header:type_name -> greptime.v1.meta.ResponseHeader + 18, // 2: greptime.v1.meta.RangeResponse.kvs:type_name -> greptime.v1.meta.KeyValue + 16, // 3: greptime.v1.meta.PutRequest.header:type_name -> greptime.v1.meta.RequestHeader + 17, // 4: greptime.v1.meta.PutResponse.header:type_name -> greptime.v1.meta.ResponseHeader + 18, // 5: greptime.v1.meta.PutResponse.prev_kv:type_name -> greptime.v1.meta.KeyValue + 16, // 6: greptime.v1.meta.BatchGetRequest.header:type_name -> greptime.v1.meta.RequestHeader + 17, // 7: greptime.v1.meta.BatchGetResponse.header:type_name -> greptime.v1.meta.ResponseHeader + 18, // 8: greptime.v1.meta.BatchGetResponse.kvs:type_name -> greptime.v1.meta.KeyValue + 16, // 9: greptime.v1.meta.BatchPutRequest.header:type_name -> greptime.v1.meta.RequestHeader + 18, // 10: greptime.v1.meta.BatchPutRequest.kvs:type_name -> greptime.v1.meta.KeyValue + 17, // 11: greptime.v1.meta.BatchPutResponse.header:type_name -> greptime.v1.meta.ResponseHeader + 18, // 12: greptime.v1.meta.BatchPutResponse.prev_kvs:type_name -> greptime.v1.meta.KeyValue + 16, // 13: greptime.v1.meta.BatchDeleteRequest.header:type_name -> greptime.v1.meta.RequestHeader + 17, // 14: greptime.v1.meta.BatchDeleteResponse.header:type_name -> greptime.v1.meta.ResponseHeader + 18, // 15: greptime.v1.meta.BatchDeleteResponse.prev_kvs:type_name -> greptime.v1.meta.KeyValue + 16, // 16: greptime.v1.meta.CompareAndPutRequest.header:type_name -> greptime.v1.meta.RequestHeader + 17, // 17: greptime.v1.meta.CompareAndPutResponse.header:type_name -> greptime.v1.meta.ResponseHeader + 18, // 18: greptime.v1.meta.CompareAndPutResponse.prev_kv:type_name -> greptime.v1.meta.KeyValue + 16, // 19: greptime.v1.meta.DeleteRangeRequest.header:type_name -> greptime.v1.meta.RequestHeader + 17, // 20: greptime.v1.meta.DeleteRangeResponse.header:type_name -> greptime.v1.meta.ResponseHeader + 18, // 21: greptime.v1.meta.DeleteRangeResponse.prev_kvs:type_name -> greptime.v1.meta.KeyValue + 16, // 22: greptime.v1.meta.MoveValueRequest.header:type_name -> greptime.v1.meta.RequestHeader + 17, // 23: greptime.v1.meta.MoveValueResponse.header:type_name -> greptime.v1.meta.ResponseHeader + 18, // 24: greptime.v1.meta.MoveValueResponse.kv:type_name -> greptime.v1.meta.KeyValue + 0, // 25: greptime.v1.meta.Store.Range:input_type -> greptime.v1.meta.RangeRequest + 2, // 26: greptime.v1.meta.Store.Put:input_type -> greptime.v1.meta.PutRequest + 4, // 27: greptime.v1.meta.Store.BatchGet:input_type -> greptime.v1.meta.BatchGetRequest + 6, // 28: greptime.v1.meta.Store.BatchPut:input_type -> greptime.v1.meta.BatchPutRequest + 8, // 29: greptime.v1.meta.Store.BatchDelete:input_type -> greptime.v1.meta.BatchDeleteRequest + 10, // 30: greptime.v1.meta.Store.CompareAndPut:input_type -> greptime.v1.meta.CompareAndPutRequest + 12, // 31: greptime.v1.meta.Store.DeleteRange:input_type -> greptime.v1.meta.DeleteRangeRequest + 14, // 32: greptime.v1.meta.Store.MoveValue:input_type -> greptime.v1.meta.MoveValueRequest + 1, // 33: greptime.v1.meta.Store.Range:output_type -> greptime.v1.meta.RangeResponse + 3, // 34: greptime.v1.meta.Store.Put:output_type -> greptime.v1.meta.PutResponse + 5, // 35: greptime.v1.meta.Store.BatchGet:output_type -> greptime.v1.meta.BatchGetResponse + 7, // 36: greptime.v1.meta.Store.BatchPut:output_type -> greptime.v1.meta.BatchPutResponse + 9, // 37: greptime.v1.meta.Store.BatchDelete:output_type -> greptime.v1.meta.BatchDeleteResponse + 11, // 38: greptime.v1.meta.Store.CompareAndPut:output_type -> greptime.v1.meta.CompareAndPutResponse + 13, // 39: greptime.v1.meta.Store.DeleteRange:output_type -> greptime.v1.meta.DeleteRangeResponse + 15, // 40: greptime.v1.meta.Store.MoveValue:output_type -> greptime.v1.meta.MoveValueResponse + 33, // [33:41] is the sub-list for method output_type + 25, // [25:33] is the sub-list for method input_type + 25, // [25:25] is the sub-list for extension type_name + 25, // [25:25] is the sub-list for extension extendee + 0, // [0:25] is the sub-list for field type_name } func init() { file_greptime_v1_meta_store_proto_init() } @@ -1303,7 +1454,7 @@ func file_greptime_v1_meta_store_proto_init() { } } file_greptime_v1_meta_store_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CompareAndPutRequest); i { + switch v := v.(*BatchDeleteRequest); i { case 0: return &v.state case 1: @@ -1315,7 +1466,7 @@ func file_greptime_v1_meta_store_proto_init() { } } file_greptime_v1_meta_store_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CompareAndPutResponse); i { + switch v := v.(*BatchDeleteResponse); i { case 0: return &v.state case 1: @@ -1327,7 +1478,7 @@ func file_greptime_v1_meta_store_proto_init() { } } file_greptime_v1_meta_store_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteRangeRequest); i { + switch v := v.(*CompareAndPutRequest); i { case 0: return &v.state case 1: @@ -1339,7 +1490,7 @@ func file_greptime_v1_meta_store_proto_init() { } } file_greptime_v1_meta_store_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteRangeResponse); i { + switch v := v.(*CompareAndPutResponse); i { case 0: return &v.state case 1: @@ -1351,7 +1502,7 @@ func file_greptime_v1_meta_store_proto_init() { } } file_greptime_v1_meta_store_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MoveValueRequest); i { + switch v := v.(*DeleteRangeRequest); i { case 0: return &v.state case 1: @@ -1363,6 +1514,30 @@ func file_greptime_v1_meta_store_proto_init() { } } file_greptime_v1_meta_store_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteRangeResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_greptime_v1_meta_store_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MoveValueRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_greptime_v1_meta_store_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*MoveValueResponse); i { case 0: return &v.state @@ -1381,7 +1556,7 @@ func file_greptime_v1_meta_store_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_greptime_v1_meta_store_proto_rawDesc, NumEnums: 0, - NumMessages: 14, + NumMessages: 16, NumExtensions: 0, NumServices: 1, }, diff --git a/go/greptime/v1/meta/store_grpc.pb.go b/go/greptime/v1/meta/store_grpc.pb.go index 19712a5..f833549 100644 --- a/go/greptime/v1/meta/store_grpc.pb.go +++ b/go/greptime/v1/meta/store_grpc.pb.go @@ -30,6 +30,9 @@ type StoreClient interface { BatchGet(ctx context.Context, in *BatchGetRequest, opts ...grpc.CallOption) (*BatchGetResponse, error) // BatchPut atomically puts the given keys into the key-value store. BatchPut(ctx context.Context, in *BatchPutRequest, opts ...grpc.CallOption) (*BatchPutResponse, error) + // BatchDelete atomically deletes the given keys and its associating values + // from the key-value store. + BatchDelete(ctx context.Context, in *BatchDeleteRequest, opts ...grpc.CallOption) (*BatchDeleteResponse, error) // CompareAndPut atomically puts the value to the given updated // value if the current value == the expected value. CompareAndPut(ctx context.Context, in *CompareAndPutRequest, opts ...grpc.CallOption) (*CompareAndPutResponse, error) @@ -83,6 +86,15 @@ func (c *storeClient) BatchPut(ctx context.Context, in *BatchPutRequest, opts .. return out, nil } +func (c *storeClient) BatchDelete(ctx context.Context, in *BatchDeleteRequest, opts ...grpc.CallOption) (*BatchDeleteResponse, error) { + out := new(BatchDeleteResponse) + err := c.cc.Invoke(ctx, "/greptime.v1.meta.Store/BatchDelete", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *storeClient) CompareAndPut(ctx context.Context, in *CompareAndPutRequest, opts ...grpc.CallOption) (*CompareAndPutResponse, error) { out := new(CompareAndPutResponse) err := c.cc.Invoke(ctx, "/greptime.v1.meta.Store/CompareAndPut", in, out, opts...) @@ -122,6 +134,9 @@ type StoreServer interface { BatchGet(context.Context, *BatchGetRequest) (*BatchGetResponse, error) // BatchPut atomically puts the given keys into the key-value store. BatchPut(context.Context, *BatchPutRequest) (*BatchPutResponse, error) + // BatchDelete atomically deletes the given keys and its associating values + // from the key-value store. + BatchDelete(context.Context, *BatchDeleteRequest) (*BatchDeleteResponse, error) // CompareAndPut atomically puts the value to the given updated // value if the current value == the expected value. CompareAndPut(context.Context, *CompareAndPutRequest) (*CompareAndPutResponse, error) @@ -148,6 +163,9 @@ func (UnimplementedStoreServer) BatchGet(context.Context, *BatchGetRequest) (*Ba func (UnimplementedStoreServer) BatchPut(context.Context, *BatchPutRequest) (*BatchPutResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method BatchPut not implemented") } +func (UnimplementedStoreServer) BatchDelete(context.Context, *BatchDeleteRequest) (*BatchDeleteResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method BatchDelete not implemented") +} func (UnimplementedStoreServer) CompareAndPut(context.Context, *CompareAndPutRequest) (*CompareAndPutResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method CompareAndPut not implemented") } @@ -242,6 +260,24 @@ func _Store_BatchPut_Handler(srv interface{}, ctx context.Context, dec func(inte return interceptor(ctx, in, info, handler) } +func _Store_BatchDelete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(BatchDeleteRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(StoreServer).BatchDelete(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/greptime.v1.meta.Store/BatchDelete", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(StoreServer).BatchDelete(ctx, req.(*BatchDeleteRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _Store_CompareAndPut_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(CompareAndPutRequest) if err := dec(in); err != nil { @@ -319,6 +355,10 @@ var Store_ServiceDesc = grpc.ServiceDesc{ MethodName: "BatchPut", Handler: _Store_BatchPut_Handler, }, + { + MethodName: "BatchDelete", + Handler: _Store_BatchDelete_Handler, + }, { MethodName: "CompareAndPut", Handler: _Store_CompareAndPut_Handler, diff --git a/proto/greptime/v1/meta/store.proto b/proto/greptime/v1/meta/store.proto index e25d9b9..c17478c 100644 --- a/proto/greptime/v1/meta/store.proto +++ b/proto/greptime/v1/meta/store.proto @@ -19,6 +19,10 @@ service Store { // BatchPut atomically puts the given keys into the key-value store. rpc BatchPut(BatchPutRequest) returns (BatchPutResponse); + // BatchDelete atomically deletes the given keys and its associating values + // from the key-value store. + rpc BatchDelete(BatchDeleteRequest) returns (BatchDeleteResponse); + // CompareAndPut atomically puts the value to the given updated // value if the current value == the expected value. rpc CompareAndPut(CompareAndPutRequest) returns (CompareAndPutResponse); @@ -109,6 +113,24 @@ message BatchPutResponse { repeated KeyValue prev_kvs = 2; } +message BatchDeleteRequest { + RequestHeader header = 1; + + repeated bytes keys = 2; + // If prev_kv is set, gets the previous key-value pairs before deleting it. + // The previous key-value pairs will be returned in the batch delete response. + bool prev_kv = 3; +} + +message BatchDeleteResponse { + ResponseHeader header = 1; + + // If prev_kv is set in the request, the previous key-value pairs will be + // returned. + repeated KeyValue prev_kvs = 2; +} + + message CompareAndPutRequest { RequestHeader header = 1;