diff --git a/registry/proxy/scheduler/scheduler.go b/registry/proxy/scheduler/scheduler.go index 0c8a8534..bde94657 100644 --- a/registry/proxy/scheduler/scheduler.go +++ b/registry/proxy/scheduler/scheduler.go @@ -134,11 +134,12 @@ func (ttles *TTLExpirationScheduler) Start() error { for { select { case <-ttles.saveTimer.C: + ttles.Lock() if !ttles.indexDirty { + ttles.Unlock() continue } - ttles.Lock() err := ttles.writeState() if err != nil { context.GetLogger(ttles.ctx).Errorf("Error writing scheduler state: %s", err)