From c81d2b4c186f7112ef991fd6f2ceb378aeb5d16f Mon Sep 17 00:00:00 2001 From: Aliaksandr Valialkin Date: Sat, 30 Jul 2022 00:38:54 +0300 Subject: [PATCH] app/vmselect/netstorage: initializes tsw.rowsProcessed before calling tsw.f, since tsw.f can modify r.Timestamps and r.Values lengths --- app/vmselect/netstorage/netstorage.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/vmselect/netstorage/netstorage.go b/app/vmselect/netstorage/netstorage.go index bbeaaac13..2ae266dc5 100644 --- a/app/vmselect/netstorage/netstorage.go +++ b/app/vmselect/netstorage/netstorage.go @@ -127,13 +127,13 @@ func (tsw *timeseriesWork) do(r *Result, workerID uint) error { atomic.StoreUint32(tsw.mustStop, 1) return fmt.Errorf("error during time series unpacking: %w", err) } + tsw.rowsProcessed = len(r.Timestamps) if len(r.Timestamps) > 0 { if err := tsw.f(r, workerID); err != nil { atomic.StoreUint32(tsw.mustStop, 1) return err } } - tsw.rowsProcessed = len(r.Values) return nil }