feat: remove region id and add request header (#101)

* remove region from database proto

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>

* add request header to read

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>

* generate code

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>

* forget some ts

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>

* generate code

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>

---------

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>
This commit is contained in:
Ruihang Xia
2023-09-06 07:52:41 -05:00
committed by GitHub
parent 620337bd5e
commit 33db1a4429
24 changed files with 1967 additions and 2613 deletions
+4 -4
View File
@@ -46,10 +46,10 @@ message Column {
repeated int32 date_values = 14;
repeated int64 datetime_values = 15;
repeated int64 ts_second_values = 16;
repeated int64 ts_millisecond_values = 17;
repeated int64 ts_microsecond_values = 18;
repeated int64 ts_nanosecond_values = 19;
repeated int64 timestamp_second_values = 16;
repeated int64 timestamp_millisecond_values = 17;
repeated int64 timestamp_microsecond_values = 18;
repeated int64 timestamp_nanosecond_values = 19;
repeated int64 time_second_values = 20;
repeated int64 time_millisecond_values = 21;
repeated int64 time_microsecond_values = 22;
+4 -24
View File
@@ -57,9 +57,7 @@ message QueryRequest {
}
}
message InsertRequests {
repeated InsertRequest inserts = 1;
}
message InsertRequests { repeated InsertRequest inserts = 1; }
message InsertRequest {
string table_name = 1;
@@ -71,23 +69,15 @@ message InsertRequest {
//
// Note: the row_count of all columns in a InsertRequest must be same.
uint32 row_count = 4;
// The region number of current insert request.
uint32 region_number = 5;
}
message DeleteRequests {
repeated DeleteRequest deletes = 1;
}
message DeleteRequests { repeated DeleteRequest deletes = 1; }
message DeleteRequest {
// The table name to delete from. Catalog name and schema name are in the
// `RequestHeader`.
string table_name = 1;
// The region number of current delete request.
uint32 region_number = 2;
// The data to delete, indexed by key columns.
repeated Column key_columns = 3;
@@ -95,23 +85,16 @@ message DeleteRequest {
uint32 row_count = 4;
}
message RowInsertRequests {
repeated RowInsertRequest inserts = 1;
}
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 RowDeleteRequests {
repeated RowDeleteRequest deletes = 1;
}
message RowDeleteRequests { repeated RowDeleteRequest deletes = 1; }
message RowDeleteRequest {
// The table name to delete from. Catalog name and schema name are in the
@@ -120,7 +103,4 @@ message RowDeleteRequest {
// The data to delete.
Rows rows = 2;
// The region number of current delete request.
uint32 region_number = 3;
}
-1
View File
@@ -47,7 +47,6 @@ message CreateTableExpr {
bool create_if_not_exists = 8;
map<string, string> table_options = 9;
TableId table_id = 10;
repeated uint32 region_numbers = 11;
string engine = 12;
}
+10 -14
View File
@@ -69,9 +69,10 @@ message DeleteRequest {
}
message QueryRequest {
uint64 region_id = 1;
RegionRequestHeader header = 1;
uint64 region_id = 2;
// substrait plan to query
bytes plan = 2;
bytes plan = 3;
}
message CreateRequest {
@@ -121,30 +122,25 @@ message AlterRequest {
uint64 schema_version = 4;
}
message AddColumns {
repeated AddColumn add_columns = 1;
}
message AddColumns { repeated AddColumn add_columns = 1; }
message DropColumns {
repeated DropColumn drop_columns = 1;
}
message DropColumns { repeated DropColumn drop_columns = 1; }
message AddColumn {
RegionColumnDef column_def = 1;
AddColumnLocation location = 3;
}
message DropColumn {
string name = 1;
}
message DropColumn { string name = 1; }
message FlushRequest { uint64 region_id = 1; }
message CompactRequest { uint64 region_id = 1; }
// The column definition of a region. Unlike the message `ColumnDef` in `ddl.proto` which is for clients outside
// GreptimeDB, this `RegionColumnDef` is for region requests use only. So it carries an extra field `column_id` that
// is known internally.
// The column definition of a region. Unlike the message `ColumnDef` in
// `ddl.proto` which is for clients outside GreptimeDB, this `RegionColumnDef`
// is for region requests use only. So it carries an extra field `column_id`
// that is known internally.
message RegionColumnDef {
ColumnDef column_def = 1;
uint32 column_id = 2;
+5 -7
View File
@@ -33,9 +33,7 @@ message ColumnSchema {
SemanticType semantic_type = 3;
}
message Row {
repeated Value values = 1;
}
message Row { repeated Value values = 1; }
message Value {
oneof value_data {
@@ -58,10 +56,10 @@ message Value {
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 timestamp_second_value = 16;
int64 timestamp_millisecond_value = 17;
int64 timestamp_microsecond_value = 18;
int64 timestamp_nanosecond_value = 19;
int64 time_second_value = 20;
int64 time_millisecond_value = 21;
int64 time_microsecond_value = 22;