From bc7a162f20a62d4f2ac0ba4908e67689e1ee2c5c Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Fri, 6 Mar 2026 16:46:37 +0200 Subject: refactor: make livetrie caller-owned for pair recycling (task 382) --- internal/tui/flamegraph/bench_test.go | 1 + internal/tui/flamegraph/stress_test.go | 12 ++++++++---- 2 files changed, 9 insertions(+), 4 deletions(-) (limited to 'internal/tui/flamegraph') diff --git a/internal/tui/flamegraph/bench_test.go b/internal/tui/flamegraph/bench_test.go index 05c6526..33d77d1 100644 --- a/internal/tui/flamegraph/bench_test.go +++ b/internal/tui/flamegraph/bench_test.go @@ -298,6 +298,7 @@ func BenchmarkLiveTrieIngestAndSnapshot(b *testing.B) { buildBenchmarkPath(8, 6, eventIdx), ) liveTrie.Ingest(pair) + pair.Recycle() } payload, _ := liveTrie.SnapshotJSON() diff --git a/internal/tui/flamegraph/stress_test.go b/internal/tui/flamegraph/stress_test.go index d2bd74a..e53e4d5 100644 --- a/internal/tui/flamegraph/stress_test.go +++ b/internal/tui/flamegraph/stress_test.go @@ -82,13 +82,15 @@ func TestStressHighEventRate(t *testing.T) { if seed%2 == 0 { traceID = types.SYS_ENTER_WRITE } - liveTrie.Ingest(newBenchmarkPair( + pair := newBenchmarkPair( fmt.Sprintf("worker-%d", worker), traceID, uint32(1000+worker), uint32(200000+seed), buildBenchmarkPath(6, 3, seed), - )) + ) + liveTrie.Ingest(pair) + pair.Recycle() } }() } @@ -221,12 +223,14 @@ func ingestStressEvents(liveTrie *coreflamegraph.LiveTrie, count, seedBase int) } else if seed%2 == 0 { traceID = types.SYS_ENTER_WRITE } - liveTrie.Ingest(newBenchmarkPair( + pair := newBenchmarkPair( fmt.Sprintf("stress-%d", seed%8), traceID, uint32(1200+(seed%64)), uint32(300000+seed), buildBenchmarkPath(9, 5, seed), - )) + ) + liveTrie.Ingest(pair) + pair.Recycle() } } -- cgit v1.2.3