diff --git a/scrape/rules.go b/scrape/rules.go index f5b51ee77d..45364c224d 100644 --- a/scrape/rules.go +++ b/scrape/rules.go @@ -63,7 +63,7 @@ func (r *ruleEngine) NewScrapeBatch() Batch { func (r *ruleEngine) EvaluateRules(b Batch, ts time.Time, sampleMutator labelsMutator) ([]Sample, error) { var ( result []Sample - builder labels.ScratchBuilder + builder = labels.NewScratchBuilder(0) ) for _, rule := range r.rules { queryable := storage.QueryableFunc(func(_, _ int64) (storage.Querier, error) { diff --git a/scrape/scrape_test.go b/scrape/scrape_test.go index 55618adf5e..0e09003d82 100644 --- a/scrape/scrape_test.go +++ b/scrape/scrape_test.go @@ -5205,7 +5205,13 @@ metric{l1="1", l2="2"} 5`, require.NoError(t, err) require.NoError(t, slApp.Commit()) - require.Equal(t, test.expectedFloats, app.resultFloats) + require.Len(t, app.resultFloats, len(test.expectedFloats)) + for i := range app.resultFloats { + expected, actual := test.expectedFloats[i], app.resultFloats[i] + require.Equal(t, expected.metric.String(), actual.metric.String()) + require.Equal(t, expected.t, actual.t) + require.Equal(t, expected.f, actual.f) + } }) } }