pola-rs/polars · error

failed to spawn polars-ooc cleaner thread

Error message

failed to spawn polars-ooc cleaner thread

What it means

Error "failed to spawn polars-ooc cleaner thread" thrown in pola-rs/polars.

Source

Thrown at crates/polars-ooc/src/spill_file.rs:107

                                "Error while removing spill directory '{}': {e}",
                                p.display()
                            );
                        }
                    }
                },
                CleanRequest::Flush(ack) => drop(ack.send(())),
            }
        }
    }
}

static SPILL_CLEANER: LazyLock<SpillCleaner> = LazyLock::new(|| {
    let (send_rq, recv_rq) = channel();

    std::thread::Builder::new()
        .name("polars-ooc-cleaner".into())
        .spawn(move || SpillCleaner::run(recv_rq))
        .expect("failed to spawn polars-ooc cleaner thread");

    SpillCleaner { send_rq }
});

enum CleanRequest {
    File(PathBuf, u64),
    #[expect(unused)]
    Directory(PathBuf),
    Flush(Sender<()>),
}

/// Delete spill directories left behind by dead processes.
///
/// Each subdirectory is named by its owning PID. Skips our own PID and
/// any directory whose PID is still alive.
fn cleanup_stale_dirs() {
    let spill_dir = polars_config::config().ooc_spill_dir();
    let Ok(entries) = std::fs::read_dir(&spill_dir) else {

View on GitHub (pinned to df599052da)

When it happens

Trigger: Thrown at crates/polars-ooc/src/spill_file.rs:107 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of pola-rs/polars@df599052da (2026-08-16). Data as JSON: /api/errors/c941cd6384b77813. Report an issue: GitHub.