From f1d1b6d77fe456066de6d7114b6e47080cf3e11d Mon Sep 17 00:00:00 2001 From: Joe Elliott Date: Thu, 25 Aug 2022 15:02:24 -0400 Subject: [PATCH 1/2] restore discarded rows to pool Signed-off-by: Joe Elliott --- tempodb/encoding/vparquet/compactor.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tempodb/encoding/vparquet/compactor.go b/tempodb/encoding/vparquet/compactor.go index c60ab3c0bca..eb9b55cd2e5 100644 --- a/tempodb/encoding/vparquet/compactor.go +++ b/tempodb/encoding/vparquet/compactor.go @@ -101,8 +101,9 @@ func (c *Compactor) Compact(ctx context.Context, l log.Logger, r backend.Reader, } if sum > c.opts.MaxBytesPerTrace { // Trace too large to compact - for _, discardedRow := range rows[1:] { - c.opts.SpansDiscarded(countSpans(sch, discardedRow)) + for i := 1; i < len(rows); i++ { + c.opts.SpansDiscarded(countSpans(sch, rows[i])) + pool.Put(rows[i]) } return rows[0], nil } From 0371e039f8e16e1c4aab3c24feea118fd5ac0b11 Mon Sep 17 00:00:00 2001 From: Joe Elliott Date: Thu, 25 Aug 2022 15:05:15 -0400 Subject: [PATCH 2/2] changelog Signed-off-by: Joe Elliott --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index c71827bb431..181fb70acc6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ * [ENHANCEMENT] metrics-generator: expose span size as a metric [#1662](https://github.com/grafana/tempo/pull/1662) (@ie-pham) * [ENHANCEMENT] Set Max Idle connections to 100 for Azure, should reduce DNS errors in Azure [#1632](https://github.com/grafana/tempo/pull/1632) (@electron0zero) * [CHANGE] Make DNS address fully qualified to reduce DNS lookups in Kubernetes [#1687](https://github.com/grafana/tempo/pull/1687) (@electron0zero) +* [CHANGE] Improve parquet compaction memory profile when dropping spans [#1692](https://github.com/grafana/tempo/pull/1692) (@joe-elliott) ## v1.5.0 / 2022-08-17