diff options
| -rw-r--r-- | internal/ior.go | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/internal/ior.go b/internal/ior.go index a6fdbc4..f52c584 100644 --- a/internal/ior.go +++ b/internal/ior.go @@ -233,11 +233,14 @@ func tuiTraceStarterFromRunTrace( Log: func(int, string) {}, }) + cfg := flags.Get() engine := statsengine.NewEngine(64) streamBuf := eventstream.NewRingBuffer() + liveTrie := flamegraph.NewLiveTrie(cfg.CollapsedFields, cfg.CountField) if bindings, ok := tui.RuntimeBindingsFromContext(ctx); ok { bindings.SetDashboardSnapshotSource(engine) bindings.SetEventStreamSource(streamBuf) + bindings.SetLiveTrie(liveTrie) } streamEvents := make(chan eventstream.StreamEvent, 4096) @@ -255,7 +258,7 @@ func tuiTraceStarterFromRunTrace( el.printCb = func(ep *event.Pair) { engine.Ingest(ep) streamEvents <- eventstream.NewStreamEvent(ep.EnterEv.GetTime(), ep) - ep.Recycle() + liveTrie.Ingest(ep) } el.warningCb = func(message string) { // Drop warning notifications if the stream channel is saturated. |
