diff --git a/lib/pacer/pacer.go b/lib/pacer/pacer.go index 494340638..d23d1ce33 100644 --- a/lib/pacer/pacer.go +++ b/lib/pacer/pacer.go @@ -168,6 +168,12 @@ func (p *Pacer) beginCall(limitConnections bool) { if sleepTime > 0 { <-p.pacer + // Re-read the sleep time as it may be stale + // after waiting for the pacer token + p.mu.Lock() + sleepTime = p.state.SleepTime + p.mu.Unlock() + // Restart the timer go func(t time.Duration) { time.Sleep(t)