diff --git a/internal/proxy/channels_time_ticker.go b/internal/proxy/channels_time_ticker.go index 2765f92875..458713864d 100644 --- a/internal/proxy/channels_time_ticker.go +++ b/internal/proxy/channels_time_ticker.go @@ -92,17 +92,18 @@ func (ticker *channelsTimeTickerImpl) tick() error { return err } + stats, err := ticker.getStatisticsFunc() + if err != nil { + log.Debug("Proxy channelsTimeTickerImpl failed to getStatistics", zap.Error(err)) + return nil + } + ticker.statisticsMtx.Lock() defer ticker.statisticsMtx.Unlock() ticker.currentsMtx.Lock() defer ticker.currentsMtx.Unlock() - stats, err := ticker.getStatisticsFunc() - if err != nil { - log.Debug("Proxy channelsTimeTickerImpl failed to getStatistics", zap.Error(err)) - } - for pchan := range ticker.currents { current := ticker.currents[pchan] stat, ok := stats[pchan]