Avatar for the vortex-data user
vortex-data
vortex
BlogDocsChangelog

Performance History

Latest Results

Add more scalar literal types to the Python and JNI bindings Python (`vx.scalar` and anything that accepts an expression): - `datetime.time` as `vortex.time`, `datetime.date` as `vortex.date` and `datetime.datetime` as `vortex.timestamp`, taking the unit (and timezone) from a dtype hint and defaulting to microseconds (days for dates). Timezone-aware values store the UTC instant and take their zone name from `zoneinfo.ZoneInfo`, pytz or `datetime.timezone.utc`; pandas.Timestamp nanoseconds are kept for nanosecond timestamps. - `decimal.Decimal`, inferring precision and scale or rescaling exactly to a decimal dtype hint. - `uuid.UUID` as `vortex.uuid`. - Conversions that would lose precision raise ValueError instead of truncating. - Fix list and dict values with a list/struct dtype hint: the list was never returned, and struct fields were not cast to the field dtypes, which panicked. Both now cast each element/field to its dtype. - Document `vx.scalar`. JNI (`dev.vortex.api.Expression`): - `literalTime`/`nullLiteralTime` and `literalGeometry` (WKB decoded into the native spatial extension type). - `literalU8/U16/U32/U64`, `literalF16`, and U8-U64 and F16 null literals. - `literalList`, `literalFixedSizeList`, `literalStruct` and `literalMap` (plus null variants), assembled from literal expressions with a type prototype literal for element, key and value dtypes. - `Expression.spatial(SpatialFunction, ...)` for area, collect, contains, convex hull, distance, envelope, intersects, length and make-line, with the function codes pinned by the tag parity test. Signed-off-by: Robert Kruszewski <robert@spiraldb.com> Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012A8yJW1z27J5b5N5TW2QMe
claude/sleepy-tesla-7juwu4
30 minutes ago
less Signed-off-by: Robert Kruszewski <github@robertk.io>
rk/compressor-constant-fastpath
22 hours ago
Gate compat fixture writes with editions (#10077) ## Summary Compat fixtures are written with `disable_editions()`, so a fixture can record an encoding with no read-compatibility guarantee. Once published, the additive-only manifest rule makes that encoding permanent. This PR writes fixtures under the default session's enabled editions (`core2026.08.3`), so a fixture can only emit encodings an edition already guarantees. ## Changes - **Gated writes.** `adapter::write_compressed` and `adapter::write_compressed_to_bytes_with_session` no longer call `disable_editions()`. `check` regenerates its comparison files through the same path, so it is gated too. - **Dataset compressor.** TPC-H and ClickBench fixtures build their compressor and write strategy from `VortexSession::default()`, the session the file is written with, instead of from `array_session()` with `disable_editions()`. Since #10067, `BtrBlocksCompressorBuilder::from_session` keeps only schemes whose encodings the session registers and its editions allow. The compressor therefore can't choose an encoding the gated write would reject, such as `vortex.patched` under `VORTEX_EXPERIMENTAL_PATCHES`. The regular and compact variants now share one code path. - **`decimal_byte_parts_v2.vortex` disabled**, like `delta` and `patched`. It writes `vortex.decimal_byte_parts.v2`, which no edition includes yet. It isn't in any published manifest (checked through 0.86.1), so removing it doesn't break the additive-only rule. It comes back once DBP v2 joins an edition. - **`DESIGN.md`** notes that new fixtures must use encodings from an enabled edition. Every fixture in the 0.86.1 manifest uses `core` encodings. That comes from reading the code, not from a run, so the published fixture set should be unchanged. ## Checks - [x] `cargo clippy -p vortex-compat --all-targets --all-features -- -D warnings` - [x] `cargo +nightly-2026-09-10 fmt -p vortex-compat --check` - [ ] `cargo nextest run -p vortex-compat` - [ ] `cargo run -p vortex-compat --release -- generate --output /tmp/compat --exclude clickbench`: confirms every remaining fixture writes under `core` --------- Signed-off-by: Matt Katz <mhkatz97@gmail.com>
develop
23 hours ago

Latest Branches

CodSpeed Performance Gauge
0%
Add more scalar literal types to the Python and JNI bindings#10079
34 minutes ago
e4b8d80
claude/sleepy-tesla-7juwu4
CodSpeed Performance Gauge
-12%
18 hours ago
a881d3a
rk/compressor-constant-fastpath
CodSpeed Performance Gauge
-10%
Remove redundant BtrBlocks tests#10075
1 day ago
4b11cac
ct/btrblocks-test-cleanup
© 2026 CodSpeed Technology
Home Terms Privacy Docs