From b7b6a5114d86a8b9282fbc1b082fed119b236891 Mon Sep 17 00:00:00 2001 From: YangKeao Date: Thu, 2 Feb 2023 14:57:20 +0800 Subject: [PATCH] fix data race in TTL manager Signed-off-by: YangKeao --- domain/domain.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/domain/domain.go b/domain/domain.go index 0d06fdc5a7a13..75ee729cd99a4 100644 --- a/domain/domain.go +++ b/domain/domain.go @@ -127,7 +127,7 @@ type Domain struct { expiredTimeStamp4PC types.Time logBackupAdvancer *daemon.OwnerDaemon historicalStatsWorker *HistoricalStatsWorker - ttlJobManager *ttlworker.JobManager + ttlJobManager atomic.Pointer[ttlworker.JobManager] serverID uint64 serverIDSession *concurrency.Session @@ -2494,7 +2494,7 @@ func (do *Domain) StartTTLJobManager() { }() ttlJobManager := ttlworker.NewJobManager(do.ddl.GetID(), do.sysSessionPool, do.store, do.etcdClient) - do.ttlJobManager = ttlJobManager + do.ttlJobManager.Store(ttlJobManager) ttlJobManager.Start() <-do.exit @@ -2509,7 +2509,7 @@ func (do *Domain) StartTTLJobManager() { // TTLJobManager returns the ttl job manager on this domain func (do *Domain) TTLJobManager() *ttlworker.JobManager { - return do.ttlJobManager + return do.ttlJobManager.Load() } func init() {