v0.21.0
slater v0.21.0
External-build memory fixes for the large-graph pipeline. Both cut peak RSS
sharply on the 91.6M-node / 1.49B-edge reference build with a byte-identical
generation (content-hash unchanged), verified end-to-end.
Highlights
- resolve: the edge-endpoint resolve phase no longer overshoots its memory
budget. Its per-partition external sorters now spill inline instead of through
the shared parallel spill pool, which had multiplied each sort's run count (and
therefore the k-way merge's resident block footprint) inside an already
thread-saturated stage. Peak RSS 9.33 GB -> 2.61 GB; phase ~11% faster. - cluster: the locality-reorder adjacency sort gets its full memory budget back.
A single non-concurrent sort had been starved 16x under a convention meant for
phases that fan out many concurrent sorters, which inflated run count and hurt
both memory and speed. Peak RSS 6.54 GB -> 1.70 GB; phase back below its
pre-regression wall time.
Both fixes are output-preserving: every sort key involved is a total order, so
run count cannot change the merged result.
Full Changelog: v0.20.0...v0.21.0