feat(flow): bulk notify (#243)

* feat: mark dirty time window

* fix: time window range

* update DirtyWindowRequest

---------

Co-authored-by: Lei, HUANG <mrsatangel@gmail.com>
This commit is contained in:
discord9
2025-06-16 14:16:14 +08:00
committed by GitHub
parent f0913f179e
commit 1797152367
6 changed files with 2981 additions and 129 deletions
+17 -2
View File
@@ -31,6 +31,21 @@ service Flow {
// only expect `RegionRequest` to be one of `InsertRequests` or
// `DeleteRequests` other types of `RegionRequest` will be ignored
rpc HandleMirrorRequest(InsertRequests) returns (FlowResponse);
rpc HandleMarkDirtyTimeWindow(DirtyWindowRequests) returns (FlowResponse);
}
message DirtyWindowRequests {
// The dirty time window requests.
// Each request contains a table_id and a list of dirty timestamps.
repeated DirtyWindowRequest requests = 1;
}
message DirtyWindowRequest {
uint32 table_id = 1;
// Dirty timestamps. Used to mark this point in time as dirty,
// so that the flow can be triggered to process the data.
repeated int64 timestamps = 2;
}
message FlowRequestHeader {
@@ -41,7 +56,7 @@ message FlowRequestHeader {
QueryContext query_context = 2;
}
message InsertRequests { repeated InsertRequest requests = 1; }
message InsertRequests {repeated InsertRequest requests = 1;}
message InsertRequest {
uint64 region_id = 1;
@@ -83,7 +98,7 @@ message CreateRequest {
bool or_replace = 9;
}
message DropRequest { FlowId flow_id = 1; }
message DropRequest {FlowId flow_id = 1;}
message FlushFlow {
FlowId flow_id = 1;