From 86eeaf188647ced20a7e9801fc53cb29f0d48461 Mon Sep 17 00:00:00 2001 From: Patryk Prus Date: Fri, 14 Mar 2025 15:10:41 -0400 Subject: [PATCH] Skip writing series records uniformly across the benchmark, so we skip some OOO series as well Signed-off-by: Patryk Prus --- tsdb/head_test.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tsdb/head_test.go b/tsdb/head_test.go index 0918395007..161ead50b4 100644 --- a/tsdb/head_test.go +++ b/tsdb/head_test.go @@ -321,8 +321,15 @@ func BenchmarkLoadWLs(b *testing.B) { writeSeries := refSeries if missingSeriesPct > 0 { - missingSeries := int(float64(c.seriesPerBatch) * missingSeriesPct) - writeSeries = refSeries[:len(refSeries)-missingSeries] + newWriteSeries := make([]record.RefSeries, 0, int(float64(len(refSeries))*(1.0-missingSeriesPct))) + keepRatio := 1.0 - missingSeriesPct + // Keep approximately every 1/keepRatio series. + for i, s := range refSeries { + if int(float64(i)*keepRatio) != int(float64(i+1)*keepRatio) { + newWriteSeries = append(newWriteSeries, s) + } + } + writeSeries = newWriteSeries } populateTestWL(b, wal, []interface{}{writeSeries})