diff --git a/pkg/streamingpromql/engine_test.go b/pkg/streamingpromql/engine_test.go index 8ad786e5896..78fd4002bcc 100644 --- a/pkg/streamingpromql/engine_test.go +++ b/pkg/streamingpromql/engine_test.go @@ -251,10 +251,12 @@ func TestNewInstantQuery_Strings(t *testing.T) { q, err := mimirEngine.NewInstantQuery(ctx, storage, nil, expr, time.Now()) require.NoError(t, err) mimir := q.Exec(context.Background()) + q.Close() q, err = prometheusEngine.NewInstantQuery(ctx, storage, nil, expr, time.Now()) require.NoError(t, err) prometheus := q.Exec(context.Background()) + q.Close() testutils.RequireEqualResults(t, expr, prometheus, mimir) } diff --git a/pkg/streamingpromql/query.go b/pkg/streamingpromql/query.go index 9c308d7a54a..fc172230024 100644 --- a/pkg/streamingpromql/query.go +++ b/pkg/streamingpromql/query.go @@ -795,6 +795,8 @@ func (q *Query) Close() { types.VectorPool.Put(v, q.memoryConsumptionTracker) case promql.Scalar: // Nothing to do, we already returned the slice in populateScalarFromScalarOperator. + case promql.String: + // Nothing to do as strings don't come from a pool default: panic(fmt.Sprintf("unknown result value type %T", q.result.Value)) }