feat: implement Flight and gRPC services for RegionServer (#2226)

* extract FlightCraft trait

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

* split service handler in GrpcServer

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

* left grpc server implement

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

* start region server if configured

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

---------

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>
This commit is contained in:
Ruihang Xia
2023-08-22 08:30:09 -05:00
committed by GitHub
parent 18fa0e01ed
commit 18250c4803
18 changed files with 453 additions and 71 deletions

View File

@@ -37,6 +37,7 @@ use greptime_proto::v1;
use greptime_proto::v1::ddl_request::Expr;
use greptime_proto::v1::greptime_request::Request;
use greptime_proto::v1::query_request::Query;
use greptime_proto::v1::region::region_request;
use greptime_proto::v1::value::ValueData;
use greptime_proto::v1::{DdlRequest, IntervalMonthDayNano, QueryRequest, SemanticType};
use snafu::prelude::*;
@@ -328,6 +329,21 @@ fn query_request_type(request: &QueryRequest) -> &'static str {
}
}
/// Returns the type name of the [RegionRequest].
pub fn region_request_type(request: &region_request::Request) -> &'static str {
match request {
region_request::Request::Inserts(_) => "region.inserts",
region_request::Request::Deletes(_) => "region.deletes",
region_request::Request::Create(_) => "region.create",
region_request::Request::Drop(_) => "region.drop ",
region_request::Request::Open(_) => "region.open",
region_request::Request::Close(_) => "region.close",
region_request::Request::Alter(_) => "region.alter",
region_request::Request::Flush(_) => "region.flush",
region_request::Request::Compact(_) => "region.compact",
}
}
/// Returns the type name of the [DdlRequest].
fn ddl_request_type(request: &DdlRequest) -> &'static str {
match request.expr {