From 5fa01e7a9674920aa6ef0db862ce7db0be98c3bb Mon Sep 17 00:00:00 2001 From: JeremyHi Date: Wed, 27 Mar 2024 14:26:58 +0800 Subject: [PATCH] feat: create regions persist true (#3590) * feat: change open-region-step's status persist as true * feat: avoid cloning * fix: fix unit test --- src/common/meta/src/ddl/create_table.rs | 6 ++---- src/meta-srv/src/procedure/tests.rs | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/common/meta/src/ddl/create_table.rs b/src/common/meta/src/ddl/create_table.rs index 103e85c009..a3e02d2e04 100644 --- a/src/common/meta/src/ddl/create_table.rs +++ b/src/common/meta/src/ddl/create_table.rs @@ -195,9 +195,8 @@ impl CreateTableProcedure { // Safety: the table route must be allocated. match self.table_route()?.clone() { TableRouteValue::Physical(x) => { - let region_routes = x.region_routes.clone(); let request_builder = self.new_region_request_builder(None)?; - self.create_regions(®ion_routes, request_builder).await + self.create_regions(&x.region_routes, request_builder).await } TableRouteValue::Logical(x) => { let physical_table_id = x.physical_table_id(); @@ -288,9 +287,8 @@ impl CreateTableProcedure { self.creator.data.state = CreateTableState::CreateMetadata; - // Ensures the procedures after the crash start from the `DatanodeCreateRegions` stage. // TODO(weny): Add more tests. - Ok(Status::executing(false)) + Ok(Status::executing(true)) } /// Creates table metadata diff --git a/src/meta-srv/src/procedure/tests.rs b/src/meta-srv/src/procedure/tests.rs index d40ca633ff..6d1687d205 100644 --- a/src/meta-srv/src/procedure/tests.rs +++ b/src/meta-srv/src/procedure/tests.rs @@ -237,7 +237,7 @@ async fn test_on_datanode_create_regions() { }); let status = procedure.on_datanode_create_regions().await.unwrap(); - assert!(matches!(status, Status::Executing { persist: false })); + assert!(matches!(status, Status::Executing { persist: true })); assert!(matches!( procedure.creator.data.state, CreateTableState::CreateMetadata