1min.

1MIN · PYTHON

Polars 2.0 makes streaming the default and adds partial disk spilling

Polars 2.0 now uses its streaming engine by default when collecting a lazy query. It also enables spilling supported operations to disk when memory fills, expands SQL support and introduces a Map data type. The change matters for correctness as well as memory: some operations no longer preserve an observable row order unless explicitly requested.

Polars · Oct 6, 2026

Why it matters

Data pipelines need migration checks for ordering and types, even when their existing queries still run.

More context

Try the released version with the migration guide and representative workloads. Use maintain_order where ordering is required. Initial disk spilling covers sorts, window functions and many expressions; joins and group-bys remain planned. The default disk budget is 64 GB.

Keep in mind

Not every high-memory query can spill yet. Published performance comparisons use specific machines and best-of-five hot runs, with some unsuccessful comparison queries excluded for all engines. We have not rerun them, and they do not establish a universal engine ranking.

Original read

More engineering ideas, one minute at a time.

Explore more stories