0.86.0 (Draft)¶
Draft — GitHub Release
Changes¶
⚠️ Breaks¶
vortex-file: open_cached uses an explicit cache key (#9733) @myrrc
feat: require Send on VortexWrite and its futures (#9648) @claude[bot]
Add physical parameters to OutputSink (#9585) @connortsui20
Let a row dispatch declare a runtime output dtype (#9581) @connortsui20
✨ Features¶
refactor(array): use buffer allocator in execution context (#9669) @gatesn
Add
Utf8types forRowFn(#9715) @connortsui20Add mechamism to lock edition definition and how to evolve objects in editions (#9660) @robert3005
feat(duckdb): report per-file column statistics from the vortex COPY writer (#9471) @moshap-firebolt
feat(ffi): add vx_scalar_new_extension for extension-typed literals (#9691) @balicat
Support canonicalising decimal RunEnd arrays (#9665) @onursatici
Add filter-and-scatter RowFn execution (#9521) @connortsui20
feat(cuda): add a FastLanes delta decode kernel (#9535) @joseph-isaacs
duckdb: support hive partitioning and ‘filename’ column (#9540) @myrrc
🚀 Performance¶
Avoid materializing constant structs for select (#9718) @danking
Avoid row index canonicalization for trivial masks (#9717) @danking
Avoid materializing constant structs for get_item (#9716) @danking
Trim constant-operand cases from scalar function benchmarks (#9696) @connortsui20
Decode RowFn constants directly (#9680) @connortsui20
Pack Boolean RowFn output directly (#9626) @connortsui20
Conditionally slice elements to selected index bounds before filtering wide list arrays (#9679) @mhk197
Avoid iterative drop for shallow expression trees (#9657) @robert3005
Better fixed-width buffer filtering (#8723) @robert3005
Use indexed sources for fallible constant rows (#9629) @connortsui20
Map constant RowFn inputs directly (#9628) @connortsui20
Build packed boolean output (#9620) @connortsui20
Avoid single-chunk grouped accumulator states (#9597) @mhk197
refactor(vortex-spatial): execute distance with RowFn (#9616) @HarukiMoriarty
Measure numeric arithmetic and comparison benchmarks per CPU feature (#9599) @connortsui20
Benchmark primitive comparison across CPU features (#9598) @connortsui20
Use dense retry for nullable row functions (#9517) @connortsui20
🐛 Bug Fixes¶
11 changes
Support unsigned sequence in the DuckDB exporter (#9720) @danking
fix(dict): cap max_dict_bytes at the u32 range BinaryView addresses (#9690) @mnshdw
fix(dict): clear encoder state in DictEncoder::reset (#9693) @mnshdw
bench: run the full compress suite under
--gpu-decompress(#9399) @joseph-isaacsduckdb: forbid aggregations and filter pushdowns over virtual columns (#9238) @myrrc
feat: sequence cast compute (#8403) @siddarth2810
fix: price delta’s bases and tail padding in its compression estimate (#9602) @rapour
fix: stabilize conjunct selectivity (#9543) @joseph-isaacs
Carry partial RowFn validity with MaskValues (#9534) @connortsui20
📖 Documentation¶
7 changes
docs(vortex-layout): mark the bloom filter aggregate as unstable (#9753) @connortsui20
Clarify Boolean collection code generation (#9676) @connortsui20
docs(vortex-spatial): add crate overview (#9683) @HarukiMoriarty
Clarify
RowFninfallibility documentation (#9618) @connortsui20docs(java): replace the Java API example that no longer compiles (#9635) @jackylee-ch
docs: filter pushdown is connected, not future work (#9637) @jackylee-ch
🧰 Maintenance¶
20 changes
Move benchmark machines to c8gd.metal-24xl (#9761) @robert3005
Return the lazy filtered row index array directly (#9760) @robert3005
refactor(decimal): dispatch numeric kernels on one storage width (#9756) @mhk197
chore: deny clippy::inline_always at the workspace level (#9726) @joseph-isaacs
docs(spark): refresh the user guide against the shipped connector (#9607) @jackylee-ch
docs(vx): state which inspection commands support –json (#9638) @jackylee-ch
fix(policy): update policy to match the new claude and codex bot ids (#9650) @robert3005
refactor(vortex-spatial): execute geo kernels with RowFn (#9623) @HarukiMoriarty
Upgrade fastlanes to 0.7.0 (#9641) @robert3005
refactor(runend): clarify filter implementation (#9633) @connortsui20
refactor(dict): clarify compute invariants (#9632) @connortsui20
refactor: simplify array optimizer (#9634) @connortsui20
Update anthropics/claude-code-action digest to 16b3b31 (#9559) @renovate[bot]
Extend MaskValuesRef to filter execution (#9542) @connortsui20
Upgrade toolchain to 1.98.0 (#9539) @robert3005