Latest Results
test(stats): add e2e parquet-stats pruning test; harden starts_with binding
Follow-up to @universalmind303's review of the starts_with stats-pruning PR.
- e2e test (daft-parquet/src/helpers.rs): write a real two-row-group parquet
file with per-row-group Utf8 min/max stats, then assert prune_row_groups()
skips the right row groups for starts_with prefix predicates ("b" -> [1],
"a" -> [0], "c" -> [], empty -> keep all). Exercises the production path
(row_group_metadata_to_table_stats -> TableStatistics::eval_expression),
not just the in-memory stats layer. Adds daft-functions-utf8 as a
dev-dependency of daft-parquet.
- named binding (daft-stats/src/table_stats.rs): bind starts_with args by name
(input/pattern) via FunctionArgs::required instead of positional indexing,
mirroring the kernel's own binding, so keyword args in either order work.
Still fails safe (Missing) if an arg is absent.
- helper boundary tests: increment_utf8_prefix / next_unicode_scalar surrogate
skip (U+D7FF -> U+E000), char::MAX carry-left, and all-max -> None.
Local: cargo test -p daft-stats (15 passed) and -p daft-parquet --lib helpers
(1 passed); clippy --all-features --all-targets -D warnings, fmt, codespell
all clean.hello-peter-tang:startswith-stats-pruning Latest Branches
0%
hello-peter-tang:startswith-stats-pruning 0%
hello-peter-tang:fix/7476-iceberg-dockerfile-bookworm 0%
hello-peter-tang:perf/6340-lm-pipelined-predicate-eval © 2026 CodSpeed Technology