feat(flow): mirror insert req to flow node (#3858)

* feat: mirror insert req to flow node

* refactor: group_requests_by_peer

* chore: rename `nodes` to `flows` to be more apt

* docs: add TODO

* refactor: split flow&data node grouping to two func

* refactor: mirror_flow_node_request

* chore: add some TODOs

* refactor: use Option in value

* feat: skip non-src table quickly

* docs: add TODO for  `Peer.address`

* fix: dedup
This commit is contained in:
discord9
2024-05-06 19:33:14 +08:00
committed by GitHub
parent f3b68253c2
commit 573c19be32
8 changed files with 135 additions and 15 deletions

View File

@@ -18,6 +18,7 @@ use catalog::CatalogManagerRef;
use common_base::Plugins;
use common_meta::cache_invalidator::{CacheInvalidatorRef, DummyCacheInvalidator};
use common_meta::ddl::ProcedureExecutorRef;
use common_meta::key::flow::TableFlowManager;
use common_meta::key::TableMetadataManager;
use common_meta::kv_backend::KvBackendRef;
use common_meta::node_manager::NodeManagerRef;
@@ -101,10 +102,13 @@ impl FrontendBuilder {
let region_query_handler =
FrontendRegionQueryHandler::arc(partition_manager.clone(), node_manager.clone());
let table_flow_manager = Arc::new(TableFlowManager::new(kv_backend.clone()));
let inserter = Arc::new(Inserter::new(
self.catalog_manager.clone(),
partition_manager.clone(),
node_manager.clone(),
table_flow_manager,
));
let deleter = Arc::new(Deleter::new(
self.catalog_manager.clone(),