From b46af57d65d02763cdc939946b051c01127d87d0 Mon Sep 17 00:00:00 2001 From: obdev Date: Fri, 7 Jul 2023 07:18:17 +0000 Subject: [PATCH] fix: tenant config has been dropped before slog replay finish --- src/observer/omt/ob_tenant_node_balancer.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/observer/omt/ob_tenant_node_balancer.cpp b/src/observer/omt/ob_tenant_node_balancer.cpp index 3625acac25..07b8bb174a 100644 --- a/src/observer/omt/ob_tenant_node_balancer.cpp +++ b/src/observer/omt/ob_tenant_node_balancer.cpp @@ -112,7 +112,11 @@ void ObTenantNodeBalancer::run1() // check whether tenant unit is changed, try to update unit config of tenant ObSEArray tenants; - if (OB_FAIL(unit_getter_.get_tenants(tenants))) { + if (!ObServerCheckpointSlogHandler::get_instance().is_started()) { + // do nothing if not finish replaying slog + LOG_INFO("server slog not finish replaying, need wait"); + ret = OB_NEED_RETRY; + } else if (OB_FAIL(unit_getter_.get_tenants(tenants))) { LOG_WARN("get cluster tenants fail", K(ret)); } else if (OB_FAIL(OTC_MGR.refresh_tenants(tenants))) { LOG_WARN("fail refresh tenant config", K(tenants), K(ret));