From dacbb75c13f37f0f2e3a8a98b5edbf406488a327 Mon Sep 17 00:00:00 2001 From: obdev Date: Thu, 20 Jul 2023 08:24:01 +0000 Subject: [PATCH] add check for ls gc --- src/logservice/ob_garbage_collector.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/logservice/ob_garbage_collector.cpp b/src/logservice/ob_garbage_collector.cpp index a66d57db9..780b91a30 100644 --- a/src/logservice/ob_garbage_collector.cpp +++ b/src/logservice/ob_garbage_collector.cpp @@ -33,6 +33,7 @@ #include "rootserver/ob_ls_recovery_reportor.h" // ObLSRecoveryReportor #include "rootserver/ob_tenant_info_loader.h" // ObTenantInfoLoader #include "share/ob_occam_time_guard.h" +#include "storage/slog_ckpt/ob_server_checkpoint_slog_handler.h" namespace oceanbase { @@ -1177,7 +1178,10 @@ void ObGarbageCollector::run1() lib::set_thread_name("GCCollector"); while (!has_set_stop()) { - if (!stop_create_new_gc_task_) { + if (!ObServerCheckpointSlogHandler::get_instance().is_started()) { + // tablets are not ready for read + usleep(5000 * 1000); // 5s + } else if (!stop_create_new_gc_task_) { ObGCCandidateArray gc_candidates; int64_t gc_interval = GC_INTERVAL; CLOG_LOG(INFO, "Garbage Collector is running", K(seq_), K(gc_interval));