diff --git a/pkg/sql/ttl/ttljob/ttljob_processor.go b/pkg/sql/ttl/ttljob/ttljob_processor.go index 733ec1f871b3..d7dfca3cabff 100644 --- a/pkg/sql/ttl/ttljob/ttljob_processor.go +++ b/pkg/sql/ttl/ttljob/ttljob_processor.go @@ -157,6 +157,7 @@ func (t *ttlProcessor) work(ctx context.Context) error { } var rowsDeletedSoFar atomic.Int64 var spansProccessedSoFar atomic.Int64 + var spansProccessedSinceLastLog atomic.Int64 // Log progress approximately every 1% of spans processed. updateEvery := max(1, processorSpanCount/100) @@ -211,6 +212,7 @@ func (t *ttlProcessor) work(ctx context.Context) error { // add before returning err in case of partial success rowsDeletedSoFar.Add(spanRowCount) spansProccessedSoFar.Add(1) + spansProccessedSinceLastLog.Add(1) if err != nil { // Continue until channel is fully read. // Otherwise, the keys input will be blocked. @@ -247,8 +249,10 @@ func (t *ttlProcessor) work(ctx context.Context) error { // If the span has no rows, we still need to increment the processed // count. spansProccessedSoFar.Add(1) + spansProccessedSinceLastLog.Add(1) } - if spansProccessedSoFar.Load() >= updateEvery { + if spansProccessedSinceLastLog.Load() >= updateEvery { + spansProccessedSinceLastLog.Store(0) if err := logProgress(); err != nil { return err }