Skip to content

Potential Memory Leak after 0.27 #12623

@ARizzo35

Description

@ARizzo35

Describe the bug

Some time after version 0.27, my applications that use Rerun grow in memory usage indefinitely. I've observed this on 0.28 and now on 0.29 as well.

To Reproduce
Steps to reproduce the behavior:
In one terminal, run the following snippet:

use anyhow::Result;
use rerun::{RecordingStreamBuilder, Scalars};

fn main() -> Result<()> {
    let rec = RecordingStreamBuilder::new("test")
        .batcher_config(rerun::log::ChunkBatcherConfig::ALWAYS)
        .set_sinks((
            rerun::sink::GrpcSink::default(),
            rerun::sink::FileSink::new("test.rrd")?,
        ))?;

    loop {
        for i in 0..10 {
            rec.log("signal", &Scalars::single(i as f32 * 0.1))?;
        }
    }
}

In another terminal, run rerun to run the server and open up the viewer.

Expected behavior

The app using the Rerun recorder shouldn't be continuously growing in memory and this wasn't the case in 0.27 versions. Also, the memory usage does not go up as fast if I don't set the batcher config to ALWAYS, but it still seems to go up indefinitely albeit much slower. There could be something related here but I'm not sure.

Screenshots

Backtrace

Desktop (please complete the following information):

  • OS: I've observed this on both MacOS and Linux.

Rerun version

rerun-cli 0.29.1 (nasm native_viewer web_viewer) [rustc 1.92.0 (ded5c06cf 2025-12-08) (built from a source tarball), LLVM 21.1.8] aarch64-apple-darwin
Video features: av1 ffmpeg nasm

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions