feat: row-based insert (#72)

* feat: row-based insert

* feat: null value

* roback: null value

* feat: delete by row

* feat: rename Value to Field
This commit is contained in:
JeremyHi
2023-08-14 12:15:44 +08:00
committed by GitHub
parent 940694cfd0
commit d9167cab47
12 changed files with 16722 additions and 182 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+27
View File
@@ -0,0 +1,27 @@
// Generated by the gRPC C++ plugin.
// If you make any local change, they will be lost.
// source: greptime/v1/row.proto
#include "greptime/v1/row.pb.h"
#include "greptime/v1/row.grpc.pb.h"
#include <functional>
#include <grpcpp/support/async_stream.h>
#include <grpcpp/support/async_unary_call.h>
#include <grpcpp/impl/channel_interface.h>
#include <grpcpp/impl/client_unary_call.h>
#include <grpcpp/support/client_callback.h>
#include <grpcpp/support/message_allocator.h>
#include <grpcpp/support/method_handler.h>
#include <grpcpp/impl/rpc_service_method.h>
#include <grpcpp/support/server_callback.h>
#include <grpcpp/impl/codegen/server_callback_handlers.h>
#include <grpcpp/server_context.h>
#include <grpcpp/impl/service_type.h>
#include <grpcpp/support/sync_stream.h>
namespace greptime {
namespace v1 {
} // namespace greptime
} // namespace v1
+50
View File
@@ -0,0 +1,50 @@
// Generated by the gRPC C++ plugin.
// If you make any local change, they will be lost.
// source: greptime/v1/row.proto
// Original file comments:
// Copyright 2023 Greptime Team
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#ifndef GRPC_greptime_2fv1_2frow_2eproto__INCLUDED
#define GRPC_greptime_2fv1_2frow_2eproto__INCLUDED
#include "greptime/v1/row.pb.h"
#include <functional>
#include <grpcpp/generic/async_generic_service.h>
#include <grpcpp/support/async_stream.h>
#include <grpcpp/support/async_unary_call.h>
#include <grpcpp/support/client_callback.h>
#include <grpcpp/client_context.h>
#include <grpcpp/completion_queue.h>
#include <grpcpp/support/message_allocator.h>
#include <grpcpp/support/method_handler.h>
#include <grpcpp/impl/codegen/proto_utils.h>
#include <grpcpp/impl/rpc_method.h>
#include <grpcpp/support/server_callback.h>
#include <grpcpp/impl/codegen/server_callback_handlers.h>
#include <grpcpp/server_context.h>
#include <grpcpp/impl/service_type.h>
#include <grpcpp/impl/codegen/status.h>
#include <grpcpp/support/stub_options.h>
#include <grpcpp/support/sync_stream.h>
namespace greptime {
namespace v1 {
} // namespace v1
} // namespace greptime
#endif // GRPC_greptime_2fv1_2frow_2eproto__INCLUDED
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+400 -114
View File
@@ -46,6 +46,8 @@ type GreptimeRequest struct {
// *GreptimeRequest_Query // *GreptimeRequest_Query
// *GreptimeRequest_Ddl // *GreptimeRequest_Ddl
// *GreptimeRequest_Delete // *GreptimeRequest_Delete
// *GreptimeRequest_RowInserts
// *GreptimeRequest_RowDelete
Request isGreptimeRequest_Request `protobuf_oneof:"request"` Request isGreptimeRequest_Request `protobuf_oneof:"request"`
} }
@@ -123,6 +125,20 @@ func (x *GreptimeRequest) GetDelete() *DeleteRequest {
return nil return nil
} }
func (x *GreptimeRequest) GetRowInserts() *RowInsertRequests {
if x, ok := x.GetRequest().(*GreptimeRequest_RowInserts); ok {
return x.RowInserts
}
return nil
}
func (x *GreptimeRequest) GetRowDelete() *RowDeleteRequest {
if x, ok := x.GetRequest().(*GreptimeRequest_RowDelete); ok {
return x.RowDelete
}
return nil
}
type isGreptimeRequest_Request interface { type isGreptimeRequest_Request interface {
isGreptimeRequest_Request() isGreptimeRequest_Request()
} }
@@ -143,6 +159,14 @@ type GreptimeRequest_Delete struct {
Delete *DeleteRequest `protobuf:"bytes,5,opt,name=delete,proto3,oneof"` Delete *DeleteRequest `protobuf:"bytes,5,opt,name=delete,proto3,oneof"`
} }
type GreptimeRequest_RowInserts struct {
RowInserts *RowInsertRequests `protobuf:"bytes,6,opt,name=row_inserts,json=rowInserts,proto3,oneof"`
}
type GreptimeRequest_RowDelete struct {
RowDelete *RowDeleteRequest `protobuf:"bytes,7,opt,name=row_delete,json=rowDelete,proto3,oneof"`
}
func (*GreptimeRequest_Inserts) isGreptimeRequest_Request() {} func (*GreptimeRequest_Inserts) isGreptimeRequest_Request() {}
func (*GreptimeRequest_Query) isGreptimeRequest_Request() {} func (*GreptimeRequest_Query) isGreptimeRequest_Request() {}
@@ -151,6 +175,10 @@ func (*GreptimeRequest_Ddl) isGreptimeRequest_Request() {}
func (*GreptimeRequest_Delete) isGreptimeRequest_Request() {} func (*GreptimeRequest_Delete) isGreptimeRequest_Request() {}
func (*GreptimeRequest_RowInserts) isGreptimeRequest_Request() {}
func (*GreptimeRequest_RowDelete) isGreptimeRequest_Request() {}
type GreptimeResponse struct { type GreptimeResponse struct {
state protoimpl.MessageState state protoimpl.MessageState
sizeCache protoimpl.SizeCache sizeCache protoimpl.SizeCache
@@ -520,6 +548,185 @@ func (x *DeleteRequest) GetRowCount() uint32 {
return 0 return 0
} }
type RowInsertRequests struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Inserts []*RowInsertRequest `protobuf:"bytes,1,rep,name=inserts,proto3" json:"inserts,omitempty"`
}
func (x *RowInsertRequests) Reset() {
*x = RowInsertRequests{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_database_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RowInsertRequests) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RowInsertRequests) ProtoMessage() {}
func (x *RowInsertRequests) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_database_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RowInsertRequests.ProtoReflect.Descriptor instead.
func (*RowInsertRequests) Descriptor() ([]byte, []int) {
return file_greptime_v1_database_proto_rawDescGZIP(), []int{6}
}
func (x *RowInsertRequests) GetInserts() []*RowInsertRequest {
if x != nil {
return x.Inserts
}
return nil
}
type RowInsertRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
TableName string `protobuf:"bytes,1,opt,name=table_name,json=tableName,proto3" json:"table_name,omitempty"`
// Data is represented here.
Rows *Rows `protobuf:"bytes,2,opt,name=rows,proto3" json:"rows,omitempty"`
// The region number of current insert request.
RegionNumber uint32 `protobuf:"varint,3,opt,name=region_number,json=regionNumber,proto3" json:"region_number,omitempty"`
}
func (x *RowInsertRequest) Reset() {
*x = RowInsertRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_database_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RowInsertRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RowInsertRequest) ProtoMessage() {}
func (x *RowInsertRequest) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_database_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use RowInsertRequest.ProtoReflect.Descriptor instead.
func (*RowInsertRequest) Descriptor() ([]byte, []int) {
return file_greptime_v1_database_proto_rawDescGZIP(), []int{7}
}
func (x *RowInsertRequest) GetTableName() string {
if x != nil {
return x.TableName
}
return ""
}
func (x *RowInsertRequest) GetRows() *Rows {
if x != nil {
return x.Rows
}
return nil
}
func (x *RowInsertRequest) GetRegionNumber() uint32 {
if x != nil {
return x.RegionNumber
}
return 0
}
type RowDeleteRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The table name to delete from. Catalog name and schema name are in the
// `RequestHeader`.
TableName string `protobuf:"bytes,1,opt,name=table_name,json=tableName,proto3" json:"table_name,omitempty"`
// The data to delete.
Rows *Rows `protobuf:"bytes,2,opt,name=rows,proto3" json:"rows,omitempty"`
// The region number of current delete request.
RegionNumber uint32 `protobuf:"varint,3,opt,name=region_number,json=regionNumber,proto3" json:"region_number,omitempty"`
}
func (x *RowDeleteRequest) Reset() {
*x = RowDeleteRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_database_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RowDeleteRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RowDeleteRequest) ProtoMessage() {}
func (x *RowDeleteRequest) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_database_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 RowDeleteRequest.ProtoReflect.Descriptor instead.
func (*RowDeleteRequest) Descriptor() ([]byte, []int) {
return file_greptime_v1_database_proto_rawDescGZIP(), []int{8}
}
func (x *RowDeleteRequest) GetTableName() string {
if x != nil {
return x.TableName
}
return ""
}
func (x *RowDeleteRequest) GetRows() *Rows {
if x != nil {
return x.Rows
}
return nil
}
func (x *RowDeleteRequest) GetRegionNumber() uint32 {
if x != nil {
return x.RegionNumber
}
return 0
}
var File_greptime_v1_database_proto protoreflect.FileDescriptor var File_greptime_v1_database_proto protoreflect.FileDescriptor
var file_greptime_v1_database_proto_rawDesc = []byte{ var file_greptime_v1_database_proto_rawDesc = []byte{
@@ -528,89 +735,120 @@ var file_greptime_v1_database_proto_rawDesc = []byte{
0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x15, 0x67, 0x72, 0x65, 0x70, 0x74, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x15, 0x67, 0x72, 0x65, 0x70, 0x74,
0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x64, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x64, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x18, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x1a, 0x18, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f,
0x6c, 0x75, 0x6d, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x67, 0x72, 0x65, 0x70, 0x6c, 0x75, 0x6d, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x67, 0x72, 0x65, 0x70,
0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x6f, 0x77, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x74, 0x6f, 0x1a, 0x18, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x6f, 0x1a, 0x16, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x70,
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9f, 0x02, 0x0a, 0x72, 0x6f, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x18, 0x67, 0x72, 0x65, 0x70, 0x74,
0x0f, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72,
0x12, 0x32, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x6f, 0x74, 0x6f, 0x22, 0xa2, 0x03, 0x0a, 0x0f, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65,
0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69,
0x61, 0x64, 0x65, 0x72, 0x12, 0x37, 0x0a, 0x07, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x73, 0x18, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61,
0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x37, 0x0a, 0x07, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67,
0x74, 0x73, 0x48, 0x00, 0x52, 0x07, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x73, 0x12, 0x31, 0x0a, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72,
0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x48, 0x00, 0x52, 0x07, 0x69, 0x6e, 0x73,
0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x65, 0x72, 0x74, 0x73, 0x12, 0x31, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76,
0x12, 0x2b, 0x0a, 0x03, 0x64, 0x64, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00,
0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x64, 0x6c, 0x52, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x12, 0x2b, 0x0a, 0x03, 0x64, 0x64, 0x6c, 0x18, 0x04,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x03, 0x64, 0x64, 0x6c, 0x12, 0x34, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e,
0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x64, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52,
0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x03, 0x64, 0x64, 0x6c, 0x12, 0x34, 0x0a, 0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x05,
0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x06, 0x64, 0x65, 0x6c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e,
0x65, 0x74, 0x65, 0x42, 0x09, 0x0a, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x95, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x01, 0x0a, 0x10, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x48, 0x00, 0x52, 0x06, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x41, 0x0a, 0x0b, 0x72, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x77, 0x5f, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x1e, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f,
0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x77, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x48,
0x52, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x40, 0x0a, 0x0d, 0x61, 0x66, 0x66, 0x65, 0x00, 0x52, 0x0a, 0x72, 0x6f, 0x77, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x73, 0x12, 0x3e, 0x0a,
0x63, 0x74, 0x65, 0x64, 0x5f, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x72, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28,
0x19, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x66, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e,
0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x6f, 0x77, 0x73, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x66, 0x52, 0x6f, 0x77, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x52, 0x6f, 0x77, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x72, 0x65, 0x48, 0x00, 0x52, 0x09, 0x72, 0x6f, 0x77, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x42, 0x09, 0x0a,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x99, 0x01, 0x0a, 0x0c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x07, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x95, 0x01, 0x0a, 0x10, 0x47, 0x72, 0x65,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x03, 0x73, 0x71, 0x6c, 0x18, 0x01, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a,
0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x73, 0x71, 0x6c, 0x12, 0x23, 0x0a, 0x0c, 0x6c, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e,
0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70,
0x0c, 0x48, 0x00, 0x52, 0x0b, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x6e, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x06, 0x68, 0x65, 0x61, 0x64,
0x12, 0x47, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x6d, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x71, 0x65, 0x72, 0x12, 0x40, 0x0a, 0x0d, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x72,
0x75, 0x65, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x65, 0x6f, 0x77, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x72, 0x65, 0x70,
0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x52, 0x61, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64,
0x67, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x48, 0x00, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x6d, 0x52, 0x52, 0x6f, 0x77, 0x73, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64,
0x61, 0x6e, 0x67, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x42, 0x07, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x52, 0x6f, 0x77, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
0x72, 0x79, 0x22, 0x46, 0x0a, 0x0e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x22, 0x99, 0x01, 0x0a, 0x0c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x65, 0x73, 0x74, 0x73, 0x12, 0x34, 0x0a, 0x07, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x73, 0x18, 0x74, 0x12, 0x12, 0x0a, 0x03, 0x73, 0x71, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x03, 0x73, 0x71, 0x6c, 0x12, 0x23, 0x0a, 0x0c, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c,
0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x5f, 0x70, 0x6c, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0b, 0x6c,
0x74, 0x52, 0x07, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x73, 0x22, 0x9f, 0x01, 0x0a, 0x0d, 0x49, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x50, 0x6c, 0x61, 0x6e, 0x12, 0x47, 0x0a, 0x10, 0x70, 0x72,
0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x6d, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x03,
0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e,
0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x07, 0x63, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x75, 0x65, 0x72,
0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x79, 0x48, 0x00, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x6d, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x51, 0x75,
0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x72, 0x79, 0x42, 0x07, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, 0x46, 0x0a, 0x0e,
0x6e, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x34,
0x77, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x0a, 0x07, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x6f, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x1a, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e,
0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x69, 0x6e, 0x73,
0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xa6, 0x01, 0x0a, 0x65, 0x72, 0x74, 0x73, 0x22, 0x9f, 0x01, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52,
0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f,
0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x62, 0x6c,
0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73,
0x0d, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d,
0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x07, 0x63, 0x6f, 0x6c,
0x65, 0x72, 0x12, 0x34, 0x0a, 0x0b, 0x6b, 0x65, 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x6f, 0x77, 0x43, 0x6f, 0x75, 0x6e,
0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x0a, 0x6b, 0x65, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62,
0x79, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x77, 0x5f, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x6f, 0x77, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xa6, 0x01, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74,
0x43, 0x6f, 0x75, 0x6e, 0x74, 0x32, 0xaa, 0x01, 0x0a, 0x10, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c,
0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x12, 0x45, 0x0a, 0x06, 0x48, 0x61, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61,
0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1c, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x67, 0x69, 0x6f,
0x76, 0x31, 0x2e, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c,
0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x0b,
0x2e, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x6b, 0x65, 0x79, 0x5f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
0x65, 0x12, 0x4f, 0x0a, 0x0e, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e,
0x73, 0x74, 0x73, 0x12, 0x1c, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x52, 0x0a, 0x6b, 0x65, 0x79, 0x43, 0x6f, 0x6c, 0x75, 0x6d,
0x31, 0x2e, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x6e, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18,
0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x6f, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22,
0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4c, 0x0a, 0x11, 0x52, 0x6f, 0x77, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75,
0x28, 0x01, 0x42, 0x51, 0x0a, 0x0e, 0x69, 0x6f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x73, 0x12, 0x37, 0x0a, 0x07, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x73, 0x18,
0x65, 0x2e, 0x76, 0x31, 0x42, 0x08, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5a, 0x35, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65,
0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x47, 0x72, 0x65, 0x70, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x77, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71,
0x69, 0x6d, 0x65, 0x54, 0x65, 0x61, 0x6d, 0x2f, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x73, 0x22, 0x7d, 0x0a,
0x2d, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x10, 0x52, 0x6f, 0x77, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x6d, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65,
0x12, 0x25, 0x0a, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11,
0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x77,
0x73, 0x52, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x67, 0x69, 0x6f,
0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c,
0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x7d, 0x0a, 0x10,
0x52, 0x6f, 0x77, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12,
0x25, 0x0a, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e,
0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x77, 0x73,
0x52, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e,
0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x72,
0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x32, 0xaa, 0x01, 0x0a, 0x10,
0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65,
0x12, 0x45, 0x0a, 0x06, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x1c, 0x2e, 0x67, 0x72, 0x65,
0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d,
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74,
0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52,
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4f, 0x0a, 0x0e, 0x48, 0x61, 0x6e, 0x64, 0x6c,
0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x1c, 0x2e, 0x67, 0x72, 0x65, 0x70,
0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69,
0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x28, 0x01, 0x42, 0x51, 0x0a, 0x0e, 0x69, 0x6f, 0x2e, 0x67,
0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x08, 0x44, 0x61, 0x74, 0x61,
0x62, 0x61, 0x73, 0x65, 0x5a, 0x35, 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, 0x62, 0x06, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x33,
} }
var ( var (
@@ -625,42 +863,51 @@ func file_greptime_v1_database_proto_rawDescGZIP() []byte {
return file_greptime_v1_database_proto_rawDescData return file_greptime_v1_database_proto_rawDescData
} }
var file_greptime_v1_database_proto_msgTypes = make([]protoimpl.MessageInfo, 6) var file_greptime_v1_database_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
var file_greptime_v1_database_proto_goTypes = []interface{}{ var file_greptime_v1_database_proto_goTypes = []interface{}{
(*GreptimeRequest)(nil), // 0: greptime.v1.GreptimeRequest (*GreptimeRequest)(nil), // 0: greptime.v1.GreptimeRequest
(*GreptimeResponse)(nil), // 1: greptime.v1.GreptimeResponse (*GreptimeResponse)(nil), // 1: greptime.v1.GreptimeResponse
(*QueryRequest)(nil), // 2: greptime.v1.QueryRequest (*QueryRequest)(nil), // 2: greptime.v1.QueryRequest
(*InsertRequests)(nil), // 3: greptime.v1.InsertRequests (*InsertRequests)(nil), // 3: greptime.v1.InsertRequests
(*InsertRequest)(nil), // 4: greptime.v1.InsertRequest (*InsertRequest)(nil), // 4: greptime.v1.InsertRequest
(*DeleteRequest)(nil), // 5: greptime.v1.DeleteRequest (*DeleteRequest)(nil), // 5: greptime.v1.DeleteRequest
(*RequestHeader)(nil), // 6: greptime.v1.RequestHeader (*RowInsertRequests)(nil), // 6: greptime.v1.RowInsertRequests
(*DdlRequest)(nil), // 7: greptime.v1.DdlRequest (*RowInsertRequest)(nil), // 7: greptime.v1.RowInsertRequest
(*ResponseHeader)(nil), // 8: greptime.v1.ResponseHeader (*RowDeleteRequest)(nil), // 8: greptime.v1.RowDeleteRequest
(*AffectedRows)(nil), // 9: greptime.v1.AffectedRows (*RequestHeader)(nil), // 9: greptime.v1.RequestHeader
(*PromRangeQuery)(nil), // 10: greptime.v1.PromRangeQuery (*DdlRequest)(nil), // 10: greptime.v1.DdlRequest
(*Column)(nil), // 11: greptime.v1.Column (*ResponseHeader)(nil), // 11: greptime.v1.ResponseHeader
(*AffectedRows)(nil), // 12: greptime.v1.AffectedRows
(*PromRangeQuery)(nil), // 13: greptime.v1.PromRangeQuery
(*Column)(nil), // 14: greptime.v1.Column
(*Rows)(nil), // 15: greptime.v1.Rows
} }
var file_greptime_v1_database_proto_depIdxs = []int32{ var file_greptime_v1_database_proto_depIdxs = []int32{
6, // 0: greptime.v1.GreptimeRequest.header:type_name -> greptime.v1.RequestHeader 9, // 0: greptime.v1.GreptimeRequest.header:type_name -> greptime.v1.RequestHeader
3, // 1: greptime.v1.GreptimeRequest.inserts:type_name -> greptime.v1.InsertRequests 3, // 1: greptime.v1.GreptimeRequest.inserts:type_name -> greptime.v1.InsertRequests
2, // 2: greptime.v1.GreptimeRequest.query:type_name -> greptime.v1.QueryRequest 2, // 2: greptime.v1.GreptimeRequest.query:type_name -> greptime.v1.QueryRequest
7, // 3: greptime.v1.GreptimeRequest.ddl:type_name -> greptime.v1.DdlRequest 10, // 3: greptime.v1.GreptimeRequest.ddl:type_name -> greptime.v1.DdlRequest
5, // 4: greptime.v1.GreptimeRequest.delete:type_name -> greptime.v1.DeleteRequest 5, // 4: greptime.v1.GreptimeRequest.delete:type_name -> greptime.v1.DeleteRequest
8, // 5: greptime.v1.GreptimeResponse.header:type_name -> greptime.v1.ResponseHeader 6, // 5: greptime.v1.GreptimeRequest.row_inserts:type_name -> greptime.v1.RowInsertRequests
9, // 6: greptime.v1.GreptimeResponse.affected_rows:type_name -> greptime.v1.AffectedRows 8, // 6: greptime.v1.GreptimeRequest.row_delete:type_name -> greptime.v1.RowDeleteRequest
10, // 7: greptime.v1.QueryRequest.prom_range_query:type_name -> greptime.v1.PromRangeQuery 11, // 7: greptime.v1.GreptimeResponse.header:type_name -> greptime.v1.ResponseHeader
4, // 8: greptime.v1.InsertRequests.inserts:type_name -> greptime.v1.InsertRequest 12, // 8: greptime.v1.GreptimeResponse.affected_rows:type_name -> greptime.v1.AffectedRows
11, // 9: greptime.v1.InsertRequest.columns:type_name -> greptime.v1.Column 13, // 9: greptime.v1.QueryRequest.prom_range_query:type_name -> greptime.v1.PromRangeQuery
11, // 10: greptime.v1.DeleteRequest.key_columns:type_name -> greptime.v1.Column 4, // 10: greptime.v1.InsertRequests.inserts:type_name -> greptime.v1.InsertRequest
0, // 11: greptime.v1.GreptimeDatabase.Handle:input_type -> greptime.v1.GreptimeRequest 14, // 11: greptime.v1.InsertRequest.columns:type_name -> greptime.v1.Column
0, // 12: greptime.v1.GreptimeDatabase.HandleRequests:input_type -> greptime.v1.GreptimeRequest 14, // 12: greptime.v1.DeleteRequest.key_columns:type_name -> greptime.v1.Column
1, // 13: greptime.v1.GreptimeDatabase.Handle:output_type -> greptime.v1.GreptimeResponse 7, // 13: greptime.v1.RowInsertRequests.inserts:type_name -> greptime.v1.RowInsertRequest
1, // 14: greptime.v1.GreptimeDatabase.HandleRequests:output_type -> greptime.v1.GreptimeResponse 15, // 14: greptime.v1.RowInsertRequest.rows:type_name -> greptime.v1.Rows
13, // [13:15] is the sub-list for method output_type 15, // 15: greptime.v1.RowDeleteRequest.rows:type_name -> greptime.v1.Rows
11, // [11:13] is the sub-list for method input_type 0, // 16: greptime.v1.GreptimeDatabase.Handle:input_type -> greptime.v1.GreptimeRequest
11, // [11:11] is the sub-list for extension type_name 0, // 17: greptime.v1.GreptimeDatabase.HandleRequests:input_type -> greptime.v1.GreptimeRequest
11, // [11:11] is the sub-list for extension extendee 1, // 18: greptime.v1.GreptimeDatabase.Handle:output_type -> greptime.v1.GreptimeResponse
0, // [0:11] is the sub-list for field type_name 1, // 19: greptime.v1.GreptimeDatabase.HandleRequests:output_type -> greptime.v1.GreptimeResponse
18, // [18:20] is the sub-list for method output_type
16, // [16:18] is the sub-list for method input_type
16, // [16:16] is the sub-list for extension type_name
16, // [16:16] is the sub-list for extension extendee
0, // [0:16] is the sub-list for field type_name
} }
func init() { file_greptime_v1_database_proto_init() } func init() { file_greptime_v1_database_proto_init() }
@@ -670,6 +917,7 @@ func file_greptime_v1_database_proto_init() {
} }
file_greptime_v1_ddl_proto_init() file_greptime_v1_ddl_proto_init()
file_greptime_v1_column_proto_init() file_greptime_v1_column_proto_init()
file_greptime_v1_row_proto_init()
file_greptime_v1_prom_proto_init() file_greptime_v1_prom_proto_init()
file_greptime_v1_common_proto_init() file_greptime_v1_common_proto_init()
if !protoimpl.UnsafeEnabled { if !protoimpl.UnsafeEnabled {
@@ -745,12 +993,50 @@ func file_greptime_v1_database_proto_init() {
return nil return nil
} }
} }
file_greptime_v1_database_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RowInsertRequests); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_greptime_v1_database_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RowInsertRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_greptime_v1_database_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RowDeleteRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
} }
file_greptime_v1_database_proto_msgTypes[0].OneofWrappers = []interface{}{ file_greptime_v1_database_proto_msgTypes[0].OneofWrappers = []interface{}{
(*GreptimeRequest_Inserts)(nil), (*GreptimeRequest_Inserts)(nil),
(*GreptimeRequest_Query)(nil), (*GreptimeRequest_Query)(nil),
(*GreptimeRequest_Ddl)(nil), (*GreptimeRequest_Ddl)(nil),
(*GreptimeRequest_Delete)(nil), (*GreptimeRequest_Delete)(nil),
(*GreptimeRequest_RowInserts)(nil),
(*GreptimeRequest_RowDelete)(nil),
} }
file_greptime_v1_database_proto_msgTypes[1].OneofWrappers = []interface{}{ file_greptime_v1_database_proto_msgTypes[1].OneofWrappers = []interface{}{
(*GreptimeResponse_AffectedRows)(nil), (*GreptimeResponse_AffectedRows)(nil),
@@ -766,7 +1052,7 @@ func file_greptime_v1_database_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(), GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_greptime_v1_database_proto_rawDesc, RawDescriptor: file_greptime_v1_database_proto_rawDesc,
NumEnums: 0, NumEnums: 0,
NumMessages: 6, NumMessages: 9,
NumExtensions: 0, NumExtensions: 0,
NumServices: 1, NumServices: 1,
}, },
+802
View File
@@ -0,0 +1,802 @@
// Copyright 2023 Greptime Team
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.1
// protoc v3.21.6
// source: greptime/v1/row.proto
package v1
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
type Rows struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Schema []*ColumnSchema `protobuf:"bytes,1,rep,name=schema,proto3" json:"schema,omitempty"`
Rows []*Row `protobuf:"bytes,2,rep,name=rows,proto3" json:"rows,omitempty"`
}
func (x *Rows) Reset() {
*x = Rows{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_row_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Rows) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Rows) ProtoMessage() {}
func (x *Rows) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_row_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Rows.ProtoReflect.Descriptor instead.
func (*Rows) Descriptor() ([]byte, []int) {
return file_greptime_v1_row_proto_rawDescGZIP(), []int{0}
}
func (x *Rows) GetSchema() []*ColumnSchema {
if x != nil {
return x.Schema
}
return nil
}
func (x *Rows) GetRows() []*Row {
if x != nil {
return x.Rows
}
return nil
}
type ColumnSchema struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ColumnName string `protobuf:"bytes,1,opt,name=column_name,json=columnName,proto3" json:"column_name,omitempty"`
Datatype ColumnDataType `protobuf:"varint,2,opt,name=datatype,proto3,enum=greptime.v1.ColumnDataType" json:"datatype,omitempty"`
SemanticType SemanticType `protobuf:"varint,3,opt,name=semantic_type,json=semanticType,proto3,enum=greptime.v1.SemanticType" json:"semantic_type,omitempty"`
}
func (x *ColumnSchema) Reset() {
*x = ColumnSchema{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_row_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ColumnSchema) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ColumnSchema) ProtoMessage() {}
func (x *ColumnSchema) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_row_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ColumnSchema.ProtoReflect.Descriptor instead.
func (*ColumnSchema) Descriptor() ([]byte, []int) {
return file_greptime_v1_row_proto_rawDescGZIP(), []int{1}
}
func (x *ColumnSchema) GetColumnName() string {
if x != nil {
return x.ColumnName
}
return ""
}
func (x *ColumnSchema) GetDatatype() ColumnDataType {
if x != nil {
return x.Datatype
}
return ColumnDataType_BOOLEAN
}
func (x *ColumnSchema) GetSemanticType() SemanticType {
if x != nil {
return x.SemanticType
}
return SemanticType_TAG
}
type Row struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Values []*Value `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
}
func (x *Row) Reset() {
*x = Row{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_row_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Row) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Row) ProtoMessage() {}
func (x *Row) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_row_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Row.ProtoReflect.Descriptor instead.
func (*Row) Descriptor() ([]byte, []int) {
return file_greptime_v1_row_proto_rawDescGZIP(), []int{2}
}
func (x *Row) GetValues() []*Value {
if x != nil {
return x.Values
}
return nil
}
type Value struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to ValueData:
//
// *Value_I8Value
// *Value_I16Value
// *Value_I32Value
// *Value_I64Value
// *Value_U8Value
// *Value_U16Value
// *Value_U32Value
// *Value_U64Value
// *Value_F32Value
// *Value_F64Value
// *Value_BoolValue
// *Value_BinaryValue
// *Value_StringValue
// *Value_DateValue
// *Value_DatetimeValue
// *Value_TsSecondValue
// *Value_TsMillisecondValue
// *Value_TsMicrosecondValue
// *Value_TsNanosecondValue
// *Value_TimeSecondValue
// *Value_TimeMillisecondValue
// *Value_TimeMicrosecondValue
// *Value_TimeNanosecondValue
ValueData isValue_ValueData `protobuf_oneof:"value_data"`
}
func (x *Value) Reset() {
*x = Value{}
if protoimpl.UnsafeEnabled {
mi := &file_greptime_v1_row_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Value) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Value) ProtoMessage() {}
func (x *Value) ProtoReflect() protoreflect.Message {
mi := &file_greptime_v1_row_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Value.ProtoReflect.Descriptor instead.
func (*Value) Descriptor() ([]byte, []int) {
return file_greptime_v1_row_proto_rawDescGZIP(), []int{3}
}
func (m *Value) GetValueData() isValue_ValueData {
if m != nil {
return m.ValueData
}
return nil
}
func (x *Value) GetI8Value() int32 {
if x, ok := x.GetValueData().(*Value_I8Value); ok {
return x.I8Value
}
return 0
}
func (x *Value) GetI16Value() int32 {
if x, ok := x.GetValueData().(*Value_I16Value); ok {
return x.I16Value
}
return 0
}
func (x *Value) GetI32Value() int32 {
if x, ok := x.GetValueData().(*Value_I32Value); ok {
return x.I32Value
}
return 0
}
func (x *Value) GetI64Value() int64 {
if x, ok := x.GetValueData().(*Value_I64Value); ok {
return x.I64Value
}
return 0
}
func (x *Value) GetU8Value() uint32 {
if x, ok := x.GetValueData().(*Value_U8Value); ok {
return x.U8Value
}
return 0
}
func (x *Value) GetU16Value() uint32 {
if x, ok := x.GetValueData().(*Value_U16Value); ok {
return x.U16Value
}
return 0
}
func (x *Value) GetU32Value() uint32 {
if x, ok := x.GetValueData().(*Value_U32Value); ok {
return x.U32Value
}
return 0
}
func (x *Value) GetU64Value() uint64 {
if x, ok := x.GetValueData().(*Value_U64Value); ok {
return x.U64Value
}
return 0
}
func (x *Value) GetF32Value() float32 {
if x, ok := x.GetValueData().(*Value_F32Value); ok {
return x.F32Value
}
return 0
}
func (x *Value) GetF64Value() float64 {
if x, ok := x.GetValueData().(*Value_F64Value); ok {
return x.F64Value
}
return 0
}
func (x *Value) GetBoolValue() bool {
if x, ok := x.GetValueData().(*Value_BoolValue); ok {
return x.BoolValue
}
return false
}
func (x *Value) GetBinaryValue() []byte {
if x, ok := x.GetValueData().(*Value_BinaryValue); ok {
return x.BinaryValue
}
return nil
}
func (x *Value) GetStringValue() string {
if x, ok := x.GetValueData().(*Value_StringValue); ok {
return x.StringValue
}
return ""
}
func (x *Value) GetDateValue() int32 {
if x, ok := x.GetValueData().(*Value_DateValue); ok {
return x.DateValue
}
return 0
}
func (x *Value) GetDatetimeValue() int64 {
if x, ok := x.GetValueData().(*Value_DatetimeValue); ok {
return x.DatetimeValue
}
return 0
}
func (x *Value) GetTsSecondValue() int64 {
if x, ok := x.GetValueData().(*Value_TsSecondValue); ok {
return x.TsSecondValue
}
return 0
}
func (x *Value) GetTsMillisecondValue() int64 {
if x, ok := x.GetValueData().(*Value_TsMillisecondValue); ok {
return x.TsMillisecondValue
}
return 0
}
func (x *Value) GetTsMicrosecondValue() int64 {
if x, ok := x.GetValueData().(*Value_TsMicrosecondValue); ok {
return x.TsMicrosecondValue
}
return 0
}
func (x *Value) GetTsNanosecondValue() int64 {
if x, ok := x.GetValueData().(*Value_TsNanosecondValue); ok {
return x.TsNanosecondValue
}
return 0
}
func (x *Value) GetTimeSecondValue() int64 {
if x, ok := x.GetValueData().(*Value_TimeSecondValue); ok {
return x.TimeSecondValue
}
return 0
}
func (x *Value) GetTimeMillisecondValue() int64 {
if x, ok := x.GetValueData().(*Value_TimeMillisecondValue); ok {
return x.TimeMillisecondValue
}
return 0
}
func (x *Value) GetTimeMicrosecondValue() int64 {
if x, ok := x.GetValueData().(*Value_TimeMicrosecondValue); ok {
return x.TimeMicrosecondValue
}
return 0
}
func (x *Value) GetTimeNanosecondValue() int64 {
if x, ok := x.GetValueData().(*Value_TimeNanosecondValue); ok {
return x.TimeNanosecondValue
}
return 0
}
type isValue_ValueData interface {
isValue_ValueData()
}
type Value_I8Value struct {
I8Value int32 `protobuf:"varint,1,opt,name=i8_value,json=i8Value,proto3,oneof"`
}
type Value_I16Value struct {
I16Value int32 `protobuf:"varint,2,opt,name=i16_value,json=i16Value,proto3,oneof"`
}
type Value_I32Value struct {
I32Value int32 `protobuf:"varint,3,opt,name=i32_value,json=i32Value,proto3,oneof"`
}
type Value_I64Value struct {
I64Value int64 `protobuf:"varint,4,opt,name=i64_value,json=i64Value,proto3,oneof"`
}
type Value_U8Value struct {
U8Value uint32 `protobuf:"varint,5,opt,name=u8_value,json=u8Value,proto3,oneof"`
}
type Value_U16Value struct {
U16Value uint32 `protobuf:"varint,6,opt,name=u16_value,json=u16Value,proto3,oneof"`
}
type Value_U32Value struct {
U32Value uint32 `protobuf:"varint,7,opt,name=u32_value,json=u32Value,proto3,oneof"`
}
type Value_U64Value struct {
U64Value uint64 `protobuf:"varint,8,opt,name=u64_value,json=u64Value,proto3,oneof"`
}
type Value_F32Value struct {
F32Value float32 `protobuf:"fixed32,9,opt,name=f32_value,json=f32Value,proto3,oneof"`
}
type Value_F64Value struct {
F64Value float64 `protobuf:"fixed64,10,opt,name=f64_value,json=f64Value,proto3,oneof"`
}
type Value_BoolValue struct {
BoolValue bool `protobuf:"varint,11,opt,name=bool_value,json=boolValue,proto3,oneof"`
}
type Value_BinaryValue struct {
BinaryValue []byte `protobuf:"bytes,12,opt,name=binary_value,json=binaryValue,proto3,oneof"`
}
type Value_StringValue struct {
StringValue string `protobuf:"bytes,13,opt,name=string_value,json=stringValue,proto3,oneof"`
}
type Value_DateValue struct {
DateValue int32 `protobuf:"varint,14,opt,name=date_value,json=dateValue,proto3,oneof"`
}
type Value_DatetimeValue struct {
DatetimeValue int64 `protobuf:"varint,15,opt,name=datetime_value,json=datetimeValue,proto3,oneof"`
}
type Value_TsSecondValue struct {
TsSecondValue int64 `protobuf:"varint,16,opt,name=ts_second_value,json=tsSecondValue,proto3,oneof"`
}
type Value_TsMillisecondValue struct {
TsMillisecondValue int64 `protobuf:"varint,17,opt,name=ts_millisecond_value,json=tsMillisecondValue,proto3,oneof"`
}
type Value_TsMicrosecondValue struct {
TsMicrosecondValue int64 `protobuf:"varint,18,opt,name=ts_microsecond_value,json=tsMicrosecondValue,proto3,oneof"`
}
type Value_TsNanosecondValue struct {
TsNanosecondValue int64 `protobuf:"varint,19,opt,name=ts_nanosecond_value,json=tsNanosecondValue,proto3,oneof"`
}
type Value_TimeSecondValue struct {
TimeSecondValue int64 `protobuf:"varint,20,opt,name=time_second_value,json=timeSecondValue,proto3,oneof"`
}
type Value_TimeMillisecondValue struct {
TimeMillisecondValue int64 `protobuf:"varint,21,opt,name=time_millisecond_value,json=timeMillisecondValue,proto3,oneof"`
}
type Value_TimeMicrosecondValue struct {
TimeMicrosecondValue int64 `protobuf:"varint,22,opt,name=time_microsecond_value,json=timeMicrosecondValue,proto3,oneof"`
}
type Value_TimeNanosecondValue struct {
TimeNanosecondValue int64 `protobuf:"varint,23,opt,name=time_nanosecond_value,json=timeNanosecondValue,proto3,oneof"`
}
func (*Value_I8Value) isValue_ValueData() {}
func (*Value_I16Value) isValue_ValueData() {}
func (*Value_I32Value) isValue_ValueData() {}
func (*Value_I64Value) isValue_ValueData() {}
func (*Value_U8Value) isValue_ValueData() {}
func (*Value_U16Value) isValue_ValueData() {}
func (*Value_U32Value) isValue_ValueData() {}
func (*Value_U64Value) isValue_ValueData() {}
func (*Value_F32Value) isValue_ValueData() {}
func (*Value_F64Value) isValue_ValueData() {}
func (*Value_BoolValue) isValue_ValueData() {}
func (*Value_BinaryValue) isValue_ValueData() {}
func (*Value_StringValue) isValue_ValueData() {}
func (*Value_DateValue) isValue_ValueData() {}
func (*Value_DatetimeValue) isValue_ValueData() {}
func (*Value_TsSecondValue) isValue_ValueData() {}
func (*Value_TsMillisecondValue) isValue_ValueData() {}
func (*Value_TsMicrosecondValue) isValue_ValueData() {}
func (*Value_TsNanosecondValue) isValue_ValueData() {}
func (*Value_TimeSecondValue) isValue_ValueData() {}
func (*Value_TimeMillisecondValue) isValue_ValueData() {}
func (*Value_TimeMicrosecondValue) isValue_ValueData() {}
func (*Value_TimeNanosecondValue) isValue_ValueData() {}
var File_greptime_v1_row_proto protoreflect.FileDescriptor
var file_greptime_v1_row_proto_rawDesc = []byte{
0x0a, 0x15, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x6f,
0x77, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0b, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d,
0x65, 0x2e, 0x76, 0x31, 0x1a, 0x18, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2f, 0x76,
0x31, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x5f,
0x0a, 0x04, 0x52, 0x6f, 0x77, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61,
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d,
0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d,
0x61, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x24, 0x0a, 0x04, 0x72, 0x6f, 0x77,
0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69,
0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x22,
0xa8, 0x01, 0x0a, 0x0c, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61,
0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x4e, 0x61, 0x6d,
0x65, 0x12, 0x37, 0x0a, 0x08, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76,
0x31, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x54, 0x79, 0x70, 0x65,
0x52, 0x08, 0x64, 0x61, 0x74, 0x61, 0x74, 0x79, 0x70, 0x65, 0x12, 0x3e, 0x0a, 0x0d, 0x73, 0x65,
0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
0x0e, 0x32, 0x19, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e,
0x53, 0x65, 0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0c, 0x73, 0x65,
0x6d, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x22, 0x31, 0x0a, 0x03, 0x52, 0x6f,
0x77, 0x12, 0x2a, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x2e,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x22, 0x94, 0x07,
0x0a, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x69, 0x38, 0x5f, 0x76, 0x61,
0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x07, 0x69, 0x38, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x69, 0x31, 0x36, 0x5f, 0x76, 0x61, 0x6c, 0x75,
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x08, 0x69, 0x31, 0x36, 0x56, 0x61,
0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x69, 0x33, 0x32, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x08, 0x69, 0x33, 0x32, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x69, 0x36, 0x34, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
0x04, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x08, 0x69, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75,
0x65, 0x12, 0x1b, 0x0a, 0x08, 0x75, 0x38, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20,
0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x07, 0x75, 0x38, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d,
0x0a, 0x09, 0x75, 0x31, 0x36, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
0x0d, 0x48, 0x00, 0x52, 0x08, 0x75, 0x31, 0x36, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a,
0x09, 0x75, 0x33, 0x32, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d,
0x48, 0x00, 0x52, 0x08, 0x75, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x09,
0x75, 0x36, 0x34, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x48,
0x00, 0x52, 0x08, 0x75, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x66,
0x33, 0x32, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x48, 0x00,
0x52, 0x08, 0x66, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x66, 0x36,
0x34, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x01, 0x48, 0x00, 0x52,
0x08, 0x66, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x62, 0x6f, 0x6f,
0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52,
0x09, 0x62, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x62, 0x69,
0x6e, 0x61, 0x72, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c,
0x48, 0x00, 0x52, 0x0b, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12,
0x23, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
0x0d, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x09, 0x64, 0x61, 0x74, 0x65,
0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x27, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d,
0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52,
0x0d, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x28,
0x0a, 0x0f, 0x74, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75,
0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0d, 0x74, 0x73, 0x53, 0x65, 0x63,
0x6f, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x74, 0x73, 0x5f, 0x6d,
0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x18, 0x11, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x12, 0x74, 0x73, 0x4d, 0x69, 0x6c, 0x6c,
0x69, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x32, 0x0a, 0x14,
0x74, 0x73, 0x5f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x5f, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x12, 0x74, 0x73,
0x4d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65,
0x12, 0x30, 0x0a, 0x13, 0x74, 0x73, 0x5f, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e,
0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52,
0x11, 0x74, 0x73, 0x4e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x56, 0x61, 0x6c,
0x75, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e,
0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52,
0x0f, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65,
0x12, 0x36, 0x0a, 0x16, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65,
0x63, 0x6f, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x15, 0x20, 0x01, 0x28, 0x03,
0x48, 0x00, 0x52, 0x14, 0x74, 0x69, 0x6d, 0x65, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x65, 0x63,
0x6f, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x36, 0x0a, 0x16, 0x74, 0x69, 0x6d, 0x65,
0x5f, 0x6d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x14, 0x74, 0x69, 0x6d, 0x65,
0x4d, 0x69, 0x63, 0x72, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x56, 0x61, 0x6c, 0x75, 0x65,
0x12, 0x34, 0x0a, 0x15, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63,
0x6f, 0x6e, 0x64, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x03, 0x48,
0x00, 0x52, 0x13, 0x74, 0x69, 0x6d, 0x65, 0x4e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e,
0x64, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f,
0x64, 0x61, 0x74, 0x61, 0x42, 0x50, 0x0a, 0x0e, 0x69, 0x6f, 0x2e, 0x67, 0x72, 0x65, 0x70, 0x74,
0x69, 0x6d, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x07, 0x52, 0x6f, 0x77, 0x44, 0x61, 0x74, 0x61, 0x5a,
0x35, 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, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_greptime_v1_row_proto_rawDescOnce sync.Once
file_greptime_v1_row_proto_rawDescData = file_greptime_v1_row_proto_rawDesc
)
func file_greptime_v1_row_proto_rawDescGZIP() []byte {
file_greptime_v1_row_proto_rawDescOnce.Do(func() {
file_greptime_v1_row_proto_rawDescData = protoimpl.X.CompressGZIP(file_greptime_v1_row_proto_rawDescData)
})
return file_greptime_v1_row_proto_rawDescData
}
var file_greptime_v1_row_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
var file_greptime_v1_row_proto_goTypes = []interface{}{
(*Rows)(nil), // 0: greptime.v1.Rows
(*ColumnSchema)(nil), // 1: greptime.v1.ColumnSchema
(*Row)(nil), // 2: greptime.v1.Row
(*Value)(nil), // 3: greptime.v1.Value
(ColumnDataType)(0), // 4: greptime.v1.ColumnDataType
(SemanticType)(0), // 5: greptime.v1.SemanticType
}
var file_greptime_v1_row_proto_depIdxs = []int32{
1, // 0: greptime.v1.Rows.schema:type_name -> greptime.v1.ColumnSchema
2, // 1: greptime.v1.Rows.rows:type_name -> greptime.v1.Row
4, // 2: greptime.v1.ColumnSchema.datatype:type_name -> greptime.v1.ColumnDataType
5, // 3: greptime.v1.ColumnSchema.semantic_type:type_name -> greptime.v1.SemanticType
3, // 4: greptime.v1.Row.values:type_name -> greptime.v1.Value
5, // [5:5] is the sub-list for method output_type
5, // [5:5] is the sub-list for method input_type
5, // [5:5] is the sub-list for extension type_name
5, // [5:5] is the sub-list for extension extendee
0, // [0:5] is the sub-list for field type_name
}
func init() { file_greptime_v1_row_proto_init() }
func file_greptime_v1_row_proto_init() {
if File_greptime_v1_row_proto != nil {
return
}
file_greptime_v1_common_proto_init()
if !protoimpl.UnsafeEnabled {
file_greptime_v1_row_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Rows); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_greptime_v1_row_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ColumnSchema); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_greptime_v1_row_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Row); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_greptime_v1_row_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Value); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_greptime_v1_row_proto_msgTypes[3].OneofWrappers = []interface{}{
(*Value_I8Value)(nil),
(*Value_I16Value)(nil),
(*Value_I32Value)(nil),
(*Value_I64Value)(nil),
(*Value_U8Value)(nil),
(*Value_U16Value)(nil),
(*Value_U32Value)(nil),
(*Value_U64Value)(nil),
(*Value_F32Value)(nil),
(*Value_F64Value)(nil),
(*Value_BoolValue)(nil),
(*Value_BinaryValue)(nil),
(*Value_StringValue)(nil),
(*Value_DateValue)(nil),
(*Value_DatetimeValue)(nil),
(*Value_TsSecondValue)(nil),
(*Value_TsMillisecondValue)(nil),
(*Value_TsMicrosecondValue)(nil),
(*Value_TsNanosecondValue)(nil),
(*Value_TimeSecondValue)(nil),
(*Value_TimeMillisecondValue)(nil),
(*Value_TimeMicrosecondValue)(nil),
(*Value_TimeNanosecondValue)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_greptime_v1_row_proto_rawDesc,
NumEnums: 0,
NumMessages: 4,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_greptime_v1_row_proto_goTypes,
DependencyIndexes: file_greptime_v1_row_proto_depIdxs,
MessageInfos: file_greptime_v1_row_proto_msgTypes,
}.Build()
File_greptime_v1_row_proto = out.File
file_greptime_v1_row_proto_rawDesc = nil
file_greptime_v1_row_proto_goTypes = nil
file_greptime_v1_row_proto_depIdxs = nil
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+29
View File
@@ -22,6 +22,7 @@ option go_package = "github.com/GreptimeTeam/greptime-proto/go/greptime/v1";
import "greptime/v1/ddl.proto"; import "greptime/v1/ddl.proto";
import "greptime/v1/column.proto"; import "greptime/v1/column.proto";
import "greptime/v1/row.proto";
import "greptime/v1/prom.proto"; import "greptime/v1/prom.proto";
import "greptime/v1/common.proto"; import "greptime/v1/common.proto";
@@ -38,6 +39,8 @@ message GreptimeRequest {
QueryRequest query = 3; QueryRequest query = 3;
DdlRequest ddl = 4; DdlRequest ddl = 4;
DeleteRequest delete = 5; DeleteRequest delete = 5;
RowInsertRequests row_inserts = 6;
RowDeleteRequest row_delete = 7;
} }
} }
@@ -87,3 +90,29 @@ message DeleteRequest {
// The row count of all columns above. // The row count of all columns above.
uint32 row_count = 4; uint32 row_count = 4;
} }
message RowInsertRequests {
repeated RowInsertRequest inserts = 1;
}
message RowInsertRequest {
string table_name = 1;
// Data is represented here.
Rows rows = 2;
// The region number of current insert request.
uint32 region_number = 3;
}
message RowDeleteRequest {
// The table name to delete from. Catalog name and schema name are in the
// `RequestHeader`.
string table_name = 1;
// The data to delete.
Rows rows = 2;
// The region number of current delete request.
uint32 region_number = 3;
}
+70
View File
@@ -0,0 +1,70 @@
// Copyright 2023 Greptime Team
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package greptime.v1;
option java_package = "io.greptime.v1";
option java_outer_classname = "RowData";
option go_package = "github.com/GreptimeTeam/greptime-proto/go/greptime/v1";
import "greptime/v1/common.proto";
message Rows {
repeated ColumnSchema schema = 1;
repeated Row rows = 2;
}
message ColumnSchema {
string column_name = 1;
ColumnDataType datatype = 2;
SemanticType semantic_type = 3;
}
message Row {
repeated Value values = 1;
}
message Value {
oneof value_data {
int32 i8_value = 1;
int32 i16_value = 2;
int32 i32_value = 3;
int64 i64_value = 4;
uint32 u8_value = 5;
uint32 u16_value = 6;
uint32 u32_value = 7;
uint64 u64_value = 8;
float f32_value = 9;
double f64_value = 10;
bool bool_value = 11;
bytes binary_value = 12;
string string_value = 13;
int32 date_value = 14;
int64 datetime_value = 15;
int64 ts_second_value = 16;
int64 ts_millisecond_value = 17;
int64 ts_microsecond_value = 18;
int64 ts_nanosecond_value = 19;
int64 time_second_value = 20;
int64 time_millisecond_value = 21;
int64 time_microsecond_value = 22;
int64 time_nanosecond_value = 23;
}
}