Skip to content

Add TakeSlices for fixed-size-list take#8674

Open
danking wants to merge 9 commits into
developfrom
codex/take-slices-fsl
Open

Add TakeSlices for fixed-size-list take#8674
danking wants to merge 9 commits into
developfrom
codex/take-slices-fsl

Conversation

@danking

@danking danking commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

The key issue here is that fixed_size_list.take(indices) explodes the indices into one index per list element. For a fixed-size list of length 4096, this means the number of take indices expands by three orders of magnitude. Moreover, the take kernel must either copy each index separately or reconstruct the fact that these are actually contiguous ranges so it can use range copies.

This PR now models that operation directly as a gather of contiguous runs:

fn take_slices(&self, starts: ArrayRef, lengths: ArrayRef) -> VortexResult<ArrayRef>;

starts[i] and lengths[i] describe each child run, and the output is the concatenation of values[starts[i]..starts[i] + lengths[i]]. The runs may overlap, repeat, and appear in any order; this is a gather of runs, not a normal slice.

For FixedSizeList<100, u8>, this:

fixed_size_list.take([10, 100, 0])

now becomes run selectors over the child elements:

starts  = [1000, 10000, 0]
lengths = [100, 100, 100]

instead of expanding to:

fixed_size_list.elements().take([1000, 1001, ..., 1099, 10000, 10001, ..., 10099, 0, 1, ..., 99])

This also gives ListView -> List packing a direct fast path: ListView rebuild now uses original offsets as starts and normalized sizes as lengths, so it can gather the referenced element runs without building a flat per-element take index buffer or falling back to per-list builders. Struct now pushes those run selectors into each field, and VarBinView now executes run gathers by copying contiguous view ranges while reusing the original data buffers.

This is a table of results for FixedSizeList<N, f16>:

list size bytes/list indices per-index take_slices manual range copy per-index / take_slices
1 2 B 100 1.17 us 1.04 us 666 ns 1.12x
1 2 B 1000 3.08 us 4.00 us 2.42 us 0.77x
16 32 B 100 4.33 us 1.21 us 661 ns 3.59x
16 32 B 1000 35.3 us 5.54 us 2.71 us 6.37x
256 512 B 100 55.9 us 1.83 us 1.35 us 30.5x
256 512 B 1000 552 us 12.7 us 10.1 us 43.4x
1024 2048 B 100 220 us 3.87 us 3.42 us 56.7x
1024 2048 B 1000 2.40 ms 105 us 99.6 us 22.8x
4096 8192 B 100 927 us 13.5 us 12.9 us 68.7x
4096 8192 B 1000 9.18 ms 391 us 381 us 23.5x

Codex:

Summary

  • Switch TakeSlicesArray from a Vec<Range<usize>> constructor to selector arrays: non-nullable unsigned starts and lengths.
  • Route FixedSizeList take through contiguous child runs via take_slices, leaving child encodings responsible for optimization.
  • Add selector validation/materialization helpers for equal-length, non-nullable unsigned selectors and in-bounds runs, including zero-length runs.
  • Add a primitive TakeSlicesExecute kernel that copies each requested run directly from the primitive slice.
  • Add Struct TakeSlicesReduce so run gathers push down into each field, matching the existing take shape.
  • Add VarBinView TakeSlicesExecute so run gathers copy view ranges directly and reuse backing data buffers.
  • Use take_slices to rebuild non-zero-copy ListViewArray layouts into packed, zero-copy-to-list layouts.
  • Expand take_fsl benchmarks and take_slices coverage for selector arrays, overlapping/repeated runs, empty runs, nested TakeSlices, nullable validity, generic fallback, primitive execution, Struct pushdown, VarBinView view-buffer execution, and FSL take.

Correctness and Coverage

  • TakeSlices validates public construction selectors before creating the lazy array.
  • Generic TakeSlices execution repeatedly slices the child and appends each run; specialized children can bypass that path.
  • Nullable FSL take uses zero-length runs for null output rows and keeps nullness in outer FSL validity.
  • ListView rebuild zeroes null-list lengths before gathering elements, preserving packed offsets without copying invalid-row payloads.
  • Struct preserves struct-level validity while applying the same run selectors to every unmasked field.
  • VarBinView preserves validity and shares the original data-buffer Arc while copying only selected views.

Validation

  • cargo +nightly fmt --all
  • cargo test -p vortex-array take_slices
  • cargo test -p vortex-array fixed_size_list::tests::take
  • cargo test -p vortex-array listview
  • cargo check -p vortex-array --all-targets
  • cargo clippy --all-targets --all-features
  • git diff --check

@codspeed-hq

codspeed-hq Bot commented Jul 7, 2026

Copy link
Copy Markdown

Merging this PR will improve performance by 33.82%

⚠️ Different runtime environments detected

Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.

Open the report in CodSpeed to investigate

⚡ 17 improved benchmarks
❌ 4 regressed benchmarks
✅ 1578 untouched benchmarks
🆕 163 new benchmarks
⏩ 62 skipped benchmarks1

Warning

Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Mode Benchmark BASE HEAD Efficiency
Simulation copy_nullable[65536] 573.2 µs 1,028.1 µs -44.25%
Simulation slice_empty_vortex 310.3 ns 368.6 ns -15.83%
Simulation copy_non_nullable[65536] 794.2 µs 908.8 µs -12.61%
Simulation chunked_varbinview_opt_canonical_into[(100, 100)] 305.7 µs 341.7 µs -10.53%
Simulation struct_large 428.9 µs 36.8 µs ×12
Simulation varbinview_large 390.3 µs 173.5 µs ×2.2
Simulation list_i32_large 213.7 µs 109.4 µs +95.41%
Simulation extend_from_array_non_zctl_overlapping[(1000, 32)] 896.5 µs 507.6 µs +76.62%
Simulation extend_from_array_non_zctl_overlapping[(10000, 8)] 2.5 ms 1.8 ms +40.59%
Simulation extend_from_array_zctl[(1000, 64)] 1,200.6 µs 895.4 µs +34.09%
Simulation bitwise_not_vortex_buffer_mut[128] 273.6 ns 215.3 ns +27.1%
Simulation i32_small 47.9 µs 38 µs +26.09%
Simulation rebuild_naive 91.7 µs 74.1 µs +23.71%
Simulation chunked_varbinview_canonical_into[(1000, 10)] 191 µs 154.7 µs +23.43%
Simulation i32_large 276.4 µs 227 µs +21.72%
Simulation bitwise_not_vortex_buffer_mut[1024] 333.9 ns 275.6 ns +21.17%
Simulation i32_small_overlapping 44.7 µs 37 µs +20.97%
Simulation extend_from_array_non_zctl_overlapping[(1000, 8)] 436.6 µs 372.5 µs +17.22%
Simulation bitwise_not_vortex_buffer_mut[2048] 427.8 ns 369.4 ns +15.79%
Simulation struct_small 43.5 µs 39.3 µs +10.82%
... ... ... ... ... ...

ℹ️ Only the first 20 benchmarks are displayed. Go to the app to view all benchmarks.

Tip

Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.


Comparing codex/take-slices-fsl (868d30b) with develop (24ad8fd)2

Open in CodSpeed

Footnotes

  1. 62 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

  2. No successful run was found on develop (1bcaf3f) during the generation of this report, so 24ad8fd was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

@danking danking force-pushed the codex/take-slices-fsl branch 4 times, most recently from 0908aec to a039028 Compare July 7, 2026 18:12
@danking danking added the changelog/performance A performance improvement label Jul 7, 2026
@danking danking force-pushed the codex/take-slices-fsl branch from a039028 to 949cfcb Compare July 7, 2026 20:00
@danking danking marked this pull request as ready for review July 7, 2026 21:06
@danking danking requested review from gatesn and robert3005 July 8, 2026 14:46
@danking danking added the action/benchmark Trigger full benchmarks to run on this PR label Jul 9, 2026
@github-actions github-actions Bot removed the action/benchmark Trigger full benchmarks to run on this PR label Jul 9, 2026
@danking

danking commented Jul 9, 2026

Copy link
Copy Markdown
Contributor Author

@claude @codex please review.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Claude finished @danking's task in 4m 27s —— View job


PR Review: Add TakeSlices for fixed-size-list take

I reviewed the new TakeSlices encoding, the FSL take routing, the ListView rebuild fast path, the primitive kernel, and the validity plumbing. Overall this is a well-structured change with strong test coverage. The core "gather of contiguous runs" model is sound, selector validation is thorough, and the case-splitting in FSL take follows the repo's "dispatch to named helpers" guideline nicely. I found no correctness bugs — a few notes and questions below.

  • Read PR diff & changed files
  • Review TakeSlices array/vtable/rules
  • Review FSL take routing
  • Review ListView rebuild fast path
  • Review primitive kernel & validity
  • Check test coverage
  • Post findings

Correctness — verified, no bugs found

Null-row bounds safety in ListView rebuild is correct (worth calling out). In rebuild_with_take_slices (listview/rebuild.rs:149), null rows zero their sizes (→ length-0 runs) but pass the original, unmodified offset as the run start. A length-0 run makes selector_slices_typed check end = start + 0 = offset <= child_len. This is only safe because ListViewData::validate (listview/array.rs:731) enforces offset[i] + size[i] <= elements_len for all rows including null ones, so offset <= elements_len always holds. Good — but this now depends on that invariant for well-formedness, so it's load-bearing. A one-line comment at rebuild.rs:184 noting "null-row offset is in bounds by the ListView offset invariant" would help the next reader (and defend against a future new_unchecked caller that violates it).

Run splitting in project_slices preserves semantics. Composing TakeSlices(TakeSlices(child)) can split one outer run across multiple inner runs, increasing the row count while preserving the concatenation. Since output length is the sum of run lengths (not row count), this is correct, and the take_slices_of_take_slices_projects_to_original_child test confirms it.

Zero-length run handling is consistent across paths. selector_slices drops zero-length runs, while Validity::take_slices / the lazy validity path use the raw selectors — both yield the same logical length because empty runs contribute nothing. values and validity therefore stay aligned. Nice.

Notes / questions (non-blocking)

  1. scalar_at is O(num_runs) per call (take_slices/vtable.rs:198). Each call re-runs selector_slices (which executes both selector arrays and allocates a Vec) and then linearly scans runs to locate the logical index. For a transient node executed in bulk this is fine, but sequential scalar iteration over a TakeSlices would be O(num_runs · accesses) — the exact "hidden-cost accessor" pattern CLAUDE.md warns about. Worth a doc note that callers should execute in bulk rather than scalar-iterate. Fix this →

  2. TakeSlices is intentionally non-serializable (vtable.rs:155/:162 both vortex_bail!). FSL take and ListView rebuild now return arrays whose element child is a lazy TakeSlices (e.g. take.rs:308). Can you confirm every serialization/IPC path canonicalizes or executes before writing, so a lazy TakeSlices can never reach serialize? If there's any path that persists a child array without executing it, this would surface as a runtime bail. A test that round-trips an FSL-take result through the file writer would lock this down.

  3. Signed indices reinterpreted to unsigned (fixed_size_list/compute/take.rs:56). The comment says "values are unchanged", but a negative signed index becomes a large unsigned value that then fails check_index_in_bounds with an out-of-bounds error rather than a "negative index" error. Behavior is acceptable (negative take indices are invalid), but the comment is slightly misleading for the negative case — consider rewording to "bit-identical reinterpret; negative inputs become large unsigned and are rejected by the bounds check."

  4. Minor redundancy / cheap cleanup:

    • primitive_selector_slices (take_slices/mod.rs:174) re-checks starts.len() == lengths.len(), already validated by check_selector_arrays at :145. Harmless.
    • rebuild_with_take_slices calls self.validity()? three times (:172, :193, :205). It's a cheap clone, but hoisting once would be marginally cleaner.
    • Primitive::take_slices recomputes the output len by folding over slices (take_slices.rs:29) even though selector_output_len already encodes this logic; not worth refactoring, just noting the duplication.

Tests

Coverage is strong: order/duplicates/overlap, nullable child validity, lazy scalar+validity, single-run reduction, size-1 repeat, all-invalid, empty runs, empty child, invalid-run rejection, nested TakeSlices projection, generic (non-primitive) fallback, and the primitive execute kernel. FSL take adds nullable, degenerate (list_size==0), and empty-source cases. This matches the branching in the implementation well.

One suggestion: add an explicit test for nullable indices over a non-nullable FSL array (null index → null output row, output dtype becomes nullable) if not already covered in fixed_size_list/tests/take.rs — that's the one interaction where output nullability is derived from indices rather than the array.

Performance

The reported CodSpeed regressions (slice_empty_vortex -15.8%, chunked_varbinview_opt_canonical_into -10.6%) touch vortex-buffer slicing and varbinview canonicalization — neither is on any path this PR changes, so they read as measurement noise rather than a real regression. The take_fsl_* numbers in the PR body (up to ~69× over per-index) are the meaningful result and match the design.

Verification I did not run

This is a read-only review; I did not run cargo build/nextest/clippy locally. The PR body lists those as passing.
· branch codex/take-slices-fsl

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Polar Signals Profiling Results

Latest Run

Status Commit Job Attempt Link
🟢 Done f80606e 1 Explore Profiling Data

Powered by Polar Signals Cloud

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. What shall we delve into next?

Reviewed commit: f80606e18b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: PolarSignals Profiling

Vortex (geomean): 0.067x ✅

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (0.067x ✅, 10↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
polarsignals_q00/datafusion:vortex-file-compressed 🚀 1749059 117676222 0.01
polarsignals_q01/datafusion:vortex-file-compressed 🚀 1679909 262525559 0.01
polarsignals_q02/datafusion:vortex-file-compressed 🚀 2593595 23748176 0.11
polarsignals_q03/datafusion:vortex-file-compressed 🚀 4153447 280137920 0.01
polarsignals_q04/datafusion:vortex-file-compressed 🚀 4409649 9490204 0.46
polarsignals_q05/datafusion:vortex-file-compressed 🚀 4476876 15002593 0.30
polarsignals_q06/datafusion:vortex-file-compressed 🚀 3914126 19730723 0.20
polarsignals_q07/datafusion:vortex-file-compressed 🚀 3946203 13874950 0.28
polarsignals_q08/datafusion:vortex-file-compressed 🚀 3003679 390159645 0.01
polarsignals_q09/datafusion:vortex-file-compressed 🚀 2455022 11929016 0.21

File Size Changes (1 files changed, -100.0% overall, 0↑ 1↓)
File Scale Format Base HEAD Change %
stacktraces.vortex 1000000 vortex-file-compressed 685.83 MB 21.23 KB 685.81 MB -100.0%

Totals:

  • vortex-file-compressed: 685.83 MB → 21.23 KB (-100.0%)

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: TPC-H SF=1 on NVME

Verdict: No clear signal (environment too noisy confidence)
Attributed Vortex impact: +0.5%
Engines: DataFusion No clear signal (+1.8%, environment too noisy confidence) · DuckDB No clear signal (-0.8%, environment too noisy confidence)
Vortex (geomean): 1.010x ➖
Parquet (geomean): 1.002x ➖
Shifts: Parquet (control) +0.2% · Median polish +0.2%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (1.023x ➖, 0↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:vortex-file-compressed 49713814 50052817 0.99
tpch_q02/datafusion:vortex-file-compressed 22593601 22719818 0.99
tpch_q03/datafusion:vortex-file-compressed 30146638 29759008 1.01
tpch_q04/datafusion:vortex-file-compressed 19830408 19179285 1.03
tpch_q05/datafusion:vortex-file-compressed 45734140 46311171 0.99
tpch_q06/datafusion:vortex-file-compressed 9938061 9793446 1.01
tpch_q07/datafusion:vortex-file-compressed 53865388 51821105 1.04
tpch_q08/datafusion:vortex-file-compressed 38430713 38276003 1.00
tpch_q09/datafusion:vortex-file-compressed 51609791 51024027 1.01
tpch_q10/datafusion:vortex-file-compressed 31984594 32056112 1.00
tpch_q11/datafusion:vortex-file-compressed 16458276 16524182 1.00
tpch_q12/datafusion:vortex-file-compressed 23300878 23470318 0.99
tpch_q13/datafusion:vortex-file-compressed 27183139 27088831 1.00
tpch_q14/datafusion:vortex-file-compressed 14641216 14691175 1.00
tpch_q15/datafusion:vortex-file-compressed 22732478 21946008 1.04
tpch_q16/datafusion:vortex-file-compressed 19227233 19100390 1.01
tpch_q17/datafusion:vortex-file-compressed 63759708 64505483 0.99
tpch_q18/datafusion:vortex-file-compressed 73130569 76188075 0.96
tpch_q19/datafusion:vortex-file-compressed 🚨 29266295 18432579 1.59
tpch_q20/datafusion:vortex-file-compressed 29473662 30045720 0.98
tpch_q21/datafusion:vortex-file-compressed 69656260 69317970 1.00
tpch_q22/datafusion:vortex-file-compressed 11669685 11875769 0.98
datafusion / vortex-compact (1.017x ➖, 0↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:vortex-compact 61933063 57799182 1.07
tpch_q02/datafusion:vortex-compact 25321991 25480327 0.99
tpch_q03/datafusion:vortex-compact 32849610 33843645 0.97
tpch_q04/datafusion:vortex-compact 23459762 22656359 1.04
tpch_q05/datafusion:vortex-compact 49186119 49251700 1.00
tpch_q06/datafusion:vortex-compact 12388282 12383733 1.00
tpch_q07/datafusion:vortex-compact 56133835 55539518 1.01
tpch_q08/datafusion:vortex-compact 42877895 42786214 1.00
tpch_q09/datafusion:vortex-compact 55189267 54149964 1.02
tpch_q10/datafusion:vortex-compact 38222503 37671656 1.01
tpch_q11/datafusion:vortex-compact 17375065 17346742 1.00
tpch_q12/datafusion:vortex-compact 30706176 30822394 1.00
tpch_q13/datafusion:vortex-compact 30933470 31879167 0.97
tpch_q14/datafusion:vortex-compact 18630801 18142331 1.03
tpch_q15/datafusion:vortex-compact 29747906 29931089 0.99
tpch_q16/datafusion:vortex-compact 22991681 22807495 1.01
tpch_q17/datafusion:vortex-compact 66506947 67034685 0.99
tpch_q18/datafusion:vortex-compact 78714963 77350253 1.02
tpch_q19/datafusion:vortex-compact 🚨 47287562 38088315 1.24
tpch_q20/datafusion:vortex-compact 34301635 33849392 1.01
tpch_q21/datafusion:vortex-compact 78035453 77714901 1.00
tpch_q22/datafusion:vortex-compact 13136223 13031058 1.01
datafusion / parquet (0.996x ➖, 1↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:parquet 🚀 119226033 136754968 0.87
tpch_q02/datafusion:parquet 59886201 60085480 1.00
tpch_q03/datafusion:parquet 75503109 81838165 0.92
tpch_q04/datafusion:parquet 46912139 44160096 1.06
tpch_q05/datafusion:parquet 96140293 93038794 1.03
tpch_q06/datafusion:parquet 43154538 42747784 1.01
tpch_q07/datafusion:parquet 107718029 104607690 1.03
tpch_q08/datafusion:parquet 95381670 94628948 1.01
tpch_q09/datafusion:parquet 121338573 127378160 0.95
tpch_q10/datafusion:parquet 118488502 118263263 1.00
tpch_q11/datafusion:parquet 40476243 39712241 1.02
tpch_q12/datafusion:parquet 🚨 85886881 74862376 1.15
tpch_q13/datafusion:parquet 191295898 187175887 1.02
tpch_q14/datafusion:parquet 42541825 46570476 0.91
tpch_q15/datafusion:parquet 57522828 58933705 0.98
tpch_q16/datafusion:parquet 41838828 41563513 1.01
tpch_q17/datafusion:parquet 128149726 139112292 0.92
tpch_q18/datafusion:parquet 156954558 151714642 1.03
tpch_q19/datafusion:parquet 78673097 77898489 1.01
tpch_q20/datafusion:parquet 72103553 72053091 1.00
tpch_q21/datafusion:parquet 141378686 141339218 1.00
tpch_q22/datafusion:parquet 44172040 43737732 1.01
datafusion / arrow (1.004x ➖, 0↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:arrow 63139436 60306222 1.05
tpch_q02/datafusion:arrow 16673653 17360144 0.96
tpch_q03/datafusion:arrow 31665741 32162098 0.98
tpch_q04/datafusion:arrow 26147099 25933749 1.01
tpch_q05/datafusion:arrow 56214393 55029600 1.02
tpch_q06/datafusion:arrow 🚨 23321727 20970602 1.11
tpch_q07/datafusion:arrow 106617309 104198071 1.02
tpch_q08/datafusion:arrow 43348135 41588719 1.04
tpch_q09/datafusion:arrow 64510789 64047187 1.01
tpch_q10/datafusion:arrow 49276209 50967562 0.97
tpch_q11/datafusion:arrow 8970363 9254441 0.97
tpch_q12/datafusion:arrow 50412207 49199952 1.02
tpch_q13/datafusion:arrow 44944897 45060776 1.00
tpch_q14/datafusion:arrow 22547684 23352772 0.97
tpch_q15/datafusion:arrow 44885491 45296242 0.99
tpch_q16/datafusion:arrow 16189987 16312531 0.99
tpch_q17/datafusion:arrow 65463538 65561167 1.00
tpch_q18/datafusion:arrow 105766809 105765301 1.00
tpch_q19/datafusion:arrow 37330471 36936955 1.01
tpch_q20/datafusion:arrow 36074954 35733923 1.01
tpch_q21/datafusion:arrow 151567755 154320983 0.98
tpch_q22/datafusion:arrow 11937344 12165395 0.98
duckdb / vortex-file-compressed (1.000x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:vortex-file-compressed 27482197 28182152 0.98
tpch_q02/duckdb:vortex-file-compressed 24936256 24872187 1.00
tpch_q03/duckdb:vortex-file-compressed 31802541 30994805 1.03
tpch_q04/duckdb:vortex-file-compressed 27193208 27211801 1.00
tpch_q05/duckdb:vortex-file-compressed 34662492 34894560 0.99
tpch_q06/duckdb:vortex-file-compressed 7958409 8074222 0.99
tpch_q07/duckdb:vortex-file-compressed 33451096 32906136 1.02
tpch_q08/duckdb:vortex-file-compressed 38565791 38122930 1.01
tpch_q09/duckdb:vortex-file-compressed 54559868 55939992 0.98
tpch_q10/duckdb:vortex-file-compressed 41150408 40326705 1.02
tpch_q11/duckdb:vortex-file-compressed 13498541 13303160 1.01
tpch_q12/duckdb:vortex-file-compressed 22614240 22454623 1.01
tpch_q13/duckdb:vortex-file-compressed 39795608 39759452 1.00
tpch_q14/duckdb:vortex-file-compressed 19615562 19825092 0.99
tpch_q15/duckdb:vortex-file-compressed 16173876 16235756 1.00
tpch_q16/duckdb:vortex-file-compressed 26960309 26873056 1.00
tpch_q17/duckdb:vortex-file-compressed 22990786 22820542 1.01
tpch_q18/duckdb:vortex-file-compressed 50497288 51187782 0.99
tpch_q19/duckdb:vortex-file-compressed 25175656 26444591 0.95
tpch_q20/duckdb:vortex-file-compressed 30435836 30716921 0.99
tpch_q21/duckdb:vortex-file-compressed 97768858 97065189 1.01
tpch_q22/duckdb:vortex-file-compressed 16879560 16214028 1.04
duckdb / vortex-compact (1.002x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:vortex-compact 36967011 38008843 0.97
tpch_q02/duckdb:vortex-compact 30296064 30543579 0.99
tpch_q03/duckdb:vortex-compact 34137296 34757209 0.98
tpch_q04/duckdb:vortex-compact 33942481 33982912 1.00
tpch_q05/duckdb:vortex-compact 39570737 38558864 1.03
tpch_q06/duckdb:vortex-compact 10321625 10329029 1.00
tpch_q07/duckdb:vortex-compact 42274390 41771143 1.01
tpch_q08/duckdb:vortex-compact 45446890 45812891 0.99
tpch_q09/duckdb:vortex-compact 65866685 64808687 1.02
tpch_q10/duckdb:vortex-compact 47221819 47024136 1.00
tpch_q11/duckdb:vortex-compact 15678284 15168198 1.03
tpch_q12/duckdb:vortex-compact 32035196 31098605 1.03
tpch_q13/duckdb:vortex-compact 44654895 45166400 0.99
tpch_q14/duckdb:vortex-compact 23084061 23168372 1.00
tpch_q15/duckdb:vortex-compact 19146308 19573254 0.98
tpch_q16/duckdb:vortex-compact 28834830 28445187 1.01
tpch_q17/duckdb:vortex-compact 27594927 26884279 1.03
tpch_q18/duckdb:vortex-compact 57388750 58188186 0.99
tpch_q19/duckdb:vortex-compact 28784861 28972073 0.99
tpch_q20/duckdb:vortex-compact 36781936 36346103 1.01
tpch_q21/duckdb:vortex-compact 110062719 111073313 0.99
tpch_q22/duckdb:vortex-compact 16644904 16592671 1.00
duckdb / parquet (1.008x ➖, 1↑ 2↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:parquet 76798557 78334947 0.98
tpch_q02/duckdb:parquet 38946997 38832889 1.00
tpch_q03/duckdb:parquet 70252015 72031920 0.98
tpch_q04/duckdb:parquet 49246986 49497129 0.99
tpch_q05/duckdb:parquet 67300607 67483788 1.00
tpch_q06/duckdb:parquet 22403065 22482982 1.00
tpch_q07/duckdb:parquet 🚨 83761093 69025412 1.21
tpch_q08/duckdb:parquet 82165205 82365574 1.00
tpch_q09/duckdb:parquet 155682301 145597915 1.07
tpch_q10/duckdb:parquet 125552447 137516657 0.91
tpch_q11/duckdb:parquet 22159639 22151718 1.00
tpch_q12/duckdb:parquet 🚨 57681593 46692945 1.24
tpch_q13/duckdb:parquet 247128567 251981422 0.98
tpch_q14/duckdb:parquet 51900227 50416385 1.03
tpch_q15/duckdb:parquet 🚀 25990491 29270840 0.89
tpch_q16/duckdb:parquet 57962875 57608394 1.01
tpch_q17/duckdb:parquet 61890624 61390657 1.01
tpch_q18/duckdb:parquet 119103768 119713468 0.99
tpch_q19/duckdb:parquet 80510682 86347381 0.93
tpch_q20/duckdb:parquet 65352358 65249599 1.00
tpch_q21/duckdb:parquet 171562520 169241908 1.01
tpch_q22/duckdb:parquet 54182000 53430888 1.01
duckdb / duckdb (0.999x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:duckdb 17795300 17520509 1.02
tpch_q02/duckdb:duckdb 14197463 14085609 1.01
tpch_q03/duckdb:duckdb 21953187 22003385 1.00
tpch_q04/duckdb:duckdb 22108000 22722031 0.97
tpch_q05/duckdb:duckdb 23267383 22943750 1.01
tpch_q06/duckdb:duckdb 6980318 6970528 1.00
tpch_q07/duckdb:duckdb 25195037 25270243 1.00
tpch_q08/duckdb:duckdb 24172350 24052237 1.00
tpch_q09/duckdb:duckdb 56311554 55912924 1.01
tpch_q10/duckdb:duckdb 51525912 50155756 1.03
tpch_q11/duckdb:duckdb 6986552 7135979 0.98
tpch_q12/duckdb:duckdb 18393660 17914435 1.03
tpch_q13/duckdb:duckdb 39090695 39875625 0.98
tpch_q14/duckdb:duckdb 21293389 21411529 0.99
tpch_q15/duckdb:duckdb 13448854 13849922 0.97
tpch_q16/duckdb:duckdb 26025232 26040523 1.00
tpch_q17/duckdb:duckdb 16216593 16428868 0.99
tpch_q18/duckdb:duckdb 40390580 40463543 1.00
tpch_q19/duckdb:duckdb 31032894 30889811 1.00
tpch_q20/duckdb:duckdb 25231695 25185632 1.00
tpch_q21/duckdb:duckdb 60552818 60863055 0.99
tpch_q22/duckdb:duckdb 25634212 25465679 1.01

File Size Changes (10 files changed, -0.1% overall, 6↑ 4↓)
File Scale Format Base HEAD Change %
part_0.vortex 1.0 vortex-compact 3.35 MB 3.45 MB +103.37 KB +3.0%
supplier_0.vortex 1.0 vortex-file-compressed 604.23 KB 610.05 KB +5.81 KB +1.0%
customer_0.vortex 1.0 vortex-file-compressed 8.88 MB 8.89 MB +10.79 KB +0.1%
partsupp_0.vortex 1.0 vortex-file-compressed 23.67 MB 23.69 MB +17.47 KB +0.1%
part_0.vortex 1.0 vortex-file-compressed 4.98 MB 4.98 MB +1.32 KB +0.0%
orders_0.vortex 1.0 vortex-file-compressed 35.13 MB 35.14 MB +7.07 KB +0.0%
lineitem_1.vortex 1.0 vortex-file-compressed 82.04 MB 82.02 MB 20.08 KB -0.0%
lineitem_0.vortex 1.0 vortex-file-compressed 82.29 MB 82.19 MB 96.42 KB -0.1%
partsupp_0.vortex 1.0 vortex-compact 20.93 MB 20.84 MB 94.83 KB -0.4%
orders_0.vortex 1.0 vortex-compact 32.20 MB 31.73 MB 482.26 KB -1.5%

Totals:

  • vortex-compact: 190.71 MB → 190.24 MB (-0.2%)
  • vortex-file-compressed: 237.86 MB → 237.79 MB (-0.0%)

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: FineWeb NVMe

Verdict: No clear signal (low confidence)
Attributed Vortex impact: -0.8%
Engines: DataFusion No clear signal (-0.5%, low confidence) · DuckDB No clear signal (-1.0%, low confidence)
Vortex (geomean): 0.996x ➖
Parquet (geomean): 1.004x ➖
Shifts: Parquet (control) +0.4% · Median polish +0.3%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (0.993x ➖, 1↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/datafusion:vortex-file-compressed 4997959 5151779 0.97
fineweb_q01/datafusion:vortex-file-compressed 34701654 35171713 0.99
fineweb_q02/datafusion:vortex-file-compressed 🚨 43662273 39438591 1.11
fineweb_q03/datafusion:vortex-file-compressed 🚀 57972158 69032098 0.84
fineweb_q04/datafusion:vortex-file-compressed 276426359 273116570 1.01
fineweb_q05/datafusion:vortex-file-compressed 221595420 218566518 1.01
fineweb_q06/datafusion:vortex-file-compressed 54458430 51013364 1.07
fineweb_q07/datafusion:vortex-file-compressed 53818697 56703240 0.95
fineweb_q08/datafusion:vortex-file-compressed 22420983 22058727 1.02
datafusion / vortex-compact (1.001x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/datafusion:vortex-compact 5262561 5746799 0.92
fineweb_q01/datafusion:vortex-compact 107433013 99102287 1.08
fineweb_q02/datafusion:vortex-compact 102729958 104381389 0.98
fineweb_q03/datafusion:vortex-compact 851757744 868192244 0.98
fineweb_q04/datafusion:vortex-compact 905967460 904233188 1.00
fineweb_q05/datafusion:vortex-compact 814085272 806223973 1.01
fineweb_q06/datafusion:vortex-compact 459467768 454339623 1.01
fineweb_q07/datafusion:vortex-compact 484139387 477847133 1.01
fineweb_q08/datafusion:vortex-compact 21165470 20863030 1.01
datafusion / parquet (1.002x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/datafusion:parquet 6725181 7235661 0.93
fineweb_q01/datafusion:parquet 291055275 295980867 0.98
fineweb_q02/datafusion:parquet 299423000 289386439 1.03
fineweb_q03/datafusion:parquet 294743226 277973861 1.06
fineweb_q04/datafusion:parquet 310919425 305825903 1.02
fineweb_q05/datafusion:parquet 303456718 303544205 1.00
fineweb_q06/datafusion:parquet 284278753 289773929 0.98
fineweb_q07/datafusion:parquet 284376494 279152073 1.02
fineweb_q08/datafusion:parquet 278391787 278614151 1.00
duckdb / vortex-file-compressed (1.000x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/duckdb:vortex-file-compressed 3340832 3176264 1.05
fineweb_q01/duckdb:vortex-file-compressed 33805051 33950062 1.00
fineweb_q02/duckdb:vortex-file-compressed 38876251 40800351 0.95
fineweb_q03/duckdb:vortex-file-compressed 113476023 112012854 1.01
fineweb_q04/duckdb:vortex-file-compressed 270247365 267183664 1.01
fineweb_q05/duckdb:vortex-file-compressed 215550022 219148574 0.98
fineweb_q06/duckdb:vortex-file-compressed 51729546 51727530 1.00
fineweb_q07/duckdb:vortex-file-compressed 54702409 56914361 0.96
fineweb_q08/duckdb:vortex-file-compressed 21272066 20576511 1.03
duckdb / vortex-compact (0.990x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/duckdb:vortex-compact 3040580 3088505 0.98
fineweb_q01/duckdb:vortex-compact 103717011 114792337 0.90
fineweb_q02/duckdb:vortex-compact 112627092 109199979 1.03
fineweb_q03/duckdb:vortex-compact 847945950 847865939 1.00
fineweb_q04/duckdb:vortex-compact 900912127 901870735 1.00
fineweb_q05/duckdb:vortex-compact 807281806 803305254 1.00
fineweb_q06/duckdb:vortex-compact 458616777 454438949 1.01
fineweb_q07/duckdb:vortex-compact 485134542 480414254 1.01
fineweb_q08/duckdb:vortex-compact 20307677 20904019 0.97
duckdb / parquet (1.005x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/duckdb:parquet 32180725 31487332 1.02
fineweb_q01/duckdb:parquet 84021944 85041768 0.99
fineweb_q02/duckdb:parquet 85757618 85023066 1.01
fineweb_q03/duckdb:parquet 320154206 317928813 1.01
fineweb_q04/duckdb:parquet 447295151 445753677 1.00
fineweb_q05/duckdb:parquet 414156215 413845922 1.00
fineweb_q06/duckdb:parquet 203625214 204083981 1.00
fineweb_q07/duckdb:parquet 215952030 215772527 1.00
fineweb_q08/duckdb:parquet 33078627 32472660 1.02

File Size Changes (1 files changed, +0.0% overall, 1↑ 0↓)
File Scale Format Base HEAD Change %
sample.vortex 1.0 vortex-file-compressed 1.43 GB 1.43 GB +529.37 KB +0.0%

Totals:

  • vortex-compact: 1.23 GB → 1.23 GB (0.0%)
  • vortex-file-compressed: 1.43 GB → 1.43 GB (+0.0%)

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

🚨🚨🚨❌❌❌ SQL BENCHMARK FAILED ❌❌❌🚨🚨🚨

Benchmark Statistical and Population Genetics (full) failed! Check the workflow run for details.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: TPC-DS SF=1 on NVME

Verdict: No clear signal (low confidence)
Attributed Vortex impact: +0.2%
Engines: DataFusion No clear signal (+0.6%, low confidence) · DuckDB No clear signal (-0.1%, low confidence)
Vortex (geomean): 1.002x ➖
Parquet (geomean): 0.999x ➖
Shifts: Parquet (control) -0.1% · Median polish +0.1%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (1.008x ➖, 0↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpcds_q01/datafusion:vortex-file-compressed 21583132 22471342 0.96
tpcds_q02/datafusion:vortex-file-compressed 43294918 44432618 0.97
tpcds_q03/datafusion:vortex-file-compressed 15566265 14829651 1.05
tpcds_q04/datafusion:vortex-file-compressed 226869618 222568264 1.02
tpcds_q05/datafusion:vortex-file-compressed 42220128 41938142 1.01
tpcds_q06/datafusion:vortex-file-compressed 22999864 23349392 0.99
tpcds_q07/datafusion:vortex-file-compressed 43180565 41358312 1.04
tpcds_q08/datafusion:vortex-file-compressed 30175666 29955847 1.01
tpcds_q09/datafusion:vortex-file-compressed 31822559 31407522 1.01
tpcds_q10/datafusion:vortex-file-compressed 37982071 37233840 1.02
tpcds_q11/datafusion:vortex-file-compressed 126570305 127139415 1.00
tpcds_q12/datafusion:vortex-file-compressed 16987614 17347254 0.98
tpcds_q13/datafusion:vortex-file-compressed 🚨 46846415 40643206 1.15
tpcds_q14/datafusion:vortex-file-compressed 163482929 157779140 1.04
tpcds_q15/datafusion:vortex-file-compressed 25510308 25268438 1.01
tpcds_q16/datafusion:vortex-file-compressed 22935172 24747562 0.93
tpcds_q17/datafusion:vortex-file-compressed 58619087 59079681 0.99
tpcds_q18/datafusion:vortex-file-compressed 58736741 58506173 1.00
tpcds_q19/datafusion:vortex-file-compressed 21779586 22599047 0.96
tpcds_q20/datafusion:vortex-file-compressed 20947265 20354162 1.03
tpcds_q21/datafusion:vortex-file-compressed 36738593 36614062 1.00
tpcds_q22/datafusion:vortex-file-compressed 122547611 120607585 1.02
tpcds_q23/datafusion:vortex-file-compressed 147349093 150651341 0.98
tpcds_q24/datafusion:vortex-file-compressed 84239940 82241384 1.02
tpcds_q25/datafusion:vortex-file-compressed 64358106 60936257 1.06
tpcds_q26/datafusion:vortex-file-compressed 30159561 29725954 1.01
tpcds_q27/datafusion:vortex-file-compressed 90284682 95104478 0.95
tpcds_q28/datafusion:vortex-file-compressed 33858386 33823589 1.00
tpcds_q29/datafusion:vortex-file-compressed 59175872 57439058 1.03
tpcds_q30/datafusion:vortex-file-compressed 23171432 23457827 0.99
tpcds_q31/datafusion:vortex-file-compressed 71507088 69678394 1.03
tpcds_q32/datafusion:vortex-file-compressed 18343706 18091797 1.01
tpcds_q33/datafusion:vortex-file-compressed 29358139 28578430 1.03
tpcds_q34/datafusion:vortex-file-compressed 25797971 25290692 1.02
tpcds_q35/datafusion:vortex-file-compressed 43390976 43591805 1.00
tpcds_q36/datafusion:vortex-file-compressed 57686370 56592774 1.02
tpcds_q37/datafusion:vortex-file-compressed 20935771 20472531 1.02
tpcds_q38/datafusion:vortex-file-compressed 38444711 39930536 0.96
tpcds_q39/datafusion:vortex-file-compressed 108615922 105970050 1.02
tpcds_q40/datafusion:vortex-file-compressed 29671213 30271993 0.98
tpcds_q41/datafusion:vortex-file-compressed 20390311 19873392 1.03
tpcds_q42/datafusion:vortex-file-compressed 13782801 13593559 1.01
tpcds_q43/datafusion:vortex-file-compressed 18348771 18472516 0.99
tpcds_q44/datafusion:vortex-file-compressed 28737023 29306314 0.98
tpcds_q45/datafusion:vortex-file-compressed 25695856 25062922 1.03
tpcds_q46/datafusion:vortex-file-compressed 35031660 34848313 1.01
tpcds_q47/datafusion:vortex-file-compressed 139877177 139555218 1.00
tpcds_q48/datafusion:vortex-file-compressed 35652222 35457547 1.01
tpcds_q49/datafusion:vortex-file-compressed 56310340 57674869 0.98
tpcds_q50/datafusion:vortex-file-compressed 39887297 38493541 1.04
tpcds_q51/datafusion:vortex-file-compressed 88588703 87396050 1.01
tpcds_q52/datafusion:vortex-file-compressed 13663333 14137688 0.97
tpcds_q53/datafusion:vortex-file-compressed 22033993 21538321 1.02
tpcds_q54/datafusion:vortex-file-compressed 33519518 34520066 0.97
tpcds_q55/datafusion:vortex-file-compressed 13820075 13475354 1.03
tpcds_q56/datafusion:vortex-file-compressed 30178223 29593547 1.02
tpcds_q57/datafusion:vortex-file-compressed 92994005 89246407 1.04
tpcds_q58/datafusion:vortex-file-compressed 53039086 54149767 0.98
tpcds_q59/datafusion:vortex-file-compressed 61973358 61965726 1.00
tpcds_q60/datafusion:vortex-file-compressed 28851296 29087688 0.99
tpcds_q61/datafusion:vortex-file-compressed 39852721 40042727 1.00
tpcds_q62/datafusion:vortex-file-compressed 21044502 21499583 0.98
tpcds_q63/datafusion:vortex-file-compressed 22141333 21810050 1.02
tpcds_q64/datafusion:vortex-file-compressed 376025867 385728403 0.97
tpcds_q65/datafusion:vortex-file-compressed 52335627 51931664 1.01
tpcds_q66/datafusion:vortex-file-compressed 67303818 67356557 1.00
tpcds_q67/datafusion:vortex-file-compressed 157188532 152874866 1.03
tpcds_q68/datafusion:vortex-file-compressed 33343772 33192677 1.00
tpcds_q69/datafusion:vortex-file-compressed 35416205 35070356 1.01
tpcds_q70/datafusion:vortex-file-compressed 97874146 95239618 1.03
tpcds_q71/datafusion:vortex-file-compressed 22119809 22008588 1.01
tpcds_q72/datafusion:vortex-file-compressed 2082625786 2075116856 1.00
tpcds_q73/datafusion:vortex-file-compressed 24800499 23138799 1.07
tpcds_q74/datafusion:vortex-file-compressed 80323485 80505163 1.00
tpcds_q75/datafusion:vortex-file-compressed 104312333 104184885 1.00
tpcds_q76/datafusion:vortex-file-compressed 27013965 27134190 1.00
tpcds_q77/datafusion:vortex-file-compressed 36021048 36400027 0.99
tpcds_q78/datafusion:vortex-file-compressed 110799416 109079189 1.02
tpcds_q79/datafusion:vortex-file-compressed 28995894 28429284 1.02
tpcds_q80/datafusion:vortex-file-compressed 85738207 85858950 1.00
tpcds_q81/datafusion:vortex-file-compressed 24008845 23263208 1.03
tpcds_q82/datafusion:vortex-file-compressed 20498570 21707780 0.94
tpcds_q83/datafusion:vortex-file-compressed 34423887 33068831 1.04
tpcds_q84/datafusion:vortex-file-compressed 11893801 12197173 0.98
tpcds_q85/datafusion:vortex-file-compressed 89804364 85294745 1.05
tpcds_q86/datafusion:vortex-file-compressed 14809225 14779694 1.00
tpcds_q87/datafusion:vortex-file-compressed 38614286 38958877 0.99
tpcds_q88/datafusion:vortex-file-compressed 55186934 53711294 1.03
tpcds_q89/datafusion:vortex-file-compressed 26066862 25191380 1.03
tpcds_q90/datafusion:vortex-file-compressed 14354204 13201524 1.09
tpcds_q91/datafusion:vortex-file-compressed 18184384 17944897 1.01
tpcds_q92/datafusion:vortex-file-compressed 15875852 15750531 1.01
tpcds_q93/datafusion:vortex-file-compressed 31568320 31295737 1.01
tpcds_q94/datafusion:vortex-file-compressed 20419241 19967424 1.02
tpcds_q95/datafusion:vortex-file-compressed 54838048 54511086 1.01
tpcds_q96/datafusion:vortex-file-compressed 13122687 13339859 0.98
tpcds_q97/datafusion:vortex-file-compressed 29392198 29125318 1.01
tpcds_q98/datafusion:vortex-file-compressed 24244155 23690136 1.02
tpcds_q99/datafusion:vortex-file-compressed 25710719 25631504 1.00
datafusion / vortex-compact (1.000x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpcds_q01/datafusion:vortex-compact 23439005 22154856 1.06
tpcds_q02/datafusion:vortex-compact 48871744 49588441 0.99
tpcds_q03/datafusion:vortex-compact 19957887 20538712 0.97
tpcds_q04/datafusion:vortex-compact 265250575 265430596 1.00
tpcds_q05/datafusion:vortex-compact 49042472 49294468 0.99
tpcds_q06/datafusion:vortex-compact 29605813 30823919 0.96
tpcds_q07/datafusion:vortex-compact 57382929 55828930 1.03
tpcds_q08/datafusion:vortex-compact 38736352 39022509 0.99
tpcds_q09/datafusion:vortex-compact 43239515 43813138 0.99
tpcds_q10/datafusion:vortex-compact 53750514 52967153 1.01
tpcds_q11/datafusion:vortex-compact 158413039 155237205 1.02
tpcds_q12/datafusion:vortex-compact 22380241 22182234 1.01
tpcds_q13/datafusion:vortex-compact 112979714 115428463 0.98
tpcds_q14/datafusion:vortex-compact 181688467 183087183 0.99
tpcds_q15/datafusion:vortex-compact 28245587 28420943 0.99
tpcds_q16/datafusion:vortex-compact 29774470 30545354 0.97
tpcds_q17/datafusion:vortex-compact 78287739 80921050 0.97
tpcds_q18/datafusion:vortex-compact 68828941 67580710 1.02
tpcds_q19/datafusion:vortex-compact 34506615 35106349 0.98
tpcds_q20/datafusion:vortex-compact 23828595 25570044 0.93
tpcds_q21/datafusion:vortex-compact 39759222 39724623 1.00
tpcds_q22/datafusion:vortex-compact 136417482 146935825 0.93
tpcds_q23/datafusion:vortex-compact 175908967 179977415 0.98
tpcds_q24/datafusion:vortex-compact 105050606 106222631 0.99
tpcds_q25/datafusion:vortex-compact 84068936 82185477 1.02
tpcds_q26/datafusion:vortex-compact 37327564 39731646 0.94
tpcds_q27/datafusion:vortex-compact 126353907 123031909 1.03
tpcds_q28/datafusion:vortex-compact 81580130 79763758 1.02
tpcds_q29/datafusion:vortex-compact 76560601 78220232 0.98
tpcds_q30/datafusion:vortex-compact 26818143 26970880 0.99
tpcds_q31/datafusion:vortex-compact 105441834 104987791 1.00
tpcds_q32/datafusion:vortex-compact 22291854 21864779 1.02
tpcds_q33/datafusion:vortex-compact 39470467 39971210 0.99
tpcds_q34/datafusion:vortex-compact 46027933 42920108 1.07
tpcds_q35/datafusion:vortex-compact 56845405 56659017 1.00
tpcds_q36/datafusion:vortex-compact 79691376 78183182 1.02
tpcds_q37/datafusion:vortex-compact 28307806 27894003 1.01
tpcds_q38/datafusion:vortex-compact 53940036 51836563 1.04
tpcds_q39/datafusion:vortex-compact 114225087 114434096 1.00
tpcds_q40/datafusion:vortex-compact 32144643 31667319 1.02
tpcds_q41/datafusion:vortex-compact 22367875 21496453 1.04
tpcds_q42/datafusion:vortex-compact 19602896 18814613 1.04
tpcds_q43/datafusion:vortex-compact 27477712 28358618 0.97
tpcds_q44/datafusion:vortex-compact 47256292 45478736 1.04
tpcds_q45/datafusion:vortex-compact 29836894 29445060 1.01
tpcds_q46/datafusion:vortex-compact 54953883 55645707 0.99
tpcds_q47/datafusion:vortex-compact 164559957 160411406 1.03
tpcds_q48/datafusion:vortex-compact 80923542 82852233 0.98
tpcds_q49/datafusion:vortex-compact 70416403 72877445 0.97
tpcds_q50/datafusion:vortex-compact 52543014 53201730 0.99
tpcds_q51/datafusion:vortex-compact 94763592 94597361 1.00
tpcds_q52/datafusion:vortex-compact 20270842 19176205 1.06
tpcds_q53/datafusion:vortex-compact 32104519 31550008 1.02
tpcds_q54/datafusion:vortex-compact 46292552 45602626 1.02
tpcds_q55/datafusion:vortex-compact 18767456 18844708 1.00
tpcds_q56/datafusion:vortex-compact 40657437 41800329 0.97
tpcds_q57/datafusion:vortex-compact 98156735 99812039 0.98
tpcds_q58/datafusion:vortex-compact 60646331 60496611 1.00
tpcds_q59/datafusion:vortex-compact 75460084 77568417 0.97
tpcds_q60/datafusion:vortex-compact 39710343 39222046 1.01
tpcds_q61/datafusion:vortex-compact 60003818 59206964 1.01
tpcds_q62/datafusion:vortex-compact 23909258 24252955 0.99
tpcds_q63/datafusion:vortex-compact 32073523 31936314 1.00
tpcds_q64/datafusion:vortex-compact 454367452 433231509 1.05
tpcds_q65/datafusion:vortex-compact 68846540 69802095 0.99
tpcds_q66/datafusion:vortex-compact 73093745 74901514 0.98
tpcds_q67/datafusion:vortex-compact 165528969 162383803 1.02
tpcds_q68/datafusion:vortex-compact 55530145 54411739 1.02
tpcds_q69/datafusion:vortex-compact 50993787 50514192 1.01
tpcds_q70/datafusion:vortex-compact 110981105 116789389 0.95
tpcds_q71/datafusion:vortex-compact 34642350 32959237 1.05
tpcds_q72/datafusion:vortex-compact 2106695832 2082072423 1.01
tpcds_q73/datafusion:vortex-compact 41551609 41857449 0.99
tpcds_q74/datafusion:vortex-compact 95897570 97106668 0.99
tpcds_q75/datafusion:vortex-compact 132936316 128951334 1.03
tpcds_q76/datafusion:vortex-compact 36385318 36676193 0.99
tpcds_q77/datafusion:vortex-compact 49217856 49262770 1.00
tpcds_q78/datafusion:vortex-compact 127547161 126323985 1.01
tpcds_q79/datafusion:vortex-compact 49265518 50289247 0.98
tpcds_q80/datafusion:vortex-compact 102662532 101701912 1.01
tpcds_q81/datafusion:vortex-compact 27092733 25967356 1.04
tpcds_q82/datafusion:vortex-compact 29407262 28435943 1.03
tpcds_q83/datafusion:vortex-compact 33820972 35416252 0.95
tpcds_q84/datafusion:vortex-compact 14112458 14354479 0.98
tpcds_q85/datafusion:vortex-compact 127149895 123591974 1.03
tpcds_q86/datafusion:vortex-compact 17390348 17444292 1.00
tpcds_q87/datafusion:vortex-compact 52917133 56003465 0.94
tpcds_q88/datafusion:vortex-compact 119740897 115616625 1.04
tpcds_q89/datafusion:vortex-compact 33646687 34175127 0.98
tpcds_q90/datafusion:vortex-compact 15290495 16237854 0.94
tpcds_q91/datafusion:vortex-compact 30061689 30119043 1.00
tpcds_q92/datafusion:vortex-compact 20903757 19664143 1.06
tpcds_q93/datafusion:vortex-compact 38987958 40726246 0.96
tpcds_q94/datafusion:vortex-compact 25382453 25227538 1.01
tpcds_q95/datafusion:vortex-compact 61001898 62588292 0.97
tpcds_q96/datafusion:vortex-compact 23391191 23903351 0.98
tpcds_q97/datafusion:vortex-compact 37250515 36852404 1.01
tpcds_q98/datafusion:vortex-compact 31762162 32347654 0.98
tpcds_q99/datafusion:vortex-compact 28333285 28029293 1.01
datafusion / parquet (0.998x ➖, 3↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpcds_q01/datafusion:parquet 23357979 24969775 0.94
tpcds_q02/datafusion:parquet 41127482 42500501 0.97
tpcds_q03/datafusion:parquet 13223642 13199298 1.00
tpcds_q04/datafusion:parquet 283429980 295627832 0.96
tpcds_q05/datafusion:parquet 46616444 46440692 1.00
tpcds_q06/datafusion:parquet 22701346 22440237 1.01
tpcds_q07/datafusion:parquet 78225421 76657359 1.02
tpcds_q08/datafusion:parquet 28195120 28607753 0.99
tpcds_q09/datafusion:parquet 38636447 37321418 1.04
tpcds_q10/datafusion:parquet 70817145 69220306 1.02
tpcds_q11/datafusion:parquet 146180475 142482193 1.03
tpcds_q12/datafusion:parquet 17793657 16443873 1.08
tpcds_q13/datafusion:parquet 74256919 74224092 1.00
tpcds_q14/datafusion:parquet 157902964 158484841 1.00
tpcds_q15/datafusion:parquet 20315079 21072032 0.96
tpcds_q16/datafusion:parquet 28077724 29477893 0.95
tpcds_q17/datafusion:parquet 58938564 62921499 0.94
tpcds_q18/datafusion:parquet 106734468 110439363 0.97
tpcds_q19/datafusion:parquet 22854409 22960771 1.00
tpcds_q20/datafusion:parquet 16858276 16924649 1.00
tpcds_q21/datafusion:parquet 18548328 19207126 0.97
tpcds_q22/datafusion:parquet 162772055 149110143 1.09
tpcds_q23/datafusion:parquet 152073105 160392731 0.95
tpcds_q24/datafusion:parquet 87320243 86590885 1.01
tpcds_q25/datafusion:parquet 61245773 61312512 1.00
tpcds_q26/datafusion:parquet 67609680 63956494 1.06
tpcds_q27/datafusion:parquet 136437107 135876650 1.00
tpcds_q28/datafusion:parquet 43938043 44735016 0.98
tpcds_q29/datafusion:parquet 62288860 62710641 0.99
tpcds_q30/datafusion:parquet 32634367 32252616 1.01
tpcds_q31/datafusion:parquet 65818050 65767292 1.00
tpcds_q32/datafusion:parquet 16799199 16128800 1.04
tpcds_q33/datafusion:parquet 26726257 27332843 0.98
tpcds_q34/datafusion:parquet 20604931 21581397 0.95
tpcds_q35/datafusion:parquet 69854287 68683388 1.02
tpcds_q36/datafusion:parquet 57320616 56533827 1.01
tpcds_q37/datafusion:parquet 18658684 19082909 0.98
tpcds_q38/datafusion:parquet 41406108 40089076 1.03
tpcds_q39/datafusion:parquet 73524256 72593032 1.01
tpcds_q40/datafusion:parquet 23105965 23375301 0.99
tpcds_q41/datafusion:parquet 14130149 15507869 0.91
tpcds_q42/datafusion:parquet 11837433 12505602 0.95
tpcds_q43/datafusion:parquet 16629696 16642986 1.00
tpcds_q44/datafusion:parquet 33530989 32194753 1.04
tpcds_q45/datafusion:parquet 27042178 28324323 0.95
tpcds_q46/datafusion:parquet 31680637 31566102 1.00
tpcds_q47/datafusion:parquet 127157807 127810029 0.99
tpcds_q48/datafusion:parquet 67820032 67377443 1.01
tpcds_q49/datafusion:parquet 57904861 55844016 1.04
tpcds_q50/datafusion:parquet 43444832 42183994 1.03
tpcds_q51/datafusion:parquet 86687008 85132097 1.02
tpcds_q52/datafusion:parquet 12277118 11985950 1.02
tpcds_q53/datafusion:parquet 🚨 19789903 17675713 1.12
tpcds_q54/datafusion:parquet 32444192 31962195 1.02
tpcds_q55/datafusion:parquet 11702618 11980218 0.98
tpcds_q56/datafusion:parquet 27592018 28533607 0.97
tpcds_q57/datafusion:parquet 104005246 102260079 1.02
tpcds_q58/datafusion:parquet 55960807 55567106 1.01
tpcds_q59/datafusion:parquet 62734379 61326143 1.02
tpcds_q60/datafusion:parquet 27304514 28993274 0.94
tpcds_q61/datafusion:parquet 42339554 43712694 0.97
tpcds_q62/datafusion:parquet 🚀 20162278 25421128 0.79
tpcds_q63/datafusion:parquet 17722652 18432025 0.96
tpcds_q64/datafusion:parquet 298410106 296149169 1.01
tpcds_q65/datafusion:parquet 37331458 38164093 0.98
tpcds_q66/datafusion:parquet 69764929 65886804 1.06
tpcds_q67/datafusion:parquet 143121725 141981846 1.01
tpcds_q68/datafusion:parquet 31536027 31582006 1.00
tpcds_q69/datafusion:parquet 65871780 66993125 0.98
tpcds_q70/datafusion:parquet 33027088 33404980 0.99
tpcds_q71/datafusion:parquet 22747777 22481647 1.01
tpcds_q72/datafusion:parquet 595300901 577355021 1.03
tpcds_q73/datafusion:parquet 20691829 20559683 1.01
tpcds_q74/datafusion:parquet 85133508 80024103 1.06
tpcds_q75/datafusion:parquet 106761448 102322754 1.04
tpcds_q76/datafusion:parquet 29924278 30294783 0.99
tpcds_q77/datafusion:parquet 38398357 38480086 1.00
tpcds_q78/datafusion:parquet 109342133 108192991 1.01
tpcds_q79/datafusion:parquet 25972961 25734282 1.01
tpcds_q80/datafusion:parquet 74010441 72885721 1.02
tpcds_q81/datafusion:parquet 30850945 30083439 1.03
tpcds_q82/datafusion:parquet 18051703 17955462 1.01
tpcds_q83/datafusion:parquet 41551177 40003268 1.04
tpcds_q84/datafusion:parquet 39316463 39131357 1.00
tpcds_q85/datafusion:parquet 143937807 145118200 0.99
tpcds_q86/datafusion:parquet 🚀 14123324 15830936 0.89
tpcds_q87/datafusion:parquet 42406431 42129581 1.01
tpcds_q88/datafusion:parquet 60668488 61317295 0.99
tpcds_q89/datafusion:parquet 21451119 22537499 0.95
tpcds_q90/datafusion:parquet 14133815 14035639 1.01
tpcds_q91/datafusion:parquet 57234902 55842232 1.02
tpcds_q92/datafusion:parquet 17895273 17523331 1.02
tpcds_q93/datafusion:parquet 30730977 29412019 1.04
tpcds_q94/datafusion:parquet 22080640 21119245 1.05
tpcds_q95/datafusion:parquet 59533844 58796644 1.01
tpcds_q96/datafusion:parquet 12096979 11713837 1.03
tpcds_q97/datafusion:parquet 30499891 30058486 1.01
tpcds_q98/datafusion:parquet 21353064 20800923 1.03
tpcds_q99/datafusion:parquet 🚀 26268486 30043115 0.87
duckdb / vortex-file-compressed (1.000x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpcds_q01/duckdb:vortex-file-compressed 22803587 22104174 1.03
tpcds_q02/duckdb:vortex-file-compressed 21823150 22524513 0.97
tpcds_q03/duckdb:vortex-file-compressed 18784078 19057041 0.99
tpcds_q04/duckdb:vortex-file-compressed 98328349 95737651 1.03
tpcds_q05/duckdb:vortex-file-compressed 35058275 35344699 0.99
tpcds_q06/duckdb:vortex-file-compressed 34092514 34491271 0.99
tpcds_q07/duckdb:vortex-file-compressed 28339674 28406730 1.00
tpcds_q08/duckdb:vortex-file-compressed 26164969 26266538 1.00
tpcds_q09/duckdb:vortex-file-compressed 15895250 16270183 0.98
tpcds_q10/duckdb:vortex-file-compressed 38958214 39768088 0.98
tpcds_q11/duckdb:vortex-file-compressed 73435460 73410074 1.00
tpcds_q12/duckdb:vortex-file-compressed 15750579 15850563 0.99
tpcds_q13/duckdb:vortex-file-compressed 34089784 34064331 1.00
tpcds_q14/duckdb:vortex-file-compressed 100943376 101147939 1.00
tpcds_q15/duckdb:vortex-file-compressed 26943791 26785432 1.01
tpcds_q16/duckdb:vortex-file-compressed 23277652 22830559 1.02
tpcds_q17/duckdb:vortex-file-compressed 47315944 46431282 1.02
tpcds_q18/duckdb:vortex-file-compressed 38467293 39075962 0.98
tpcds_q19/duckdb:vortex-file-compressed 34949195 34279378 1.02
tpcds_q20/duckdb:vortex-file-compressed 15838849 16058375 0.99
tpcds_q21/duckdb:vortex-file-compressed 16252739 15099142 1.08
tpcds_q22/duckdb:vortex-file-compressed 72441738 70030010 1.03
tpcds_q23/duckdb:vortex-file-compressed 88564524 91929162 0.96
tpcds_q24/duckdb:vortex-file-compressed 43453070 45051966 0.96
tpcds_q25/duckdb:vortex-file-compressed 35989511 35794672 1.01
tpcds_q26/duckdb:vortex-file-compressed 18625371 18658847 1.00
tpcds_q27/duckdb:vortex-file-compressed 29374902 29163827 1.01
tpcds_q28/duckdb:vortex-file-compressed 11843990 11623981 1.02
tpcds_q29/duckdb:vortex-file-compressed 44872654 45276342 0.99
tpcds_q30/duckdb:vortex-file-compressed 25197868 25805895 0.98
tpcds_q31/duckdb:vortex-file-compressed 30530385 29874068 1.02
tpcds_q32/duckdb:vortex-file-compressed 13047003 12682243 1.03
tpcds_q33/duckdb:vortex-file-compressed 25551110 24862881 1.03
tpcds_q34/duckdb:vortex-file-compressed 26614411 26039796 1.02
tpcds_q35/duckdb:vortex-file-compressed 68069075 65163711 1.04
tpcds_q36/duckdb:vortex-file-compressed 25286918 25258659 1.00
tpcds_q37/duckdb:vortex-file-compressed 19344683 18996288 1.02
tpcds_q38/duckdb:vortex-file-compressed 36081671 35205447 1.02
tpcds_q39/duckdb:vortex-file-compressed 30624757 30475556 1.00
tpcds_q40/duckdb:vortex-file-compressed 18058719 17921080 1.01
tpcds_q41/duckdb:vortex-file-compressed 12438598 12173234 1.02
tpcds_q42/duckdb:vortex-file-compressed 15657479 15512408 1.01
tpcds_q43/duckdb:vortex-file-compressed 17973853 17843834 1.01
tpcds_q44/duckdb:vortex-file-compressed 21054926 21310650 0.99
tpcds_q45/duckdb:vortex-file-compressed 30304192 30447460 1.00
tpcds_q46/duckdb:vortex-file-compressed 36447088 36621102 1.00
tpcds_q47/duckdb:vortex-file-compressed 52712938 52586784 1.00
tpcds_q48/duckdb:vortex-file-compressed 31331891 31279258 1.00
tpcds_q49/duckdb:vortex-file-compressed 37289297 38881727 0.96
tpcds_q50/duckdb:vortex-file-compressed 26731462 27682892 0.97
tpcds_q51/duckdb:vortex-file-compressed 103139167 104060002 0.99
tpcds_q52/duckdb:vortex-file-compressed 14511671 15481034 0.94
tpcds_q53/duckdb:vortex-file-compressed 23340124 23216792 1.01
tpcds_q54/duckdb:vortex-file-compressed 28890484 28502534 1.01
tpcds_q55/duckdb:vortex-file-compressed 14383698 14412243 1.00
tpcds_q56/duckdb:vortex-file-compressed 26984497 27060677 1.00
tpcds_q57/duckdb:vortex-file-compressed 39187684 35812928 1.09
tpcds_q58/duckdb:vortex-file-compressed 30713996 30401220 1.01
tpcds_q59/duckdb:vortex-file-compressed 38140291 38065032 1.00
tpcds_q60/duckdb:vortex-file-compressed 27813426 26802110 1.04
tpcds_q61/duckdb:vortex-file-compressed 32301591 33126444 0.98
tpcds_q62/duckdb:vortex-file-compressed 14610892 14243039 1.03
tpcds_q63/duckdb:vortex-file-compressed 21769566 21693573 1.00
tpcds_q64/duckdb:vortex-file-compressed 99077917 98850397 1.00
tpcds_q65/duckdb:vortex-file-compressed 22787020 23606188 0.97
tpcds_q66/duckdb:vortex-file-compressed 28455747 29467871 0.97
tpcds_q67/duckdb:vortex-file-compressed 141430439 142237606 0.99
tpcds_q68/duckdb:vortex-file-compressed 32912116 34603582 0.95
tpcds_q69/duckdb:vortex-file-compressed 41493497 41955688 0.99
tpcds_q70/duckdb:vortex-file-compressed 33352343 35750031 0.93
tpcds_q71/duckdb:vortex-file-compressed 23112884 22615708 1.02
tpcds_q72/duckdb:vortex-file-compressed 162603078 157204288 1.03
tpcds_q73/duckdb:vortex-file-compressed 28567756 28024729 1.02
tpcds_q74/duckdb:vortex-file-compressed 46253974 46210291 1.00
tpcds_q75/duckdb:vortex-file-compressed 49215202 48375408 1.02
tpcds_q76/duckdb:vortex-file-compressed 21046426 21816534 0.96
tpcds_q77/duckdb:vortex-file-compressed 25883938 24604384 1.05
tpcds_q78/duckdb:vortex-file-compressed 66770027 66380586 1.01
tpcds_q79/duckdb:vortex-file-compressed 28327444 28121982 1.01
tpcds_q80/duckdb:vortex-file-compressed 45967786 47253146 0.97
tpcds_q81/duckdb:vortex-file-compressed 28511294 29192642 0.98
tpcds_q82/duckdb:vortex-file-compressed 46561284 46046351 1.01
tpcds_q83/duckdb:vortex-file-compressed 28514046 27702906 1.03
tpcds_q84/duckdb:vortex-file-compressed 16517623 16888126 0.98
tpcds_q85/duckdb:vortex-file-compressed 42687039 43016514 0.99
tpcds_q86/duckdb:vortex-file-compressed 16089812 16373617 0.98
tpcds_q87/duckdb:vortex-file-compressed 37979904 38926096 0.98
tpcds_q88/duckdb:vortex-file-compressed 57295221 59709286 0.96
tpcds_q89/duckdb:vortex-file-compressed 23481825 23859807 0.98
tpcds_q90/duckdb:vortex-file-compressed 11085870 11072732 1.00
tpcds_q91/duckdb:vortex-file-compressed 22402026 23751929 0.94
tpcds_q92/duckdb:vortex-file-compressed 18767995 17705857 1.06
tpcds_q93/duckdb:vortex-file-compressed 28207305 27734896 1.02
tpcds_q94/duckdb:vortex-file-compressed 21519201 21669936 0.99
tpcds_q95/duckdb:vortex-file-compressed 122238977 123360163 0.99
tpcds_q96/duckdb:vortex-file-compressed 13562912 13219379 1.03
tpcds_q97/duckdb:vortex-file-compressed 38544491 36681337 1.05
tpcds_q98/duckdb:vortex-file-compressed 20240318 19737966 1.03
tpcds_q99/duckdb:vortex-file-compressed 17631356 18648856 0.95
duckdb / vortex-compact (0.998x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpcds_q01/duckdb:vortex-compact 23763642 24014871 0.99
tpcds_q02/duckdb:vortex-compact 25397032 24958393 1.02
tpcds_q03/duckdb:vortex-compact 43944259 44227099 0.99
tpcds_q04/duckdb:vortex-compact 108861819 110228826 0.99
tpcds_q05/duckdb:vortex-compact 47426557 48673808 0.97
tpcds_q06/duckdb:vortex-compact 45150716 47504117 0.95
tpcds_q07/duckdb:vortex-compact 51496205 51536463 1.00
tpcds_q08/duckdb:vortex-compact 39757717 42316479 0.94
tpcds_q09/duckdb:vortex-compact 19930037 19539268 1.02
tpcds_q10/duckdb:vortex-compact 69002213 70193735 0.98
tpcds_q11/duckdb:vortex-compact 86864234 86152470 1.01
tpcds_q12/duckdb:vortex-compact 20995273 21516229 0.98
tpcds_q13/duckdb:vortex-compact 73877563 75391108 0.98
tpcds_q14/duckdb:vortex-compact 130131601 130425206 1.00
tpcds_q15/duckdb:vortex-compact 30342489 31143226 0.97
tpcds_q16/duckdb:vortex-compact 29374640 29846509 0.98
tpcds_q17/duckdb:vortex-compact 76504856 79594292 0.96
tpcds_q18/duckdb:vortex-compact 51782480 50349462 1.03
tpcds_q19/duckdb:vortex-compact 56633497 61024369 0.93
tpcds_q20/duckdb:vortex-compact 19788032 19957179 0.99
tpcds_q21/duckdb:vortex-compact 16878701 17575647 0.96
tpcds_q22/duckdb:vortex-compact 72152052 73673737 0.98
tpcds_q23/duckdb:vortex-compact 128864784 120993424 1.07
tpcds_q24/duckdb:vortex-compact 68183232 67878734 1.00
tpcds_q25/duckdb:vortex-compact 59326966 60670242 0.98
tpcds_q26/duckdb:vortex-compact 26652287 27774363 0.96
tpcds_q27/duckdb:vortex-compact 58411758 55432203 1.05
tpcds_q28/duckdb:vortex-compact 21808597 22054704 0.99
tpcds_q29/duckdb:vortex-compact 77950799 77935210 1.00
tpcds_q30/duckdb:vortex-compact 31346976 30756498 1.02
tpcds_q31/duckdb:vortex-compact 49802528 49978438 1.00
tpcds_q32/duckdb:vortex-compact 17921045 19311695 0.93
tpcds_q33/duckdb:vortex-compact 43395660 46223608 0.94
tpcds_q34/duckdb:vortex-compact 51559585 51661294 1.00
tpcds_q35/duckdb:vortex-compact 92594474 92841412 1.00
tpcds_q36/duckdb:vortex-compact 41262395 40809009 1.01
tpcds_q37/duckdb:vortex-compact 22643731 21941867 1.03
tpcds_q38/duckdb:vortex-compact 53443643 53807101 0.99
tpcds_q39/duckdb:vortex-compact 29710612 29597716 1.00
tpcds_q40/duckdb:vortex-compact 22427859 20956219 1.07
tpcds_q41/duckdb:vortex-compact 13863295 13828976 1.00
tpcds_q42/duckdb:vortex-compact 22005752 21905677 1.00
tpcds_q43/duckdb:vortex-compact 29398245 29770691 0.99
tpcds_q44/duckdb:vortex-compact 33979624 34103915 1.00
tpcds_q45/duckdb:vortex-compact 39952359 40093211 1.00
tpcds_q46/duckdb:vortex-compact 69661605 69306482 1.01
tpcds_q47/duckdb:vortex-compact 71260751 67849486 1.05
tpcds_q48/duckdb:vortex-compact 64066419 63439438 1.01
tpcds_q49/duckdb:vortex-compact 57191307 57913549 0.99
tpcds_q50/duckdb:vortex-compact 54420533 56029582 0.97
tpcds_q51/duckdb:vortex-compact 123979803 114071357 1.09
tpcds_q52/duckdb:vortex-compact 23349785 22494163 1.04
tpcds_q53/duckdb:vortex-compact 38763383 38292154 1.01
tpcds_q54/duckdb:vortex-compact 44076803 45192389 0.98
tpcds_q55/duckdb:vortex-compact 21460231 21979624 0.98
tpcds_q56/duckdb:vortex-compact 45097864 44875865 1.00
tpcds_q57/duckdb:vortex-compact 39966622 40155199 1.00
tpcds_q58/duckdb:vortex-compact 40139562 41040332 0.98
tpcds_q59/duckdb:vortex-compact 49719594 50889754 0.98
tpcds_q60/duckdb:vortex-compact 47285787 46849124 1.01
tpcds_q61/duckdb:vortex-compact 78834472 78835711 1.00
tpcds_q62/duckdb:vortex-compact 18633982 20091257 0.93
tpcds_q63/duckdb:vortex-compact 37542135 37678458 1.00
tpcds_q64/duckdb:vortex-compact 154485582 156828491 0.99
tpcds_q65/duckdb:vortex-compact 35198953 33982492 1.04
tpcds_q66/duckdb:vortex-compact 37388750 35435129 1.06
tpcds_q67/duckdb:vortex-compact 160441759 154828804 1.04
tpcds_q68/duckdb:vortex-compact 69948627 70095782 1.00
tpcds_q69/duckdb:vortex-compact 72775589 72454671 1.00
tpcds_q70/duckdb:vortex-compact 54710137 54383883 1.01
tpcds_q71/duckdb:vortex-compact 41638475 41471287 1.00
tpcds_q72/duckdb:vortex-compact 169082844 170427880 0.99
tpcds_q73/duckdb:vortex-compact 47274543 48825188 0.97
tpcds_q74/duckdb:vortex-compact 58641877 59192118 0.99
tpcds_q75/duckdb:vortex-compact 62029598 64520806 0.96
tpcds_q76/duckdb:vortex-compact 37204557 36412103 1.02
tpcds_q77/duckdb:vortex-compact 40643469 38501065 1.06
tpcds_q78/duckdb:vortex-compact 80097173 81383183 0.98
tpcds_q79/duckdb:vortex-compact 63391839 62995185 1.01
tpcds_q80/duckdb:vortex-compact 76302440 73985443 1.03
tpcds_q81/duckdb:vortex-compact 31448233 30856758 1.02
tpcds_q82/duckdb:vortex-compact 50126881 49214732 1.02
tpcds_q83/duckdb:vortex-compact 34992516 35884493 0.98
tpcds_q84/duckdb:vortex-compact 19512684 19731756 0.99
tpcds_q85/duckdb:vortex-compact 58553096 57995343 1.01
tpcds_q86/duckdb:vortex-compact 21623412 20579229 1.05
tpcds_q87/duckdb:vortex-compact 55673797 57989003 0.96
tpcds_q88/duckdb:vortex-compact 210008157 207893211 1.01
tpcds_q89/duckdb:vortex-compact 38219082 37723881 1.01
tpcds_q90/duckdb:vortex-compact 16878212 17181643 0.98
tpcds_q91/duckdb:vortex-compact 39764182 40697044 0.98
tpcds_q92/duckdb:vortex-compact 36526340 34642716 1.05
tpcds_q93/duckdb:vortex-compact 35132089 34501198 1.02
tpcds_q94/duckdb:vortex-compact 31563931 32122142 0.98
tpcds_q95/duckdb:vortex-compact 132934642 132665677 1.00
tpcds_q96/duckdb:vortex-compact 34300615 34214973 1.00
tpcds_q97/duckdb:vortex-compact 49642078 51001585 0.97
tpcds_q98/duckdb:vortex-compact 30676208 29461451 1.04
tpcds_q99/duckdb:vortex-compact 22364511 22370858 1.00
duckdb / parquet (0.999x ➖, 1↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpcds_q01/duckdb:parquet 28877905 29771086 0.97
tpcds_q02/duckdb:parquet 23986869 24050442 1.00
tpcds_q03/duckdb:parquet 13046972 13025567 1.00
tpcds_q04/duckdb:parquet 166832026 170824569 0.98
tpcds_q05/duckdb:parquet 32412128 31068276 1.04
tpcds_q06/duckdb:parquet 33916361 34023706 1.00
tpcds_q07/duckdb:parquet 24096431 24348354 0.99
tpcds_q08/duckdb:parquet 29757680 29444504 1.01
tpcds_q09/duckdb:parquet 43989611 45353464 0.97
tpcds_q10/duckdb:parquet 38255522 37372935 1.02
tpcds_q11/duckdb:parquet 86349138 90936015 0.95
tpcds_q12/duckdb:parquet 16857163 17231729 0.98
tpcds_q13/duckdb:parquet 35246218 34735022 1.01
tpcds_q14/duckdb:parquet 101275924 98385472 1.03
tpcds_q15/duckdb:parquet 30428952 29723747 1.02
tpcds_q16/duckdb:parquet 22746459 22668216 1.00
tpcds_q17/duckdb:parquet 40410776 38695679 1.04
tpcds_q18/duckdb:parquet 48701724 47850217 1.02
tpcds_q19/duckdb:parquet 31492336 31428185 1.00
tpcds_q20/duckdb:parquet 18381741 18560878 0.99
tpcds_q21/duckdb:parquet 11710675 11520718 1.02
tpcds_q22/duckdb:parquet 71292623 68262376 1.04
tpcds_q23/duckdb:parquet 81503485 79730914 1.02
tpcds_q24/duckdb:parquet 46680245 47495808 0.98
tpcds_q25/duckdb:parquet 35288400 35971092 0.98
tpcds_q26/duckdb:parquet 40006811 38808883 1.03
tpcds_q27/duckdb:parquet 53065785 53278233 1.00
tpcds_q28/duckdb:parquet 43132277 43492999 0.99
tpcds_q29/duckdb:parquet 36603139 38718161 0.95
tpcds_q30/duckdb:parquet 37181304 37867640 0.98
tpcds_q31/duckdb:parquet 27950902 27566164 1.01
tpcds_q32/duckdb:parquet 12104911 12745834 0.95
tpcds_q33/duckdb:parquet 23868958 24420252 0.98
tpcds_q34/duckdb:parquet 23049274 22192342 1.04
tpcds_q35/duckdb:parquet 61554309 60410226 1.02
tpcds_q36/duckdb:parquet 22815061 22533575 1.01
tpcds_q37/duckdb:parquet 14605221 14407180 1.01
tpcds_q38/duckdb:parquet 36994164 36515523 1.01
tpcds_q39/duckdb:parquet 32315478 32486042 0.99
tpcds_q40/duckdb:parquet 19251256 19465428 0.99
tpcds_q41/duckdb:parquet 8806218 8601180 1.02
tpcds_q42/duckdb:parquet 13005594 12446564 1.04
tpcds_q43/duckdb:parquet 17694144 17981956 0.98
tpcds_q44/duckdb:parquet 25722258 25836864 1.00
tpcds_q45/duckdb:parquet 28545908 28762791 0.99
tpcds_q46/duckdb:parquet 47866401 47551552 1.01
tpcds_q47/duckdb:parquet 49696761 51414942 0.97
tpcds_q48/duckdb:parquet 31703589 32542048 0.97
tpcds_q49/duckdb:parquet 28816065 28205192 1.02
tpcds_q50/duckdb:parquet 25999237 26137880 0.99
tpcds_q51/duckdb:parquet 112909737 102742349 1.10
tpcds_q52/duckdb:parquet 12767894 13427626 0.95
tpcds_q53/duckdb:parquet 18767661 19330610 0.97
tpcds_q54/duckdb:parquet 28997787 29159757 0.99
tpcds_q55/duckdb:parquet 12895045 12866082 1.00
tpcds_q56/duckdb:parquet 24577871 23139523 1.06
tpcds_q57/duckdb:parquet 39243212 38261439 1.03
tpcds_q58/duckdb:parquet 25795528 26689216 0.97
tpcds_q59/duckdb:parquet 36565384 36391793 1.00
tpcds_q60/duckdb:parquet 25094819 26737433 0.94
tpcds_q61/duckdb:parquet 33629224 33679843 1.00
tpcds_q62/duckdb:parquet 12567171 12909056 0.97
tpcds_q63/duckdb:parquet 17763835 17530569 1.01
tpcds_q64/duckdb:parquet 77447095 77837883 0.99
tpcds_q65/duckdb:parquet 24013372 22964951 1.05
tpcds_q66/duckdb:parquet 🚀 29025231 32707398 0.89
tpcds_q67/duckdb:parquet 133376962 137096698 0.97
tpcds_q68/duckdb:parquet 39436588 39226258 1.01
tpcds_q69/duckdb:parquet 37999115 37862696 1.00
tpcds_q70/duckdb:parquet 22070755 22532281 0.98
tpcds_q71/duckdb:parquet 23870823 23608683 1.01
tpcds_q72/duckdb:parquet 164698678 169123911 0.97
tpcds_q73/duckdb:parquet 19783087 19929614 0.99
tpcds_q74/duckdb:parquet 125954678 128885793 0.98
tpcds_q75/duckdb:parquet 57595717 57278230 1.01
tpcds_q76/duckdb:parquet 21873194 21797546 1.00
tpcds_q77/duckdb:parquet 25057732 25819788 0.97
tpcds_q78/duckdb:parquet 76133615 77025102 0.99
tpcds_q79/duckdb:parquet 30286788 29925856 1.01
tpcds_q80/duckdb:parquet 43578640 42519604 1.02
tpcds_q81/duckdb:parquet 35551150 35333315 1.01
tpcds_q82/duckdb:parquet 18047824 17477094 1.03
tpcds_q83/duckdb:parquet 18052675 18459269 0.98
tpcds_q84/duckdb:parquet 21649797 20389788 1.06
tpcds_q85/duckdb:parquet 42046654 43988576 0.96
tpcds_q86/duckdb:parquet 13476636 13695898 0.98
tpcds_q87/duckdb:parquet 39203575 39129971 1.00
tpcds_q88/duckdb:parquet 53337538 52892906 1.01
tpcds_q89/duckdb:parquet 20531746 21704147 0.95
tpcds_q90/duckdb:parquet 8481658 8511661 1.00
tpcds_q91/duckdb:parquet 25914176 24168624 1.07
tpcds_q92/duckdb:parquet 12998894 13115480 0.99
tpcds_q93/duckdb:parquet 31931006 31873830 1.00
tpcds_q94/duckdb:parquet 17801725 17784921 1.00
tpcds_q95/duckdb:parquet 146287174 147966563 0.99
tpcds_q96/duckdb:parquet 10743492 10437569 1.03
tpcds_q97/duckdb:parquet 38018311 38676249 0.98
tpcds_q98/duckdb:parquet 24723900 24799908 1.00
tpcds_q99/duckdb:parquet 20386458 20279626 1.01
duckdb / duckdb (0.994x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpcds_q01/duckdb:duckdb 22409687 22418373 1.00
tpcds_q02/duckdb:duckdb 19538394 19304135 1.01
tpcds_q03/duckdb:duckdb 10372337 10556498 0.98
tpcds_q04/duckdb:duckdb 178944992 180272128 0.99
tpcds_q05/duckdb:duckdb 21377683 21196980 1.01
tpcds_q06/duckdb:duckdb 28408229 28014765 1.01
tpcds_q07/duckdb:duckdb 39960513 40360196 0.99
tpcds_q08/duckdb:duckdb 119415802 120371579 0.99
tpcds_q09/duckdb:duckdb 20625995 20613871 1.00
tpcds_q10/duckdb:duckdb 27848699 27098279 1.03
tpcds_q11/duckdb:duckdb 94420823 91370826 1.03
tpcds_q12/duckdb:duckdb 13848876 14239483 0.97
tpcds_q13/duckdb:duckdb 26016467 26068873 1.00
tpcds_q14/duckdb:duckdb 92895055 93402941 0.99
tpcds_q15/duckdb:duckdb 24797802 25073164 0.99
tpcds_q16/duckdb:duckdb 19114277 19692242 0.97
tpcds_q17/duckdb:duckdb 25097303 23845276 1.05
tpcds_q18/duckdb:duckdb 47766672 47376563 1.01
tpcds_q19/duckdb:duckdb 19703889 19951196 0.99
tpcds_q20/duckdb:duckdb 14088827 13903213 1.01
tpcds_q21/duckdb:duckdb 7525052 7511702 1.00
tpcds_q22/duckdb:duckdb 61132746 67356974 0.91
tpcds_q23/duckdb:duckdb 76371554 84707687 0.90
tpcds_q24/duckdb:duckdb 25356032 25010668 1.01
tpcds_q25/duckdb:duckdb 18705915 18516903 1.01
tpcds_q26/duckdb:duckdb 27714608 27764750 1.00
tpcds_q27/duckdb:duckdb 40964512 41115536 1.00
tpcds_q28/duckdb:duckdb 25993456 26581564 0.98
tpcds_q29/duckdb:duckdb 23723453 23137818 1.03
tpcds_q30/duckdb:duckdb 31067324 31488372 0.99
tpcds_q31/duckdb:duckdb 50104734 51038048 0.98
tpcds_q32/duckdb:duckdb 8052636 8262946 0.97
tpcds_q33/duckdb:duckdb 16718842 16527046 1.01
tpcds_q34/duckdb:duckdb 18190286 18984338 0.96
tpcds_q35/duckdb:duckdb 36584846 37593602 0.97
tpcds_q36/duckdb:duckdb 69515022 70995555 0.98
tpcds_q37/duckdb:duckdb 8613651 8392900 1.03
tpcds_q38/duckdb:duckdb 33174524 33256335 1.00
tpcds_q39/duckdb:duckdb 28324533 27986252 1.01
tpcds_q40/duckdb:duckdb 14563600 14772133 0.99
tpcds_q41/duckdb:duckdb 9189741 9966315 0.92
tpcds_q42/duckdb:duckdb 10126039 10570247 0.96
tpcds_q43/duckdb:duckdb 15013798 14769546 1.02
tpcds_q44/duckdb:duckdb 15553284 14893351 1.04
tpcds_q45/duckdb:duckdb 18509136 18914167 0.98
tpcds_q46/duckdb:duckdb 37800391 39749662 0.95
tpcds_q47/duckdb:duckdb 47125437 46771366 1.01
tpcds_q48/duckdb:duckdb 24711969 24907933 0.99
tpcds_q49/duckdb:duckdb 21386321 22264477 0.96
tpcds_q50/duckdb:duckdb 16204031 15932915 1.02
tpcds_q51/duckdb:duckdb 98218757 98620531 1.00
tpcds_q52/duckdb:duckdb 10719716 11589568 0.92
tpcds_q53/duckdb:duckdb 17131365 17406449 0.98
tpcds_q54/duckdb:duckdb 18803069 18800063 1.00
tpcds_q55/duckdb:duckdb 9731722 10638390 0.91
tpcds_q56/duckdb:duckdb 16410254 16720760 0.98
tpcds_q57/duckdb:duckdb 38941974 36449783 1.07
tpcds_q58/duckdb:duckdb 16401717 16401994 1.00
tpcds_q59/duckdb:duckdb 36769519 36847944 1.00
tpcds_q60/duckdb:duckdb 18321331 18243820 1.00
tpcds_q61/duckdb:duckdb 16252010 16725478 0.97
tpcds_q62/duckdb:duckdb 9824945 9775260 1.01
tpcds_q63/duckdb:duckdb 15942917 17113082 0.93
tpcds_q64/duckdb:duckdb 58358794 58253781 1.00
tpcds_q65/duckdb:duckdb 36394655 36334105 1.00
tpcds_q66/duckdb:duckdb 26613059 26142575 1.02
tpcds_q67/duckdb:duckdb 132160262 133164611 0.99
tpcds_q68/duckdb:duckdb 26149942 27656945 0.95
tpcds_q69/duckdb:duckdb 27448906 27739380 0.99
tpcds_q70/duckdb:duckdb 16855344 16311781 1.03
tpcds_q71/duckdb:duckdb 16264544 16305908 1.00
tpcds_q72/duckdb:duckdb 45977219 45804452 1.00
tpcds_q73/duckdb:duckdb 14018308 13976442 1.00
tpcds_q74/duckdb:duckdb 144013720 144684081 1.00
tpcds_q75/duckdb:duckdb 45868805 46161548 0.99
tpcds_q76/duckdb:duckdb 14927033 14796695 1.01
tpcds_q77/duckdb:duckdb 15937345 15230928 1.05
tpcds_q78/duckdb:duckdb 65261018 65222373 1.00
tpcds_q79/duckdb:duckdb 19905741 20102987 0.99
tpcds_q80/duckdb:duckdb 31020401 31017635 1.00
tpcds_q81/duckdb:duckdb 38924604 39975033 0.97
tpcds_q82/duckdb:duckdb 11246076 10543927 1.07
tpcds_q83/duckdb:duckdb 10949744 10787781 1.02
tpcds_q84/duckdb:duckdb 14931005 14449698 1.03
tpcds_q85/duckdb:duckdb 26040768 26015794 1.00
tpcds_q86/duckdb:duckdb 11959672 11924232 1.00
tpcds_q87/duckdb:duckdb 35945823 35357130 1.02
tpcds_q88/duckdb:duckdb 30053659 29608822 1.02
tpcds_q89/duckdb:duckdb 21557624 22411798 0.96
tpcds_q90/duckdb:duckdb 6273253 6215096 1.01
tpcds_q91/duckdb:duckdb 14896918 14630893 1.02
tpcds_q92/duckdb:duckdb 9933819 9976646 1.00
tpcds_q93/duckdb:duckdb 23667746 23433452 1.01
tpcds_q94/duckdb:duckdb 14451316 14556688 0.99
tpcds_q95/duckdb:duckdb 110657418 114087629 0.97
tpcds_q96/duckdb:duckdb 5926647 6005896 0.99
tpcds_q97/duckdb:duckdb 32188589 31831903 1.01
tpcds_q98/duckdb:duckdb 20470922 20634463 0.99
tpcds_q99/duckdb:duckdb 16670419 16852008 0.99

File Size Changes (6 files changed, +0.0% overall, 5↑ 1↓)
File Scale Format Base HEAD Change %
item.vortex 1.0 vortex-file-compressed 1.64 MB 1.64 MB +3.89 KB +0.2%
catalog_page.vortex 1.0 vortex-file-compressed 565.17 KB 566.44 KB +1.27 KB +0.2%
time_dim.vortex 1.0 vortex-file-compressed 379.25 KB 379.98 KB +752 B +0.2%
customer_address.vortex 1.0 vortex-file-compressed 826.73 KB 827.77 KB +1.03 KB +0.1%
customer.vortex 1.0 vortex-file-compressed 4.18 MB 4.18 MB +4.30 KB +0.1%
item.vortex 1.0 vortex-compact 993.79 KB 993.77 KB 24 B -0.0%

Totals:

  • vortex-compact: 207.46 MB → 207.46 MB (-0.0%)
  • vortex-file-compressed: 269.91 MB → 269.92 MB (+0.0%)

danking added 4 commits July 9, 2026 16:26
Introduce a lazy TakeSlices array for ordered child ranges, wire FixedSizeList take to emit element ranges, and add a primitive child execution kernel for contiguous range copies.

Expand FSL take benchmarks and cover TakeSlices edge cases, nullable validity, generic slice-based execution, and nullable FSL take with nullable indices.

Signed-off-by: Daniel King <dan@spiraldb.com>
Refactor fixed-size-list take around structural cases, tighten TakeSlices validation, and extend edge-case coverage. Also document the local-reasoning guideline that would have avoided threading fallback state through the main path.

Signed-off-by: Daniel King <dan@spiraldb.com>
Replace ambiguous ordered-range wording with caller-provided sequence terminology so the API docs do not imply sorted or disjoint ranges.

Signed-off-by: Daniel King <dan@spiraldb.com>
Switch TakeSlices to starts/lengths selector arrays and reuse the contiguous-run gather for ListView rebuilds.

Signed-off-by: Daniel King <dan@spiraldb.com>
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: FineWeb S3

Verdict: No clear signal (environment too noisy confidence)
Attributed Vortex impact: -3.5%
Engines: DataFusion No clear signal (-1.9%, environment too noisy confidence) · DuckDB No clear signal (-5.0%, environment too noisy confidence)
Vortex (geomean): 0.988x ➖
Parquet (geomean): 1.023x ➖
Shifts: Parquet (control) +2.3% · Median polish -1.6%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (1.009x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/datafusion:vortex-file-compressed 30231366 35212573 0.86
fineweb_q01/datafusion:vortex-file-compressed 794551122 645102086 1.23
fineweb_q02/datafusion:vortex-file-compressed 711767767 667426954 1.07
fineweb_q03/datafusion:vortex-file-compressed 1140817245 1155935849 0.99
fineweb_q04/datafusion:vortex-file-compressed 1182977453 1235513856 0.96
fineweb_q05/datafusion:vortex-file-compressed 1121955963 1106481443 1.01
fineweb_q06/datafusion:vortex-file-compressed 1349025535 1305737633 1.03
fineweb_q07/datafusion:vortex-file-compressed 1112315957 1148245076 0.97
fineweb_q08/datafusion:vortex-file-compressed 461740229 460688324 1.00
datafusion / vortex-compact (0.961x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/datafusion:vortex-compact 42982190 42902147 1.00
fineweb_q01/datafusion:vortex-compact 674937195 628127626 1.07
fineweb_q02/datafusion:vortex-compact 676656111 793128170 0.85
fineweb_q03/datafusion:vortex-compact 1353024041 1349936077 1.00
fineweb_q04/datafusion:vortex-compact 1564009609 1669751392 0.94
fineweb_q05/datafusion:vortex-compact 1324774662 1395411848 0.95
fineweb_q06/datafusion:vortex-compact 1265761952 1326747576 0.95
fineweb_q07/datafusion:vortex-compact 1125636032 1199130950 0.94
fineweb_q08/datafusion:vortex-compact 401566726 420003160 0.96
datafusion / parquet (1.004x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/datafusion:parquet 1476689277 1311251259 1.13
fineweb_q01/datafusion:parquet 2083153046 2141516422 0.97
fineweb_q02/datafusion:parquet 2129800145 2093570929 1.02
fineweb_q03/datafusion:parquet 2249167448 2750170331 0.82
fineweb_q04/datafusion:parquet 2004166292 2600525620 0.77
fineweb_q05/datafusion:parquet 2151625557 1923411131 1.12
fineweb_q06/datafusion:parquet 2225868186 2248586951 0.99
fineweb_q07/datafusion:parquet 2435561922 1997052553 1.22
fineweb_q08/datafusion:parquet 2335634628 2132261912 1.10
duckdb / vortex-file-compressed (0.940x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/duckdb:vortex-file-compressed 86949828 77549778 1.12
fineweb_q01/duckdb:vortex-file-compressed 652487371 632543173 1.03
fineweb_q02/duckdb:vortex-file-compressed 621044172 712348497 0.87
fineweb_q03/duckdb:vortex-file-compressed 1277341275 1347846425 0.95
fineweb_q04/duckdb:vortex-file-compressed 1308004603 1624882590 0.80
fineweb_q05/duckdb:vortex-file-compressed 1239035748 1443548012 0.86
fineweb_q06/duckdb:vortex-file-compressed 1527673510 1570185762 0.97
fineweb_q07/duckdb:vortex-file-compressed 1303988814 1383379496 0.94
fineweb_q08/duckdb:vortex-file-compressed 582715967 617885783 0.94
duckdb / vortex-compact (1.045x ➖, 0↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/duckdb:vortex-compact 🚨 78724285 55764701 1.41
fineweb_q01/duckdb:vortex-compact 740040205 587498154 1.26
fineweb_q02/duckdb:vortex-compact 684814784 653919387 1.05
fineweb_q03/duckdb:vortex-compact 1690876251 1724172274 0.98
fineweb_q04/duckdb:vortex-compact 1721883466 1910590134 0.90
fineweb_q05/duckdb:vortex-compact 1517600235 1686823530 0.90
fineweb_q06/duckdb:vortex-compact 1553962253 1601718758 0.97
fineweb_q07/duckdb:vortex-compact 1497619313 1537464372 0.97
fineweb_q08/duckdb:vortex-compact 543449633 512925776 1.06
duckdb / parquet (1.043x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
fineweb_q00/duckdb:parquet 1297761077 1119285387 1.16
fineweb_q01/duckdb:parquet 1561971189 1355886393 1.15
fineweb_q02/duckdb:parquet 1447451591 1416385113 1.02
fineweb_q03/duckdb:parquet 4271906534 3904587775 1.09
fineweb_q04/duckdb:parquet 1990831708 1918108870 1.04
fineweb_q05/duckdb:parquet 2314558997 2437976775 0.95
fineweb_q06/duckdb:parquet 4669270829 4627873850 1.01
fineweb_q07/duckdb:parquet 3070567658 2987959134 1.03
fineweb_q08/duckdb:parquet 1133910258 1183971730 0.96

Push TakeSlices through struct fields and execute VarBinView run gathers by copying view ranges while reusing data buffers.

Signed-off-by: Daniel King <dan@spiraldb.com>
@danking danking force-pushed the codex/take-slices-fsl branch from f80606e to 99d0126 Compare July 9, 2026 20:28
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: Clickbench Sorted on NVME

Verdict: No clear signal (low confidence)
Attributed Vortex impact: -1.3%
Engines: DataFusion No clear signal (+1.4%, low confidence) · DuckDB No clear signal (-2.8%, low confidence)
Vortex (geomean): 0.977x ➖
Parquet (geomean): 0.996x ➖
Shifts: Parquet (control) -0.4% · Median polish -1.1%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (1.005x ➖, 1↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
clickbench-sorted_q23/datafusion:vortex-file-compressed 🚀 449250681 583539390 0.77
clickbench-sorted_q24/datafusion:vortex-file-compressed 23754762 22945468 1.04
clickbench-sorted_q26/datafusion:vortex-file-compressed 21272157 22166848 0.96
clickbench-sorted_q36/datafusion:vortex-file-compressed 🚨 69992945 60505351 1.16
clickbench-sorted_q37/datafusion:vortex-file-compressed 46889290 45299577 1.04
clickbench-sorted_q38/datafusion:vortex-file-compressed 44845956 44713381 1.00
clickbench-sorted_q39/datafusion:vortex-file-compressed 120418306 113583679 1.06
clickbench-sorted_q40/datafusion:vortex-file-compressed 22089641 21093420 1.05
clickbench-sorted_q41/datafusion:vortex-file-compressed 19887732 19690924 1.01
clickbench-sorted_q42/datafusion:vortex-file-compressed 14523176 14285635 1.02
datafusion / parquet (0.991x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
clickbench-sorted_q23/datafusion:parquet 4631581295 4650493677 1.00
clickbench-sorted_q24/datafusion:parquet 28044089 28775007 0.97
clickbench-sorted_q26/datafusion:parquet 27192500 27492281 0.99
clickbench-sorted_q36/datafusion:parquet 181111957 177904631 1.02
clickbench-sorted_q37/datafusion:parquet 109007726 111308957 0.98
clickbench-sorted_q38/datafusion:parquet 163703944 155113992 1.06
clickbench-sorted_q39/datafusion:parquet 289159835 303527060 0.95
clickbench-sorted_q40/datafusion:parquet 66219345 67818870 0.98
clickbench-sorted_q41/datafusion:parquet 60529359 60286420 1.00
clickbench-sorted_q42/datafusion:parquet 32093487 33307709 0.96
duckdb / vortex-file-compressed (0.950x ➖, 3↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
clickbench-sorted_q23/duckdb:vortex-file-compressed 🚀 173418819 193405771 0.90
clickbench-sorted_q24/duckdb:vortex-file-compressed 23571802 24055819 0.98
clickbench-sorted_q26/duckdb:vortex-file-compressed 🚀 38791437 51583746 0.75
clickbench-sorted_q36/duckdb:vortex-file-compressed 62577746 60142907 1.04
clickbench-sorted_q37/duckdb:vortex-file-compressed 47473695 46018317 1.03
clickbench-sorted_q38/duckdb:vortex-file-compressed 52442690 51892129 1.01
clickbench-sorted_q39/duckdb:vortex-file-compressed 116404209 117355051 0.99
clickbench-sorted_q40/duckdb:vortex-file-compressed 27847653 28547984 0.98
clickbench-sorted_q41/duckdb:vortex-file-compressed 27764936 28273244 0.98
clickbench-sorted_q42/duckdb:vortex-file-compressed 🚀 22837324 25911218 0.88
duckdb / parquet (1.002x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
clickbench-sorted_q23/duckdb:parquet 196129835 192878833 1.02
clickbench-sorted_q24/duckdb:parquet 27292983 28518035 0.96
clickbench-sorted_q26/duckdb:parquet 25029547 23576667 1.06
clickbench-sorted_q36/duckdb:parquet 105868679 106273237 1.00
clickbench-sorted_q37/duckdb:parquet 92670613 93803893 0.99
clickbench-sorted_q38/duckdb:parquet 94064885 95406923 0.99
clickbench-sorted_q39/duckdb:parquet 178010082 175636248 1.01
clickbench-sorted_q40/duckdb:parquet 41307091 41152431 1.00
clickbench-sorted_q41/duckdb:parquet 40755747 41161404 0.99
clickbench-sorted_q42/duckdb:parquet 29711800 29514287 1.01
duckdb / duckdb (0.997x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
clickbench-sorted_q23/duckdb:duckdb 270897143 279075144 0.97
clickbench-sorted_q24/duckdb:duckdb 42862625 43487329 0.99
clickbench-sorted_q26/duckdb:duckdb 38862872 39481704 0.98
clickbench-sorted_q36/duckdb:duckdb 88137507 88331963 1.00
clickbench-sorted_q37/duckdb:duckdb 80555960 75369718 1.07
clickbench-sorted_q38/duckdb:duckdb 62908605 63628132 0.99
clickbench-sorted_q39/duckdb:duckdb 120184000 117978267 1.02
clickbench-sorted_q40/duckdb:duckdb 41769822 42417548 0.98
clickbench-sorted_q41/duckdb:duckdb 41074424 42617324 0.96
clickbench-sorted_q42/duckdb:duckdb 34704989 34404068 1.01

File Size Changes (201 files changed, +0.0% overall, 103↑ 98↓)
File Scale Format Base HEAD Change %
hits_039.vortex 1.0 vortex-file-compressed 158.68 MB 160.74 MB +2.06 MB +1.3%
hits_076.vortex 1.0 vortex-compact 122.38 MB 123.94 MB +1.56 MB +1.3%
hits_050.vortex 1.0 vortex-compact 122.25 MB 123.60 MB +1.35 MB +1.1%
hits_055.vortex 1.0 vortex-file-compressed 197.46 MB 199.16 MB +1.70 MB +0.9%
hits_031.vortex 1.0 vortex-file-compressed 157.57 MB 158.86 MB +1.29 MB +0.8%
hits_034.vortex 1.0 vortex-compact 131.71 MB 132.68 MB +998.45 KB +0.7%
hits_061.vortex 1.0 vortex-compact 122.10 MB 122.95 MB +872.69 KB +0.7%
hits_052.vortex 1.0 vortex-compact 96.61 MB 97.25 MB +662.41 KB +0.7%
hits_000.vortex 1.0 vortex-compact 97.13 MB 97.77 MB +663.02 KB +0.7%
hits_093.vortex 1.0 vortex-compact 97.69 MB 98.29 MB +622.77 KB +0.6%
hits_037.vortex 1.0 vortex-compact 131.42 MB 132.21 MB +806.89 KB +0.6%
hits_039.vortex 1.0 vortex-compact 122.43 MB 123.14 MB +719.30 KB +0.6%
hits_045.vortex 1.0 vortex-file-compressed 139.39 MB 140.15 MB +784.05 KB +0.5%
hits_054.vortex 1.0 vortex-compact 110.39 MB 110.95 MB +581.24 KB +0.5%
hits_044.vortex 1.0 vortex-compact 151.97 MB 152.72 MB +772.44 KB +0.5%
hits_062.vortex 1.0 vortex-compact 130.30 MB 130.94 MB +651.76 KB +0.5%
hits_030.vortex 1.0 vortex-compact 97.31 MB 97.77 MB +474.27 KB +0.5%
hits_032.vortex 1.0 vortex-compact 109.90 MB 110.38 MB +498.93 KB +0.4%
hits_058.vortex 1.0 vortex-file-compressed 153.97 MB 154.64 MB +689.02 KB +0.4%
hits_028.vortex 1.0 vortex-compact 114.00 MB 114.49 MB +492.37 KB +0.4%
hits_087.vortex 1.0 vortex-file-compressed 160.32 MB 160.93 MB +620.75 KB +0.4%
hits_069.vortex 1.0 vortex-file-compressed 141.62 MB 142.14 MB +532.87 KB +0.4%
hits_028.vortex 1.0 vortex-file-compressed 151.17 MB 151.72 MB +556.00 KB +0.4%
hits_066.vortex 1.0 vortex-compact 116.78 MB 117.20 MB +428.68 KB +0.4%
hits_015.vortex 1.0 vortex-compact 96.88 MB 97.21 MB +342.67 KB +0.3%
hits_040.vortex 1.0 vortex-compact 108.91 MB 109.26 MB +356.12 KB +0.3%
hits_069.vortex 1.0 vortex-compact 99.01 MB 99.31 MB +307.96 KB +0.3%
hits_044.vortex 1.0 vortex-file-compressed 199.17 MB 199.75 MB +592.90 KB +0.3%
hits_077.vortex 1.0 vortex-compact 131.47 MB 131.84 MB +383.05 KB +0.3%
hits_042.vortex 1.0 vortex-file-compressed 200.20 MB 200.76 MB +575.20 KB +0.3%
hits_099.vortex 1.0 vortex-file-compressed 170.44 MB 170.90 MB +474.02 KB +0.3%
hits_061.vortex 1.0 vortex-file-compressed 160.10 MB 160.53 MB +440.66 KB +0.3%
hits_054.vortex 1.0 vortex-file-compressed 146.32 MB 146.71 MB +391.89 KB +0.3%
hits_081.vortex 1.0 vortex-compact 151.92 MB 152.31 MB +405.52 KB +0.3%
hits_002.vortex 1.0 vortex-compact 122.35 MB 122.66 MB +324.76 KB +0.3%
hits_041.vortex 1.0 vortex-compact 96.73 MB 96.97 MB +249.91 KB +0.3%
hits_068.vortex 1.0 vortex-file-compressed 159.71 MB 160.12 MB +412.13 KB +0.3%
hits_063.vortex 1.0 vortex-file-compressed 131.10 MB 131.41 MB +320.64 KB +0.2%
hits_040.vortex 1.0 vortex-file-compressed 142.69 MB 143.02 MB +337.74 KB +0.2%
hits_088.vortex 1.0 vortex-file-compressed 171.27 MB 171.66 MB +393.88 KB +0.2%
hits_029.vortex 1.0 vortex-compact 151.67 MB 152.00 MB +343.95 KB +0.2%
hits_026.vortex 1.0 vortex-compact 97.42 MB 97.63 MB +214.41 KB +0.2%
hits_091.vortex 1.0 vortex-file-compressed 146.19 MB 146.48 MB +302.55 KB +0.2%
hits_008.vortex 1.0 vortex-compact 105.05 MB 105.25 MB +208.23 KB +0.2%
hits_021.vortex 1.0 vortex-file-compressed 153.66 MB 153.95 MB +299.72 KB +0.2%
hits_010.vortex 1.0 vortex-compact 121.74 MB 121.93 MB +195.04 KB +0.2%
hits_013.vortex 1.0 vortex-file-compressed 160.35 MB 160.60 MB +254.90 KB +0.2%
hits_036.vortex 1.0 vortex-file-compressed 170.80 MB 171.07 MB +270.80 KB +0.2%
hits_099.vortex 1.0 vortex-compact 131.47 MB 131.66 MB +198.72 KB +0.1%
hits_060.vortex 1.0 vortex-compact 139.41 MB 139.60 MB +202.25 KB +0.1%
hits_001.vortex 1.0 vortex-file-compressed 192.37 MB 192.63 MB +266.99 KB +0.1%
hits_066.vortex 1.0 vortex-file-compressed 162.53 MB 162.73 MB +201.83 KB +0.1%
hits_002.vortex 1.0 vortex-file-compressed 160.22 MB 160.41 MB +197.38 KB +0.1%
hits_010.vortex 1.0 vortex-file-compressed 168.13 MB 168.32 MB +200.20 KB +0.1%
hits_098.vortex 1.0 vortex-compact 101.26 MB 101.37 MB +117.77 KB +0.1%
hits_067.vortex 1.0 vortex-file-compressed 131.19 MB 131.33 MB +144.37 KB +0.1%
hits_089.vortex 1.0 vortex-file-compressed 131.03 MB 131.16 MB +141.26 KB +0.1%
hits_083.vortex 1.0 vortex-file-compressed 156.34 MB 156.51 MB +166.09 KB +0.1%
hits_098.vortex 1.0 vortex-file-compressed 136.94 MB 137.08 MB +142.71 KB +0.1%
hits_075.vortex 1.0 vortex-file-compressed 188.67 MB 188.86 MB +195.08 KB +0.1%
hits_065.vortex 1.0 vortex-compact 122.57 MB 122.69 MB +116.82 KB +0.1%
hits_097.vortex 1.0 vortex-file-compressed 191.75 MB 191.93 MB +180.23 KB +0.1%
hits_096.vortex 1.0 vortex-compact 151.57 MB 151.70 MB +133.20 KB +0.1%
hits_060.vortex 1.0 vortex-file-compressed 192.00 MB 192.15 MB +155.62 KB +0.1%
hits_089.vortex 1.0 vortex-compact 97.53 MB 97.60 MB +77.64 KB +0.1%
hits_086.vortex 1.0 vortex-compact 138.91 MB 139.01 MB +103.65 KB +0.1%
hits_059.vortex 1.0 vortex-file-compressed 198.06 MB 198.20 MB +138.44 KB +0.1%
hits_081.vortex 1.0 vortex-file-compressed 199.01 MB 199.14 MB +132.72 KB +0.1%
hits_077.vortex 1.0 vortex-file-compressed 171.61 MB 171.71 MB +102.71 KB +0.1%
hits_034.vortex 1.0 vortex-file-compressed 181.08 MB 181.18 MB +104.56 KB +0.1%
hits_051.vortex 1.0 vortex-compact 131.28 MB 131.35 MB +69.29 KB +0.1%
hits_012.vortex 1.0 vortex-file-compressed 189.96 MB 190.06 MB +98.99 KB +0.1%
hits_068.vortex 1.0 vortex-compact 111.18 MB 111.24 MB +57.62 KB +0.1%
hits_009.vortex 1.0 vortex-file-compressed 100.89 MB 100.94 MB +52.12 KB +0.1%
hits_084.vortex 1.0 vortex-compact 109.91 MB 109.96 MB +54.25 KB +0.0%
hits_091.vortex 1.0 vortex-compact 110.55 MB 110.61 MB +53.62 KB +0.0%
hits_083.vortex 1.0 vortex-compact 109.23 MB 109.28 MB +49.41 KB +0.0%
hits_009.vortex 1.0 vortex-compact 74.59 MB 74.62 MB +31.83 KB +0.0%
hits_047.vortex 1.0 vortex-file-compressed 153.91 MB 153.97 MB +64.76 KB +0.0%
hits_056.vortex 1.0 vortex-compact 100.27 MB 100.31 MB +40.31 KB +0.0%
hits_001.vortex 1.0 vortex-compact 138.38 MB 138.43 MB +52.09 KB +0.0%
hits_043.vortex 1.0 vortex-file-compressed 125.89 MB 125.93 MB +46.60 KB +0.0%
hits_096.vortex 1.0 vortex-file-compressed 197.51 MB 197.58 MB +68.70 KB +0.0%
hits_020.vortex 1.0 vortex-compact 110.88 MB 110.91 MB +30.76 KB +0.0%
hits_006.vortex 1.0 vortex-file-compressed 125.74 MB 125.77 MB +30.97 KB +0.0%
hits_033.vortex 1.0 vortex-file-compressed 199.15 MB 199.19 MB +43.10 KB +0.0%
hits_056.vortex 1.0 vortex-file-compressed 135.16 MB 135.18 MB +24.89 KB +0.0%
hits_095.vortex 1.0 vortex-compact 109.88 MB 109.90 MB +19.52 KB +0.0%
hits_013.vortex 1.0 vortex-compact 122.57 MB 122.59 MB +20.73 KB +0.0%
hits_088.vortex 1.0 vortex-compact 131.50 MB 131.52 MB +20.55 KB +0.0%
hits_003.vortex 1.0 vortex-compact 103.40 MB 103.41 MB +15.03 KB +0.0%
hits_047.vortex 1.0 vortex-compact 109.70 MB 109.72 MB +14.67 KB +0.0%
hits_049.vortex 1.0 vortex-compact 138.69 MB 138.71 MB +17.78 KB +0.0%
hits_022.vortex 1.0 vortex-file-compressed 197.29 MB 197.31 MB +22.56 KB +0.0%
hits_011.vortex 1.0 vortex-file-compressed 198.33 MB 198.35 MB +20.94 KB +0.0%
hits_038.vortex 1.0 vortex-compact 137.47 MB 137.48 MB +13.16 KB +0.0%
hits_030.vortex 1.0 vortex-file-compressed 131.48 MB 131.49 MB +9.33 KB +0.0%
hits_024.vortex 1.0 vortex-file-compressed 159.76 MB 159.77 MB +7.05 KB +0.0%
hits_012.vortex 1.0 vortex-compact 138.08 MB 138.08 MB +4.66 KB +0.0%
hits_000.vortex 1.0 vortex-file-compressed 131.10 MB 131.11 MB +4.07 KB +0.0%
hits_037.vortex 1.0 vortex-file-compressed 176.40 MB 176.41 MB +5.31 KB +0.0%
hits_059.vortex 1.0 vortex-compact 151.37 MB 151.38 MB +1.55 KB +0.0%
hits_021.vortex 1.0 vortex-compact 109.84 MB 109.84 MB +920 B +0.0%
hits_027.vortex 1.0 vortex-compact 137.27 MB 137.27 MB 1.05 KB -0.0%
hits_049.vortex 1.0 vortex-file-compressed 190.61 MB 190.61 MB 2.21 KB -0.0%
hits_023.vortex 1.0 vortex-compact 140.92 MB 140.91 MB 2.45 KB -0.0%
hits_086.vortex 1.0 vortex-file-compressed 191.01 MB 191.00 MB 4.21 KB -0.0%
hits_015.vortex 1.0 vortex-file-compressed 130.70 MB 130.69 MB 8.68 KB -0.0%
hits_005.vortex 1.0 vortex-compact 115.15 MB 115.14 MB 8.22 KB -0.0%
hits_092.vortex 1.0 vortex-file-compressed 198.63 MB 198.61 MB 21.34 KB -0.0%
hits_004.vortex 1.0 vortex-compact 97.04 MB 97.03 MB 11.68 KB -0.0%
hits_032.vortex 1.0 vortex-file-compressed 154.12 MB 154.10 MB 20.99 KB -0.0%
hits_090.vortex 1.0 vortex-file-compressed 192.58 MB 192.56 MB 30.09 KB -0.0%
hits_095.vortex 1.0 vortex-file-compressed 153.84 MB 153.81 MB 24.60 KB -0.0%
hits_019.vortex 1.0 vortex-compact 105.40 MB 105.38 MB 17.05 KB -0.0%
hits_051.vortex 1.0 vortex-file-compressed 171.67 MB 171.64 MB 29.45 KB -0.0%
hits_020.vortex 1.0 vortex-file-compressed 159.57 MB 159.54 MB 32.91 KB -0.0%
hits_048.vortex 1.0 vortex-compact 151.82 MB 151.79 MB 36.84 KB -0.0%
hits_025.vortex 1.0 vortex-file-compressed 171.25 MB 171.20 MB 47.37 KB -0.0%
hits_079.vortex 1.0 vortex-compact 126.69 MB 126.66 MB 35.54 KB -0.0%
hits_019.vortex 1.0 vortex-file-compressed 140.39 MB 140.35 MB 40.14 KB -0.0%
hits_082.vortex 1.0 vortex-compact 105.25 MB 105.22 MB 30.52 KB -0.0%
hits_080.vortex 1.0 vortex-file-compressed 126.34 MB 126.30 MB 42.91 KB -0.0%
hits_035.vortex 1.0 vortex-compact 75.33 MB 75.30 MB 25.88 KB -0.0%
hits_084.vortex 1.0 vortex-file-compressed 154.02 MB 153.96 MB 58.41 KB -0.0%
hits_023.vortex 1.0 vortex-file-compressed 194.41 MB 194.34 MB 73.92 KB -0.0%
hits_004.vortex 1.0 vortex-file-compressed 130.94 MB 130.89 MB 52.45 KB -0.0%
hits_057.vortex 1.0 vortex-compact 110.72 MB 110.68 MB 44.48 KB -0.0%
hits_072.vortex 1.0 vortex-compact 75.04 MB 75.01 MB 30.73 KB -0.0%
hits_017.vortex 1.0 vortex-file-compressed 146.29 MB 146.23 MB 60.62 KB -0.0%
hits_074.vortex 1.0 vortex-compact 151.55 MB 151.49 MB 63.55 KB -0.0%
hits_067.vortex 1.0 vortex-compact 97.30 MB 97.26 MB 41.02 KB -0.0%
hits_031.vortex 1.0 vortex-compact 110.43 MB 110.38 MB 50.84 KB -0.0%
hits_007.vortex 1.0 vortex-file-compressed 199.32 MB 199.23 MB 93.59 KB -0.0%
hits_085.vortex 1.0 vortex-file-compressed 198.68 MB 198.58 MB 100.30 KB -0.0%
hits_007.vortex 1.0 vortex-compact 152.17 MB 152.09 MB 79.08 KB -0.1%
hits_048.vortex 1.0 vortex-file-compressed 198.58 MB 198.48 MB 103.69 KB -0.1%
hits_041.vortex 1.0 vortex-file-compressed 131.02 MB 130.95 MB 79.79 KB -0.1%
hits_027.vortex 1.0 vortex-file-compressed 188.93 MB 188.80 MB 136.33 KB -0.1%
hits_046.vortex 1.0 vortex-compact 74.37 MB 74.32 MB 55.48 KB -0.1%
hits_022.vortex 1.0 vortex-compact 151.52 MB 151.41 MB 114.28 KB -0.1%
hits_075.vortex 1.0 vortex-compact 137.16 MB 137.06 MB 107.81 KB -0.1%
hits_003.vortex 1.0 vortex-file-compressed 135.93 MB 135.82 MB 109.80 KB -0.1%
hits_035.vortex 1.0 vortex-file-compressed 102.58 MB 102.50 MB 83.75 KB -0.1%
hits_024.vortex 1.0 vortex-compact 122.17 MB 122.08 MB 101.27 KB -0.1%
hits_079.vortex 1.0 vortex-file-compressed 180.72 MB 180.57 MB 150.05 KB -0.1%
hits_097.vortex 1.0 vortex-compact 139.63 MB 139.51 MB 119.37 KB -0.1%
hits_045.vortex 1.0 vortex-compact 105.40 MB 105.31 MB 93.44 KB -0.1%
hits_018.vortex 1.0 vortex-file-compressed 198.76 MB 198.57 MB 189.76 KB -0.1%
hits_073.vortex 1.0 vortex-file-compressed 172.36 MB 172.19 MB 168.23 KB -0.1%
hits_016.vortex 1.0 vortex-file-compressed 179.59 MB 179.41 MB 185.48 KB -0.1%
hits_087.vortex 1.0 vortex-compact 122.49 MB 122.37 MB 127.89 KB -0.1%
hits_072.vortex 1.0 vortex-file-compressed 102.15 MB 102.04 MB 110.38 KB -0.1%
hits_078.vortex 1.0 vortex-file-compressed 130.59 MB 130.45 MB 141.67 KB -0.1%
hits_042.vortex 1.0 vortex-compact 136.11 MB 135.96 MB 150.61 KB -0.1%
hits_093.vortex 1.0 vortex-file-compressed 131.43 MB 131.28 MB 147.27 KB -0.1%
hits_008.vortex 1.0 vortex-file-compressed 139.43 MB 139.28 MB 159.09 KB -0.1%
hits_046.vortex 1.0 vortex-file-compressed 100.91 MB 100.79 MB 118.16 KB -0.1%
hits_026.vortex 1.0 vortex-file-compressed 130.94 MB 130.79 MB 153.68 KB -0.1%
hits_018.vortex 1.0 vortex-compact 152.30 MB 152.11 MB 188.18 KB -0.1%
hits_070.vortex 1.0 vortex-compact 152.07 MB 151.88 MB 191.00 KB -0.1%
hits_053.vortex 1.0 vortex-compact 137.01 MB 136.84 MB 173.54 KB -0.1%
hits_052.vortex 1.0 vortex-file-compressed 130.60 MB 130.43 MB 174.62 KB -0.1%
hits_071.vortex 1.0 vortex-compact 105.18 MB 105.03 MB 159.35 KB -0.1%
hits_043.vortex 1.0 vortex-compact 93.88 MB 93.73 MB 160.73 KB -0.2%
hits_092.vortex 1.0 vortex-compact 152.01 MB 151.75 MB 261.20 KB -0.2%
hits_058.vortex 1.0 vortex-compact 110.52 MB 110.31 MB 215.38 KB -0.2%
hits_055.vortex 1.0 vortex-compact 151.62 MB 151.32 MB 311.70 KB -0.2%
hits_080.vortex 1.0 vortex-compact 94.17 MB 93.96 MB 212.77 KB -0.2%
hits_016.vortex 1.0 vortex-compact 126.17 MB 125.87 MB 300.83 KB -0.2%
hits_033.vortex 1.0 vortex-compact 152.11 MB 151.75 MB 376.10 KB -0.2%
hits_029.vortex 1.0 vortex-file-compressed 199.59 MB 199.11 MB 498.23 KB -0.2%
hits_014.vortex 1.0 vortex-file-compressed 171.88 MB 171.45 MB 443.22 KB -0.3%
hits_017.vortex 1.0 vortex-compact 111.05 MB 110.77 MB 287.35 KB -0.3%
hits_070.vortex 1.0 vortex-file-compressed 199.65 MB 199.14 MB 521.80 KB -0.3%
hits_063.vortex 1.0 vortex-compact 98.30 MB 98.00 MB 305.12 KB -0.3%
hits_025.vortex 1.0 vortex-compact 131.25 MB 130.83 MB 421.32 KB -0.3%
hits_006.vortex 1.0 vortex-compact 93.77 MB 93.47 MB 314.33 KB -0.3%
hits_094.vortex 1.0 vortex-compact 110.38 MB 110.00 MB 386.65 KB -0.3%
hits_078.vortex 1.0 vortex-compact 97.03 MB 96.69 MB 348.73 KB -0.4%
hits_053.vortex 1.0 vortex-file-compressed 189.50 MB 188.75 MB 774.82 KB -0.4%
hits_085.vortex 1.0 vortex-compact 152.51 MB 151.89 MB 632.10 KB -0.4%
hits_036.vortex 1.0 vortex-compact 131.55 MB 131.01 MB 549.21 KB -0.4%
hits_065.vortex 1.0 vortex-file-compressed 161.22 MB 160.56 MB 674.14 KB -0.4%
hits_071.vortex 1.0 vortex-file-compressed 140.09 MB 139.50 MB 595.92 KB -0.4%
hits_011.vortex 1.0 vortex-compact 151.38 MB 150.74 MB 652.86 KB -0.4%
hits_062.vortex 1.0 vortex-file-compressed 170.58 MB 169.83 MB 759.01 KB -0.4%
hits_082.vortex 1.0 vortex-file-compressed 140.48 MB 139.87 MB 630.74 KB -0.4%
hits_050.vortex 1.0 vortex-file-compressed 160.96 MB 160.24 MB 743.49 KB -0.5%
hits_094.vortex 1.0 vortex-file-compressed 158.48 MB 157.56 MB 940.91 KB -0.6%
hits_074.vortex 1.0 vortex-file-compressed 198.64 MB 197.39 MB 1.25 MB -0.6%
hits_005.vortex 1.0 vortex-file-compressed 166.93 MB 165.60 MB 1.33 MB -0.8%
hits_073.vortex 1.0 vortex-compact 132.55 MB 131.45 MB 1.10 MB -0.8%
hits_064.vortex 1.0 vortex-compact 139.33 MB 138.12 MB 1.21 MB -0.9%
hits_076.vortex 1.0 vortex-file-compressed 160.36 MB 158.95 MB 1.41 MB -0.9%
hits_090.vortex 1.0 vortex-compact 140.63 MB 139.38 MB 1.24 MB -0.9%
hits_064.vortex 1.0 vortex-file-compressed 191.72 MB 190.00 MB 1.71 MB -0.9%
hits_057.vortex 1.0 vortex-file-compressed 159.34 MB 157.83 MB 1.51 MB -0.9%
hits_038.vortex 1.0 vortex-file-compressed 191.41 MB 188.97 MB 2.44 MB -1.3%
hits_014.vortex 1.0 vortex-compact 133.13 MB 131.19 MB 1.94 MB -1.5%
duckdb.db 1.0 vortex-compact 268.00 KB 0 B 268.00 KB -100.0%

Totals:

  • vortex-compact: 11.80 GB → 11.80 GB (+0.0%)
  • vortex-file-compressed: 15.89 GB → 15.89 GB (-0.0%)

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: TPC-H SF=10 on NVME

Verdict: No clear signal (low confidence)
Attributed Vortex impact: +0.9%
Engines: DataFusion No clear signal (+1.7%, low confidence) · DuckDB No clear signal (+0.1%, low confidence)
Vortex (geomean): 1.018x ➖
Parquet (geomean): 1.002x ➖
Shifts: Parquet (control) +0.2% · Median polish +0.3%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (1.046x ➖, 0↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:vortex-file-compressed 422933695 400332144 1.06
tpch_q02/datafusion:vortex-file-compressed 102837867 103023901 1.00
tpch_q03/datafusion:vortex-file-compressed 195794697 196180031 1.00
tpch_q04/datafusion:vortex-file-compressed 95433274 96393718 0.99
tpch_q05/datafusion:vortex-file-compressed 339371339 340074888 1.00
tpch_q06/datafusion:vortex-file-compressed 41143099 39452359 1.04
tpch_q07/datafusion:vortex-file-compressed 453572734 450589903 1.01
tpch_q08/datafusion:vortex-file-compressed 342954533 345688100 0.99
tpch_q09/datafusion:vortex-file-compressed 582564002 589938834 0.99
tpch_q10/datafusion:vortex-file-compressed 227067975 222922889 1.02
tpch_q11/datafusion:vortex-file-compressed 77422580 78052560 0.99
tpch_q12/datafusion:vortex-file-compressed 115538746 111752908 1.03
tpch_q13/datafusion:vortex-file-compressed 200195108 197587492 1.01
tpch_q14/datafusion:vortex-file-compressed 51625984 50249243 1.03
tpch_q15/datafusion:vortex-file-compressed 101334672 99518856 1.02
tpch_q16/datafusion:vortex-file-compressed 74296976 76091059 0.98
tpch_q17/datafusion:vortex-file-compressed 584219219 573424584 1.02
tpch_q18/datafusion:vortex-file-compressed 822982375 825199622 1.00
tpch_q19/datafusion:vortex-file-compressed 🚨 172648983 74743792 2.31
tpch_q20/datafusion:vortex-file-compressed 157938128 160383037 0.98
tpch_q21/datafusion:vortex-file-compressed 596862854 591596733 1.01
tpch_q22/datafusion:vortex-file-compressed 55599715 55240098 1.01
datafusion / vortex-compact (1.017x ➖, 0↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:vortex-compact 466894433 484098319 0.96
tpch_q02/datafusion:vortex-compact 106094714 103469574 1.03
tpch_q03/datafusion:vortex-compact 212899577 209787631 1.01
tpch_q04/datafusion:vortex-compact 128456726 127432474 1.01
tpch_q05/datafusion:vortex-compact 351722586 350859266 1.00
tpch_q06/datafusion:vortex-compact 62889665 62286138 1.01
tpch_q07/datafusion:vortex-compact 487967612 473479111 1.03
tpch_q08/datafusion:vortex-compact 351597149 355648395 0.99
tpch_q09/datafusion:vortex-compact 603909066 602933957 1.00
tpch_q10/datafusion:vortex-compact 254184600 254580247 1.00
tpch_q11/datafusion:vortex-compact 79027774 79259638 1.00
tpch_q12/datafusion:vortex-compact 176259315 175326892 1.01
tpch_q13/datafusion:vortex-compact 241748767 242741637 1.00
tpch_q14/datafusion:vortex-compact 68761168 68109614 1.01
tpch_q15/datafusion:vortex-compact 153307766 152997864 1.00
tpch_q16/datafusion:vortex-compact 80453760 78123910 1.03
tpch_q17/datafusion:vortex-compact 576811731 579456194 1.00
tpch_q18/datafusion:vortex-compact 863405677 861761684 1.00
tpch_q19/datafusion:vortex-compact 🚨 285508310 208740880 1.37
tpch_q20/datafusion:vortex-compact 180994576 179760794 1.01
tpch_q21/datafusion:vortex-compact 676245077 674078210 1.00
tpch_q22/datafusion:vortex-compact 61770054 63863308 0.97
datafusion / parquet (1.005x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:parquet 486168820 469783564 1.03
tpch_q02/datafusion:parquet 182021611 173707005 1.05
tpch_q03/datafusion:parquet 263496086 255418582 1.03
tpch_q04/datafusion:parquet 121321952 119229483 1.02
tpch_q05/datafusion:parquet 400558326 402030086 1.00
tpch_q06/datafusion:parquet 130463412 128619755 1.01
tpch_q07/datafusion:parquet 567580591 560777039 1.01
tpch_q08/datafusion:parquet 451554295 450913653 1.00
tpch_q09/datafusion:parquet 724767003 725635949 1.00
tpch_q10/datafusion:parquet 566921583 570904259 0.99
tpch_q11/datafusion:parquet 121231297 123039806 0.99
tpch_q12/datafusion:parquet 210171638 209477173 1.00
tpch_q13/datafusion:parquet 347098312 345690292 1.00
tpch_q14/datafusion:parquet 153249534 152084280 1.01
tpch_q15/datafusion:parquet 258425602 261355678 0.99
tpch_q16/datafusion:parquet 126583110 120349125 1.05
tpch_q17/datafusion:parquet 659657332 672358180 0.98
tpch_q18/datafusion:parquet 877917808 866405334 1.01
tpch_q19/datafusion:parquet 277254718 286569287 0.97
tpch_q20/datafusion:parquet 296349984 302296245 0.98
tpch_q21/datafusion:parquet 651709239 659573180 0.99
tpch_q22/datafusion:parquet 212102266 210748960 1.01
datafusion / arrow (1.004x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:arrow 686778973 694005825 0.99
tpch_q02/datafusion:arrow 113567217 111632526 1.02
tpch_q03/datafusion:arrow 502186324 494192987 1.02
tpch_q04/datafusion:arrow 357082258 368655266 0.97
tpch_q05/datafusion:arrow 732283061 735835010 1.00
tpch_q06/datafusion:arrow 323761027 326642630 0.99
tpch_q07/datafusion:arrow 1146668921 1141678375 1.00
tpch_q08/datafusion:arrow 951689388 937459856 1.02
tpch_q09/datafusion:arrow 1078270661 1074099123 1.00
tpch_q10/datafusion:arrow 616912525 625971698 0.99
tpch_q11/datafusion:arrow 93188955 93180651 1.00
tpch_q12/datafusion:arrow 1426106199 1380261441 1.03
tpch_q13/datafusion:arrow 473907922 462754523 1.02
tpch_q14/datafusion:arrow 353451469 353795357 1.00
tpch_q15/datafusion:arrow 728587965 722199058 1.01
tpch_q16/datafusion:arrow 82103125 80043279 1.03
tpch_q17/datafusion:arrow 958470309 954809033 1.00
tpch_q18/datafusion:arrow 1777777454 1787467489 0.99
tpch_q19/datafusion:arrow 551086551 539438077 1.02
tpch_q20/datafusion:arrow 501877965 494457496 1.02
tpch_q21/datafusion:arrow 3078423462 3096150250 0.99
tpch_q22/datafusion:arrow 80163215 81377696 0.99
duckdb / vortex-file-compressed (1.007x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:vortex-file-compressed 171212476 169611214 1.01
tpch_q02/duckdb:vortex-file-compressed 53122928 51873723 1.02
tpch_q03/duckdb:vortex-file-compressed 119841745 120054088 1.00
tpch_q04/duckdb:vortex-file-compressed 152904841 151723901 1.01
tpch_q05/duckdb:vortex-file-compressed 134414124 133505085 1.01
tpch_q06/duckdb:vortex-file-compressed 35707895 34507778 1.03
tpch_q07/duckdb:vortex-file-compressed 130221320 128631732 1.01
tpch_q08/duckdb:vortex-file-compressed 168423498 168582243 1.00
tpch_q09/duckdb:vortex-file-compressed 392355313 390995573 1.00
tpch_q10/duckdb:vortex-file-compressed 191573933 191097340 1.00
tpch_q11/duckdb:vortex-file-compressed 30496498 30495689 1.00
tpch_q12/duckdb:vortex-file-compressed 107621563 103956471 1.04
tpch_q13/duckdb:vortex-file-compressed 273721639 275735414 0.99
tpch_q14/duckdb:vortex-file-compressed 53745388 52924298 1.02
tpch_q15/duckdb:vortex-file-compressed 89091527 87757955 1.02
tpch_q16/duckdb:vortex-file-compressed 76187604 76355132 1.00
tpch_q17/duckdb:vortex-file-compressed 88128577 87473139 1.01
tpch_q18/duckdb:vortex-file-compressed 285805731 284302416 1.01
tpch_q19/duckdb:vortex-file-compressed 74911803 74048267 1.01
tpch_q20/duckdb:vortex-file-compressed 140157022 140016078 1.00
tpch_q21/duckdb:vortex-file-compressed 465103154 473356026 0.98
tpch_q22/duckdb:vortex-file-compressed 63821756 63763984 1.00
duckdb / vortex-compact (1.003x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:vortex-compact 254060398 252712974 1.01
tpch_q02/duckdb:vortex-compact 61758004 62405974 0.99
tpch_q03/duckdb:vortex-compact 155881967 155287669 1.00
tpch_q04/duckdb:vortex-compact 212953502 213294449 1.00
tpch_q05/duckdb:vortex-compact 181526976 180508182 1.01
tpch_q06/duckdb:vortex-compact 58029449 57144551 1.02
tpch_q07/duckdb:vortex-compact 212633901 213157134 1.00
tpch_q08/duckdb:vortex-compact 215687388 217828785 0.99
tpch_q09/duckdb:vortex-compact 469506709 459605736 1.02
tpch_q10/duckdb:vortex-compact 245029040 240763796 1.02
tpch_q11/duckdb:vortex-compact 38246049 37838528 1.01
tpch_q12/duckdb:vortex-compact 192783416 189861981 1.02
tpch_q13/duckdb:vortex-compact 321086014 322877459 0.99
tpch_q14/duckdb:vortex-compact 74516039 73544865 1.01
tpch_q15/duckdb:vortex-compact 116435192 116934834 1.00
tpch_q16/duckdb:vortex-compact 79020664 78880524 1.00
tpch_q17/duckdb:vortex-compact 103136639 105538563 0.98
tpch_q18/duckdb:vortex-compact 350883926 345334747 1.02
tpch_q19/duckdb:vortex-compact 91621557 92594149 0.99
tpch_q20/duckdb:vortex-compact 180045343 180174238 1.00
tpch_q21/duckdb:vortex-compact 626688375 623988026 1.00
tpch_q22/duckdb:vortex-compact 70950375 71347279 0.99
duckdb / parquet (0.999x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:parquet 267735489 262359041 1.02
tpch_q02/duckdb:parquet 104806881 104695174 1.00
tpch_q03/duckdb:parquet 209891394 209270308 1.00
tpch_q04/duckdb:parquet 133200799 135565006 0.98
tpch_q05/duckdb:parquet 226318752 226372995 1.00
tpch_q06/duckdb:parquet 73471610 74520979 0.99
tpch_q07/duckdb:parquet 185778167 187561085 0.99
tpch_q08/duckdb:parquet 262022169 258987313 1.01
tpch_q09/duckdb:parquet 472742446 487543452 0.97
tpch_q10/duckdb:parquet 621985234 621602965 1.00
tpch_q11/duckdb:parquet 68390765 67212635 1.02
tpch_q12/duckdb:parquet 130451807 133487539 0.98
tpch_q13/duckdb:parquet 452092604 446152882 1.01
tpch_q14/duckdb:parquet 177044845 178987333 0.99
tpch_q15/duckdb:parquet 102829868 103698331 0.99
tpch_q16/duckdb:parquet 163715548 154858551 1.06
tpch_q17/duckdb:parquet 182131009 182640661 1.00
tpch_q18/duckdb:parquet 362885709 363266386 1.00
tpch_q19/duckdb:parquet 280704259 282493100 0.99
tpch_q20/duckdb:parquet 229191765 231242598 0.99
tpch_q21/duckdb:parquet 546286649 549567537 0.99
tpch_q22/duckdb:parquet 293089164 293206170 1.00
duckdb / duckdb (0.990x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:duckdb 120471423 121043891 1.00
tpch_q02/duckdb:duckdb 49462410 49582606 1.00
tpch_q03/duckdb:duckdb 104315460 104145511 1.00
tpch_q04/duckdb:duckdb 137947202 139679742 0.99
tpch_q05/duckdb:duckdb 119023741 119394331 1.00
tpch_q06/duckdb:duckdb 44639493 45103105 0.99
tpch_q07/duckdb:duckdb 90150247 90790695 0.99
tpch_q08/duckdb:duckdb 117821313 118834249 0.99
tpch_q09/duckdb:duckdb 280337172 281601259 1.00
tpch_q10/duckdb:duckdb 213545309 215682159 0.99
tpch_q11/duckdb:duckdb 18871370 19207259 0.98
tpch_q12/duckdb:duckdb 89661697 91571003 0.98
tpch_q13/duckdb:duckdb 229096500 229489831 1.00
tpch_q14/duckdb:duckdb 77542627 78234231 0.99
tpch_q15/duckdb:duckdb 82439874 82300206 1.00
tpch_q16/duckdb:duckdb 76119364 76279525 1.00
tpch_q17/duckdb:duckdb 87676470 87665996 1.00
tpch_q18/duckdb:duckdb 233917146 236127442 0.99
tpch_q19/duckdb:duckdb 123308412 123966714 0.99
tpch_q20/duckdb:duckdb 117967500 118679579 0.99
tpch_q21/duckdb:duckdb 300965940 301205049 1.00
tpch_q22/duckdb:duckdb 66340565 72724301 0.91

File Size Changes (27 files changed, -0.0% overall, 13↑ 14↓)
File Scale Format Base HEAD Change %
supplier_0.vortex 10.0 vortex-file-compressed 5.71 MB 5.78 MB +73.86 KB +1.3%
part_1.vortex 10.0 vortex-compact 16.79 MB 16.93 MB +140.02 KB +0.8%
part_0.vortex 10.0 vortex-file-compressed 24.66 MB 24.82 MB +168.09 KB +0.7%
orders_0.vortex 10.0 vortex-file-compressed 132.88 MB 133.30 MB +432.41 KB +0.3%
part_0.vortex 10.0 vortex-compact 16.93 MB 16.97 MB +39.45 KB +0.2%
partsupp_0.vortex 10.0 vortex-compact 105.29 MB 105.48 MB +196.27 KB +0.2%
lineitem_4.vortex 10.0 vortex-file-compressed 129.45 MB 129.63 MB +182.43 KB +0.1%
partsupp_0.vortex 10.0 vortex-file-compressed 119.69 MB 119.79 MB +98.95 KB +0.1%
lineitem_1.vortex 10.0 vortex-file-compressed 129.27 MB 129.36 MB +97.02 KB +0.1%
lineitem_9.vortex 10.0 vortex-file-compressed 129.23 MB 129.26 MB +32.12 KB +0.0%
lineitem_3.vortex 10.0 vortex-file-compressed 129.36 MB 129.39 MB +28.12 KB +0.0%
lineitem_6.vortex 10.0 vortex-file-compressed 129.49 MB 129.51 MB +19.73 KB +0.0%
customer_0.vortex 10.0 vortex-compact 74.07 MB 74.07 MB +496 B +0.0%
partsupp_1.vortex 10.0 vortex-file-compressed 119.74 MB 119.71 MB 27.51 KB -0.0%
lineitem_12.vortex 10.0 vortex-file-compressed 129.53 MB 129.50 MB 31.73 KB -0.0%
lineitem_2.vortex 10.0 vortex-file-compressed 129.43 MB 129.40 MB 37.41 KB -0.0%
customer_0.vortex 10.0 vortex-file-compressed 88.52 MB 88.49 MB 29.22 KB -0.0%
orders_2.vortex 10.0 vortex-file-compressed 134.87 MB 134.81 MB 66.02 KB -0.0%
lineitem_10.vortex 10.0 vortex-file-compressed 129.51 MB 129.43 MB 75.01 KB -0.1%
lineitem_0.vortex 10.0 vortex-file-compressed 129.44 MB 129.37 MB 76.11 KB -0.1%
lineitem_11.vortex 10.0 vortex-file-compressed 129.33 MB 129.26 MB 79.31 KB -0.1%
lineitem_5.vortex 10.0 vortex-file-compressed 129.79 MB 129.68 MB 104.63 KB -0.1%
lineitem_7.vortex 10.0 vortex-file-compressed 129.41 MB 129.24 MB 178.50 KB -0.1%
lineitem_8.vortex 10.0 vortex-file-compressed 129.27 MB 129.04 MB 230.71 KB -0.2%
partsupp_1.vortex 10.0 vortex-compact 105.21 MB 104.87 MB 348.62 KB -0.3%
orders_1.vortex 10.0 vortex-file-compressed 134.83 MB 134.34 MB 501.94 KB -0.4%
part_1.vortex 10.0 vortex-file-compressed 24.75 MB 24.49 MB 263.35 KB -1.0%

Totals:

  • vortex-compact: 1.93 GB → 1.93 GB (+0.0%)
  • vortex-file-compressed: 2.41 GB → 2.41 GB (-0.0%)

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: Random Access

Vortex (geomean): 1.003x ➖
Parquet (geomean): 1.004x ➖

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

unknown / unknown (1.002x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
random-access/feature-vectors/correlated/lance-tokio-local-disk 359440 372420 0.97
random-access/feature-vectors/correlated/lance-tokio-local-disk-footer 975072 1026817 0.95
random-access/feature-vectors/correlated/parquet-tokio-local-disk 8278100104 8497629842 0.97
random-access/feature-vectors/correlated/parquet-tokio-local-disk-footer 8201354500 8267203935 0.99
random-access/feature-vectors/correlated/vortex-tokio-local-disk 3004282 3070482 0.98
random-access/feature-vectors/correlated/vortex-tokio-local-disk-footer 2464076 2414640 1.02
random-access/feature-vectors/uniform/lance-tokio-local-disk 1168543 1140011 1.03
random-access/feature-vectors/uniform/lance-tokio-local-disk-footer 1768140 1831120 0.97
random-access/feature-vectors/uniform/parquet-tokio-local-disk 8337946301 8198777742 1.02
random-access/feature-vectors/uniform/parquet-tokio-local-disk-footer 8225757040 8254312981 1.00
random-access/feature-vectors/uniform/vortex-tokio-local-disk 3397600 3374897 1.01
random-access/feature-vectors/uniform/vortex-tokio-local-disk-footer 5578847 5552510 1.00
random-access/lance-tokio-local-disk 619265 621524 1.00
random-access/lance-tokio-local-disk-footer 1259014 1270377 0.99
random-access/nested-lists/correlated/lance-tokio-local-disk 220258 220136 1.00
random-access/nested-lists/correlated/lance-tokio-local-disk-footer 549430 553968 0.99
random-access/nested-lists/correlated/parquet-tokio-local-disk 125299389 125995077 0.99
random-access/nested-lists/correlated/parquet-tokio-local-disk-footer 127417686 126932250 1.00
random-access/nested-lists/correlated/vortex-tokio-local-disk 338272 333255 1.02
random-access/nested-lists/correlated/vortex-tokio-local-disk-footer 427909 422255 1.01
random-access/nested-lists/uniform/lance-tokio-local-disk 996451 999045 1.00
random-access/nested-lists/uniform/lance-tokio-local-disk-footer 1317897 1318400 1.00
random-access/nested-lists/uniform/parquet-tokio-local-disk 128496625 126730696 1.01
random-access/nested-lists/uniform/parquet-tokio-local-disk-footer 125435210 129537686 0.97
random-access/nested-lists/uniform/vortex-tokio-local-disk 1834310 1869600 0.98
random-access/nested-lists/uniform/vortex-tokio-local-disk-footer 1933453 1932969 1.00
random-access/nested-structs/correlated/lance-tokio-local-disk 349186 346364 1.01
random-access/nested-structs/correlated/lance-tokio-local-disk-footer 524283 518292 1.01
random-access/nested-structs/correlated/parquet-tokio-local-disk 19695509 19758534 1.00
random-access/nested-structs/correlated/parquet-tokio-local-disk-footer 20348014 19558749 1.04
random-access/nested-structs/correlated/vortex-tokio-local-disk 406482 413306 0.98
random-access/nested-structs/correlated/vortex-tokio-local-disk-footer 582868 554784 1.05
random-access/nested-structs/uniform/lance-tokio-local-disk 2518204 2363594 1.07
random-access/nested-structs/uniform/lance-tokio-local-disk-footer 2635552 2644095 1.00
random-access/nested-structs/uniform/parquet-tokio-local-disk 20664335 20728627 1.00
random-access/nested-structs/uniform/parquet-tokio-local-disk-footer 19791717 19653935 1.01
random-access/nested-structs/uniform/vortex-tokio-local-disk 1124972 1159117 0.97
random-access/nested-structs/uniform/vortex-tokio-local-disk-footer 1460400 1379126 1.06
random-access/parquet-tokio-local-disk 165369254 165292954 1.00
random-access/parquet-tokio-local-disk-footer 166803732 165919946 1.01
random-access/taxi/correlated/lance-tokio-local-disk 916490 916836 1.00
random-access/taxi/correlated/lance-tokio-local-disk-footer 1798949 1767318 1.02
random-access/taxi/correlated/parquet-tokio-local-disk 249719733 248317208 1.01
random-access/taxi/correlated/parquet-tokio-local-disk-footer 250504037 245990603 1.02
random-access/taxi/correlated/vortex-tokio-local-disk 1080872 1044862 1.03
random-access/taxi/correlated/vortex-tokio-local-disk-footer 1649918 1625346 1.02
random-access/taxi/uniform/lance-tokio-local-disk 9496979 9295052 1.02
random-access/taxi/uniform/lance-tokio-local-disk-footer 9863884 10127157 0.97
random-access/taxi/uniform/parquet-tokio-local-disk 264418681 261577058 1.01
random-access/taxi/uniform/parquet-tokio-local-disk-footer 267155179 260665326 1.02
random-access/taxi/uniform/vortex-tokio-local-disk 4082088 4490543 0.91
random-access/taxi/uniform/vortex-tokio-local-disk-footer 5130668 5109351 1.00
random-access/vortex-tokio-local-disk 682332 679285 1.00
random-access/vortex-tokio-local-disk-footer 1131731 1111028 1.02

Clarify signed fixed-size-list index reinterpretation, remove redundant selector length validation, and hoist ListView validity during rebuild.

Signed-off-by: Daniel King <dan@spiraldb.com>
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: Clickbench on NVME

Verdict: No clear signal (low confidence)
Attributed Vortex impact: +0.9%
Engines: DataFusion No clear signal (+0.1%, environment too noisy confidence) · DuckDB No clear signal (+1.1%, low confidence)
Vortex (geomean): 0.999x ➖
Parquet (geomean): 0.990x ➖
Shifts: Parquet (control) -1.0% · Median polish -0.9%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (0.987x ➖, 0↑ 2↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
clickbench_q00/datafusion:vortex-file-compressed 🚨 1949796 1680146 1.16
clickbench_q01/datafusion:vortex-file-compressed 17608022 17950595 0.98
clickbench_q02/datafusion:vortex-file-compressed 34858829 36925015 0.94
clickbench_q03/datafusion:vortex-file-compressed 37187796 37873303 0.98
clickbench_q04/datafusion:vortex-file-compressed 232700849 240004347 0.97
clickbench_q05/datafusion:vortex-file-compressed 304505698 314305982 0.97
clickbench_q06/datafusion:vortex-file-compressed 1585596 1577409 1.01
clickbench_q07/datafusion:vortex-file-compressed 22117274 23944178 0.92
clickbench_q08/datafusion:vortex-file-compressed 326119660 330590634 0.99
clickbench_q09/datafusion:vortex-file-compressed 452695219 451455104 1.00
clickbench_q10/datafusion:vortex-file-compressed 72580183 74869936 0.97
clickbench_q11/datafusion:vortex-file-compressed 84322185 85417695 0.99
clickbench_q12/datafusion:vortex-file-compressed 256859893 259154154 0.99
clickbench_q13/datafusion:vortex-file-compressed 415356933 427522179 0.97
clickbench_q14/datafusion:vortex-file-compressed 255656371 259066726 0.99
clickbench_q15/datafusion:vortex-file-compressed 271787017 279653247 0.97
clickbench_q16/datafusion:vortex-file-compressed 640837985 653978714 0.98
clickbench_q17/datafusion:vortex-file-compressed 641104172 648961601 0.99
clickbench_q18/datafusion:vortex-file-compressed 1328781678 1423877080 0.93
clickbench_q19/datafusion:vortex-file-compressed 27932261 28216734 0.99
clickbench_q20/datafusion:vortex-file-compressed 298771462 318602483 0.94
clickbench_q21/datafusion:vortex-file-compressed 388780044 400892561 0.97
clickbench_q22/datafusion:vortex-file-compressed 485870749 498522268 0.97
clickbench_q23/datafusion:vortex-file-compressed 615543285 621407205 0.99
clickbench_q24/datafusion:vortex-file-compressed 🚨 44471187 39970563 1.11
clickbench_q25/datafusion:vortex-file-compressed 78856315 77093199 1.02
clickbench_q26/datafusion:vortex-file-compressed 43109953 43248530 1.00
clickbench_q27/datafusion:vortex-file-compressed 404768822 413381319 0.98
clickbench_q28/datafusion:vortex-file-compressed 2342526979 2370514455 0.99
clickbench_q29/datafusion:vortex-file-compressed 50369815 52377031 0.96
clickbench_q30/datafusion:vortex-file-compressed 223936251 232384769 0.96
clickbench_q31/datafusion:vortex-file-compressed 239726849 245209131 0.98
clickbench_q32/datafusion:vortex-file-compressed 1056277206 1048036117 1.01
clickbench_q33/datafusion:vortex-file-compressed 1392089177 1413944624 0.98
clickbench_q34/datafusion:vortex-file-compressed 1392221677 1409564014 0.99
clickbench_q35/datafusion:vortex-file-compressed 230763687 247867997 0.93
clickbench_q36/datafusion:vortex-file-compressed 59702501 56421931 1.06
clickbench_q37/datafusion:vortex-file-compressed 24194436 25435802 0.95
clickbench_q38/datafusion:vortex-file-compressed 16815066 16041141 1.05
clickbench_q39/datafusion:vortex-file-compressed 124481047 124458605 1.00
clickbench_q40/datafusion:vortex-file-compressed 12627588 12557179 1.01
clickbench_q41/datafusion:vortex-file-compressed 12154194 12657164 0.96
clickbench_q42/datafusion:vortex-file-compressed 11140918 11545546 0.96
datafusion / parquet (0.986x ➖, 0↑ 2↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
clickbench_q00/datafusion:parquet 1576254 1581533 1.00
clickbench_q01/datafusion:parquet 19133927 19539516 0.98
clickbench_q02/datafusion:parquet 41310613 44226946 0.93
clickbench_q03/datafusion:parquet 33397903 35707326 0.94
clickbench_q04/datafusion:parquet 264074150 266204604 0.99
clickbench_q05/datafusion:parquet 318075553 314209049 1.01
clickbench_q06/datafusion:parquet 🚨 1746892 1521042 1.15
clickbench_q07/datafusion:parquet 22123127 20957701 1.06
clickbench_q08/datafusion:parquet 336336251 333126563 1.01
clickbench_q09/datafusion:parquet 462595096 472340037 0.98
clickbench_q10/datafusion:parquet 91391060 92696019 0.99
clickbench_q11/datafusion:parquet 115235936 116825313 0.99
clickbench_q12/datafusion:parquet 294126324 303824465 0.97
clickbench_q13/datafusion:parquet 463511369 469134901 0.99
clickbench_q14/datafusion:parquet 301225499 313545291 0.96
clickbench_q15/datafusion:parquet 273034113 285291990 0.96
clickbench_q16/datafusion:parquet 642915855 662346379 0.97
clickbench_q17/datafusion:parquet 630013675 670165850 0.94
clickbench_q18/datafusion:parquet 1368064807 1410453497 0.97
clickbench_q19/datafusion:parquet 25676482 27500011 0.93
clickbench_q20/datafusion:parquet 550461490 557528251 0.99
clickbench_q21/datafusion:parquet 611535573 616468530 0.99
clickbench_q22/datafusion:parquet 896034002 915368065 0.98
clickbench_q23/datafusion:parquet 4003085094 4057302705 0.99
clickbench_q24/datafusion:parquet 52921886 54677895 0.97
clickbench_q25/datafusion:parquet 126741009 129039489 0.98
clickbench_q26/datafusion:parquet 51664887 51735684 1.00
clickbench_q27/datafusion:parquet 643911364 659467761 0.98
clickbench_q28/datafusion:parquet 2395519366 2436323943 0.98
clickbench_q29/datafusion:parquet 🚨 54223177 44362988 1.22
clickbench_q30/datafusion:parquet 310265305 313605875 0.99
clickbench_q31/datafusion:parquet 340633088 347571985 0.98
clickbench_q32/datafusion:parquet 1101208436 1094710313 1.01
clickbench_q33/datafusion:parquet 1471228110 1528264416 0.96
clickbench_q34/datafusion:parquet 1477057127 1534165737 0.96
clickbench_q35/datafusion:parquet 247664362 248796680 1.00
clickbench_q36/datafusion:parquet 103416505 108671629 0.95
clickbench_q37/datafusion:parquet 41494813 43041253 0.96
clickbench_q38/datafusion:parquet 60547443 62389215 0.97
clickbench_q39/datafusion:parquet 204018824 208271385 0.98
clickbench_q40/datafusion:parquet 22081746 24102918 0.92
clickbench_q41/datafusion:parquet 22263569 21883165 1.02
clickbench_q42/datafusion:parquet 21491380 22131508 0.97
duckdb / vortex-file-compressed (1.012x ➖, 1↑ 6↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
clickbench_q00/duckdb:vortex-file-compressed 9608673 9641833 1.00
clickbench_q01/duckdb:vortex-file-compressed 🚀 13070834 16351403 0.80
clickbench_q02/duckdb:vortex-file-compressed 🚨 26322662 20782859 1.27
clickbench_q03/duckdb:vortex-file-compressed 🚨 33061441 27452220 1.20
clickbench_q04/duckdb:vortex-file-compressed 198272199 202579196 0.98
clickbench_q05/duckdb:vortex-file-compressed 185652205 187885730 0.99
clickbench_q06/duckdb:vortex-file-compressed 19515206 18330306 1.06
clickbench_q07/duckdb:vortex-file-compressed 18761893 20505443 0.91
clickbench_q08/duckdb:vortex-file-compressed 263710150 276134267 0.96
clickbench_q09/duckdb:vortex-file-compressed 349728321 355650909 0.98
clickbench_q10/duckdb:vortex-file-compressed 72705277 74212935 0.98
clickbench_q11/duckdb:vortex-file-compressed 82454225 85781024 0.96
clickbench_q12/duckdb:vortex-file-compressed 206916689 212105507 0.98
clickbench_q13/duckdb:vortex-file-compressed 409535277 416913703 0.98
clickbench_q14/duckdb:vortex-file-compressed 239742773 249387051 0.96
clickbench_q15/duckdb:vortex-file-compressed 257423605 254817608 1.01
clickbench_q16/duckdb:vortex-file-compressed 537139947 545721669 0.98
clickbench_q17/duckdb:vortex-file-compressed 431047087 433982661 0.99
clickbench_q18/duckdb:vortex-file-compressed 950095011 964858640 0.98
clickbench_q19/duckdb:vortex-file-compressed 20701879 21329791 0.97
clickbench_q20/duckdb:vortex-file-compressed 285992767 300859646 0.95
clickbench_q21/duckdb:vortex-file-compressed 379751836 385018341 0.99
clickbench_q22/duckdb:vortex-file-compressed 532636815 547986582 0.97
clickbench_q23/duckdb:vortex-file-compressed 169607142 181865935 0.93
clickbench_q24/duckdb:vortex-file-compressed 37789617 35750365 1.06
clickbench_q25/duckdb:vortex-file-compressed 87312568 86584531 1.01
clickbench_q26/duckdb:vortex-file-compressed 🚨 51491511 45781598 1.12
clickbench_q27/duckdb:vortex-file-compressed 214892580 223602052 0.96
clickbench_q28/duckdb:vortex-file-compressed 3081878374 3079451761 1.00
clickbench_q29/duckdb:vortex-file-compressed 28687182 26594874 1.08
clickbench_q30/duckdb:vortex-file-compressed 199741154 204203781 0.98
clickbench_q31/duckdb:vortex-file-compressed 286679693 301932938 0.95
clickbench_q32/duckdb:vortex-file-compressed 1129497527 1125301645 1.00
clickbench_q33/duckdb:vortex-file-compressed 1114375644 1159360555 0.96
clickbench_q34/duckdb:vortex-file-compressed 1188515142 1212330472 0.98
clickbench_q35/duckdb:vortex-file-compressed 367517546 369191489 1.00
clickbench_q36/duckdb:vortex-file-compressed 31655147 28786737 1.10
clickbench_q37/duckdb:vortex-file-compressed 🚨 22943487 20356376 1.13
clickbench_q38/duckdb:vortex-file-compressed 25151750 23819651 1.06
clickbench_q39/duckdb:vortex-file-compressed 48610624 45711742 1.06
clickbench_q40/duckdb:vortex-file-compressed 🚨 25672823 20815689 1.23
clickbench_q41/duckdb:vortex-file-compressed 🚨 22628372 20265176 1.12
clickbench_q42/duckdb:vortex-file-compressed 23051642 21541801 1.07
duckdb / parquet (0.994x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
clickbench_q00/duckdb:parquet 22934302 22898195 1.00
clickbench_q01/duckdb:parquet 29694359 29600503 1.00
clickbench_q02/duckdb:parquet 49764360 49942114 1.00
clickbench_q03/duckdb:parquet 40433858 40761634 0.99
clickbench_q04/duckdb:parquet 202771327 204025858 0.99
clickbench_q05/duckdb:parquet 256363085 258229646 0.99
clickbench_q06/duckdb:parquet 48385959 47335233 1.02
clickbench_q07/duckdb:parquet 30701955 31513788 0.97
clickbench_q08/duckdb:parquet 267546191 270828016 0.99
clickbench_q09/duckdb:parquet 399287825 402102270 0.99
clickbench_q10/duckdb:parquet 84307861 82833751 1.02
clickbench_q11/duckdb:parquet 99403033 100111722 0.99
clickbench_q12/duckdb:parquet 278175993 279981966 0.99
clickbench_q13/duckdb:parquet 476442553 471463908 1.01
clickbench_q14/duckdb:parquet 313162874 314004810 1.00
clickbench_q15/duckdb:parquet 257006079 251237922 1.02
clickbench_q16/duckdb:parquet 593846129 594354821 1.00
clickbench_q17/duckdb:parquet 501968881 499797181 1.00
clickbench_q18/duckdb:parquet 1030873321 1037736469 0.99
clickbench_q19/duckdb:parquet 27421517 27917298 0.98
clickbench_q20/duckdb:parquet 421595467 426832450 0.99
clickbench_q21/duckdb:parquet 528121257 532808809 0.99
clickbench_q22/duckdb:parquet 920793441 921252868 1.00
clickbench_q23/duckdb:parquet 266392749 275158077 0.97
clickbench_q24/duckdb:parquet 71915818 72820308 0.99
clickbench_q25/duckdb:parquet 163111143 161998170 1.01
clickbench_q26/duckdb:parquet 54030308 55870862 0.97
clickbench_q27/duckdb:parquet 467650244 472976979 0.99
clickbench_q28/duckdb:parquet 4767803287 4783602860 1.00
clickbench_q29/duckdb:parquet 42452360 42307701 1.00
clickbench_q30/duckdb:parquet 309576785 312967722 0.99
clickbench_q31/duckdb:parquet 374952848 376027935 1.00
clickbench_q32/duckdb:parquet 1110447681 1116870322 0.99
clickbench_q33/duckdb:parquet 1100601192 1106199551 0.99
clickbench_q34/duckdb:parquet 1149744652 1162367688 0.99
clickbench_q35/duckdb:parquet 367687906 378690482 0.97
clickbench_q36/duckdb:parquet 47906893 46762329 1.02
clickbench_q37/duckdb:parquet 34133207 34323870 0.99
clickbench_q38/duckdb:parquet 35445658 36822035 0.96
clickbench_q39/duckdb:parquet 76268778 78948712 0.97
clickbench_q40/duckdb:parquet 20443107 19528444 1.05
clickbench_q41/duckdb:parquet 20696460 21667494 0.96
clickbench_q42/duckdb:parquet 22346482 22515984 0.99
duckdb / duckdb (0.997x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
clickbench_q00/duckdb:duckdb 16862998 17168146 0.98
clickbench_q01/duckdb:duckdb 34118731 34082362 1.00
clickbench_q02/duckdb:duckdb 50603990 50865062 0.99
clickbench_q03/duckdb:duckdb 54877944 55036748 1.00
clickbench_q04/duckdb:duckdb 209357064 210446131 0.99
clickbench_q05/duckdb:duckdb 282223982 286946613 0.98
clickbench_q06/duckdb:duckdb 32664477 33785133 0.97
clickbench_q07/duckdb:duckdb 34808084 35039166 0.99
clickbench_q08/duckdb:duckdb 280523719 277220870 1.01
clickbench_q09/duckdb:duckdb 393220396 396962622 0.99
clickbench_q10/duckdb:duckdb 116104902 117946768 0.98
clickbench_q11/duckdb:duckdb 126956470 126796155 1.00
clickbench_q12/duckdb:duckdb 256839928 259986224 0.99
clickbench_q13/duckdb:duckdb 440226066 444655235 0.99
clickbench_q14/duckdb:duckdb 282888294 287272324 0.98
clickbench_q15/duckdb:duckdb 239501083 242367025 0.99
clickbench_q16/duckdb:duckdb 557917107 564994312 0.99
clickbench_q17/duckdb:duckdb 470752357 468935744 1.00
clickbench_q18/duckdb:duckdb 980641614 1023039473 0.96
clickbench_q19/duckdb:duckdb 35183660 34435234 1.02
clickbench_q20/duckdb:duckdb 470085965 463609642 1.01
clickbench_q21/duckdb:duckdb 481423139 468582472 1.03
clickbench_q22/duckdb:duckdb 548445961 562398153 0.98
clickbench_q23/duckdb:duckdb 242730597 251432327 0.97
clickbench_q24/duckdb:duckdb 61035636 60223245 1.01
clickbench_q25/duckdb:duckdb 148507399 148545964 1.00
clickbench_q26/duckdb:duckdb 61015599 61937155 0.99
clickbench_q27/duckdb:duckdb 422292251 415288657 1.02
clickbench_q28/duckdb:duckdb 4411861298 4433303676 1.00
clickbench_q29/duckdb:duckdb 50513239 50054837 1.01
clickbench_q30/duckdb:duckdb 274829616 281896856 0.97
clickbench_q31/duckdb:duckdb 361571732 366592801 0.99
clickbench_q32/duckdb:duckdb 1106126206 1141504485 0.97
clickbench_q33/duckdb:duckdb 1121767339 1121913549 1.00
clickbench_q34/duckdb:duckdb 1194561584 1200623258 0.99
clickbench_q35/duckdb:duckdb 298679167 301417254 0.99
clickbench_q36/duckdb:duckdb 49577380 48733230 1.02
clickbench_q37/duckdb:duckdb 28863446 28316816 1.02
clickbench_q38/duckdb:duckdb 33453429 33056992 1.01
clickbench_q39/duckdb:duckdb 86592935 79186073 1.09
clickbench_q40/duckdb:duckdb 27429994 27740946 0.99
clickbench_q41/duckdb:duckdb 26755733 26957337 0.99
clickbench_q42/duckdb:duckdb 29326905 29035241 1.01

File Size Changes (104 files changed, +0.0% overall, 51↑ 53↓)
File Scale Format Base HEAD Change %
hits_90.vortex 1.0 vortex-file-compressed 139.80 MB 141.84 MB +2.04 MB +1.5%
hits_65.vortex 1.0 vortex-compact 129.38 MB 129.70 MB +327.20 KB +0.2%
hits_21.vortex 1.0 vortex-file-compressed 92.96 MB 93.15 MB +198.55 KB +0.2%
hits_17.vortex 1.0 vortex-file-compressed 87.06 MB 87.23 MB +172.16 KB +0.2%
hits_25.vortex 1.0 vortex-file-compressed 113.32 MB 113.53 MB +212.48 KB +0.2%
hits_92.vortex 1.0 vortex-file-compressed 146.49 MB 146.70 MB +216.20 KB +0.1%
hits_15.vortex 1.0 vortex-file-compressed 89.12 MB 89.24 MB +122.73 KB +0.1%
hits_33.vortex 1.0 vortex-file-compressed 57.03 MB 57.10 MB +66.11 KB +0.1%
hits_65.vortex 1.0 vortex-file-compressed 183.34 MB 183.54 MB +205.00 KB +0.1%
hits_96.vortex 1.0 vortex-file-compressed 135.09 MB 135.23 MB +141.06 KB +0.1%
hits_79.vortex 1.0 vortex-file-compressed 143.79 MB 143.93 MB +144.98 KB +0.1%
hits_20.vortex 1.0 vortex-file-compressed 62.51 MB 62.57 MB +62.45 KB +0.1%
hits_13.vortex 1.0 vortex-file-compressed 99.04 MB 99.12 MB +89.86 KB +0.1%
hits_22.vortex 1.0 vortex-file-compressed 76.83 MB 76.90 MB +63.57 KB +0.1%
hits_47.vortex 1.0 vortex-file-compressed 41.24 MB 41.27 MB +30.43 KB +0.1%
hits_8.vortex 1.0 vortex-file-compressed 93.21 MB 93.27 MB +65.41 KB +0.1%
hits_75.vortex 1.0 vortex-file-compressed 63.23 MB 63.28 MB +41.73 KB +0.1%
hits_39.vortex 1.0 vortex-file-compressed 80.05 MB 80.10 MB +49.28 KB +0.1%
hits_76.vortex 1.0 vortex-file-compressed 113.78 MB 113.85 MB +69.52 KB +0.1%
hits_71.vortex 1.0 vortex-file-compressed 101.63 MB 101.69 MB +58.45 KB +0.1%
hits_53.vortex 1.0 vortex-file-compressed 85.69 MB 85.73 MB +48.70 KB +0.1%
hits_66.vortex 1.0 vortex-file-compressed 90.09 MB 90.13 MB +49.23 KB +0.1%
hits_99.vortex 1.0 vortex-file-compressed 122.76 MB 122.82 MB +65.68 KB +0.1%
hits_87.vortex 1.0 vortex-file-compressed 172.06 MB 172.14 MB +86.02 KB +0.0%
hits_85.vortex 1.0 vortex-file-compressed 91.43 MB 91.47 MB +42.05 KB +0.0%
hits_93.vortex 1.0 vortex-file-compressed 90.15 MB 90.19 MB +41.41 KB +0.0%
hits_18.vortex 1.0 vortex-file-compressed 104.31 MB 104.35 MB +47.62 KB +0.0%
hits_95.vortex 1.0 vortex-file-compressed 96.10 MB 96.14 MB +40.23 KB +0.0%
hits_72.vortex 1.0 vortex-file-compressed 84.41 MB 84.44 MB +32.70 KB +0.0%
hits_61.vortex 1.0 vortex-file-compressed 101.01 MB 101.05 MB +38.91 KB +0.0%
hits_86.vortex 1.0 vortex-file-compressed 69.09 MB 69.12 MB +25.55 KB +0.0%
hits_89.vortex 1.0 vortex-file-compressed 184.29 MB 184.36 MB +65.42 KB +0.0%
hits_2.vortex 1.0 vortex-file-compressed 186.01 MB 186.07 MB +64.50 KB +0.0%
hits_70.vortex 1.0 vortex-file-compressed 93.41 MB 93.43 MB +27.30 KB +0.0%
hits_82.vortex 1.0 vortex-file-compressed 99.44 MB 99.47 MB +26.12 KB +0.0%
hits_24.vortex 1.0 vortex-file-compressed 75.97 MB 75.99 MB +19.95 KB +0.0%
hits_44.vortex 1.0 vortex-file-compressed 185.87 MB 185.92 MB +48.77 KB +0.0%
hits_30.vortex 1.0 vortex-file-compressed 86.77 MB 86.79 MB +22.41 KB +0.0%
hits_59.vortex 1.0 vortex-file-compressed 101.66 MB 101.68 MB +24.29 KB +0.0%
hits_50.vortex 1.0 vortex-file-compressed 179.11 MB 179.15 MB +42.23 KB +0.0%
hits_68.vortex 1.0 vortex-file-compressed 122.65 MB 122.66 MB +19.22 KB +0.0%
hits_42.vortex 1.0 vortex-file-compressed 221.75 MB 221.78 MB +33.52 KB +0.0%
hits_36.vortex 1.0 vortex-file-compressed 68.34 MB 68.35 MB +9.73 KB +0.0%
hits_14.vortex 1.0 vortex-file-compressed 111.23 MB 111.25 MB +15.05 KB +0.0%
hits_55.vortex 1.0 vortex-file-compressed 168.86 MB 168.88 MB +15.06 KB +0.0%
hits_31.vortex 1.0 vortex-file-compressed 90.07 MB 90.07 MB +8.02 KB +0.0%
hits_5.vortex 1.0 vortex-file-compressed 92.85 MB 92.86 MB +6.69 KB +0.0%
hits_41.vortex 1.0 vortex-file-compressed 222.85 MB 222.86 MB +13.41 KB +0.0%
hits_67.vortex 1.0 vortex-file-compressed 183.94 MB 183.95 MB +6.69 KB +0.0%
hits_54.vortex 1.0 vortex-file-compressed 221.17 MB 221.18 MB +6.45 KB +0.0%
hits_62.vortex 1.0 vortex-file-compressed 117.21 MB 117.21 MB +952 B +0.0%
hits_23.vortex 1.0 vortex-file-compressed 76.47 MB 76.46 MB 4.30 KB -0.0%
hits_12.vortex 1.0 vortex-file-compressed 100.81 MB 100.80 MB 8.65 KB -0.0%
hits_74.vortex 1.0 vortex-file-compressed 119.48 MB 119.47 MB 12.01 KB -0.0%
hits_60.vortex 1.0 vortex-file-compressed 103.07 MB 103.06 MB 11.24 KB -0.0%
hits_35.vortex 1.0 vortex-file-compressed 114.97 MB 114.96 MB 13.06 KB -0.0%
hits_77.vortex 1.0 vortex-file-compressed 168.19 MB 168.17 MB 19.88 KB -0.0%
hits_45.vortex 1.0 vortex-file-compressed 121.96 MB 121.95 MB 16.93 KB -0.0%
hits_40.vortex 1.0 vortex-file-compressed 117.60 MB 117.59 MB 18.56 KB -0.0%
hits_6.vortex 1.0 vortex-file-compressed 93.31 MB 93.30 MB 17.05 KB -0.0%
hits_51.vortex 1.0 vortex-file-compressed 277.56 MB 277.50 MB 57.31 KB -0.0%
hits_1.vortex 1.0 vortex-file-compressed 138.15 MB 138.12 MB 31.02 KB -0.0%
hits_3.vortex 1.0 vortex-file-compressed 141.70 MB 141.67 MB 34.04 KB -0.0%
hits_91.vortex 1.0 vortex-file-compressed 96.85 MB 96.82 MB 25.82 KB -0.0%
hits_94.vortex 1.0 vortex-file-compressed 138.40 MB 138.37 MB 37.48 KB -0.0%
hits_81.vortex 1.0 vortex-file-compressed 100.72 MB 100.69 MB 27.48 KB -0.0%
hits_58.vortex 1.0 vortex-file-compressed 90.22 MB 90.20 MB 26.03 KB -0.0%
hits_28.vortex 1.0 vortex-file-compressed 119.72 MB 119.69 MB 36.92 KB -0.0%
hits_88.vortex 1.0 vortex-file-compressed 110.94 MB 110.91 MB 35.34 KB -0.0%
hits_57.vortex 1.0 vortex-file-compressed 128.00 MB 127.96 MB 41.30 KB -0.0%
hits_48.vortex 1.0 vortex-file-compressed 28.02 MB 28.01 MB 9.70 KB -0.0%
hits_78.vortex 1.0 vortex-file-compressed 164.14 MB 164.08 MB 57.48 KB -0.0%
hits_10.vortex 1.0 vortex-file-compressed 69.35 MB 69.32 MB 24.30 KB -0.0%
hits_46.vortex 1.0 vortex-file-compressed 69.08 MB 69.06 MB 25.23 KB -0.0%
hits_80.vortex 1.0 vortex-file-compressed 105.02 MB 104.98 MB 42.85 KB -0.0%
hits_98.vortex 1.0 vortex-file-compressed 118.16 MB 118.11 MB 52.04 KB -0.0%
hits_97.vortex 1.0 vortex-file-compressed 106.69 MB 106.64 MB 47.58 KB -0.0%
hits_56.vortex 1.0 vortex-file-compressed 123.30 MB 123.25 MB 57.12 KB -0.0%
hits_11.vortex 1.0 vortex-file-compressed 79.68 MB 79.64 MB 36.93 KB -0.0%
hits_7.vortex 1.0 vortex-file-compressed 93.93 MB 93.89 MB 45.16 KB -0.0%
hits_49.vortex 1.0 vortex-file-compressed 75.43 MB 75.40 MB 36.32 KB -0.0%
hits_19.vortex 1.0 vortex-file-compressed 73.27 MB 73.22 MB 52.51 KB -0.1%
hits_26.vortex 1.0 vortex-file-compressed 109.25 MB 109.17 MB 82.34 KB -0.1%
hits_34.vortex 1.0 vortex-file-compressed 97.39 MB 97.31 MB 81.45 KB -0.1%
hits_97.vortex 1.0 vortex-compact 69.03 MB 68.97 MB 60.21 KB -0.1%
hits_38.vortex 1.0 vortex-file-compressed 99.02 MB 98.94 MB 86.78 KB -0.1%
hits_63.vortex 1.0 vortex-file-compressed 69.07 MB 69.01 MB 64.20 KB -0.1%
hits_37.vortex 1.0 vortex-file-compressed 85.35 MB 85.27 MB 85.00 KB -0.1%
hits_43.vortex 1.0 vortex-file-compressed 226.44 MB 226.21 MB 239.94 KB -0.1%
hits_27.vortex 1.0 vortex-file-compressed 122.42 MB 122.29 MB 133.97 KB -0.1%
hits_29.vortex 1.0 vortex-file-compressed 59.46 MB 59.40 MB 70.32 KB -0.1%
hits_4.vortex 1.0 vortex-file-compressed 108.41 MB 108.28 MB 132.43 KB -0.1%
hits_83.vortex 1.0 vortex-file-compressed 89.27 MB 89.16 MB 112.47 KB -0.1%
hits_9.vortex 1.0 vortex-file-compressed 99.14 MB 99.01 MB 138.52 KB -0.1%
hits_52.vortex 1.0 vortex-file-compressed 103.67 MB 103.53 MB 145.76 KB -0.1%
hits_0.vortex 1.0 vortex-file-compressed 89.57 MB 89.44 MB 129.02 KB -0.1%
hits_73.vortex 1.0 vortex-file-compressed 109.56 MB 109.40 MB 158.92 KB -0.1%
hits_64.vortex 1.0 vortex-file-compressed 80.97 MB 80.84 MB 136.33 KB -0.2%
hits_32.vortex 1.0 vortex-file-compressed 66.63 MB 66.51 MB 124.59 KB -0.2%
hits_84.vortex 1.0 vortex-file-compressed 116.94 MB 116.71 MB 237.35 KB -0.2%
hits_16.vortex 1.0 vortex-file-compressed 79.59 MB 79.28 MB 326.23 KB -0.4%
hits_69.vortex 1.0 vortex-file-compressed 123.53 MB 122.94 MB 603.75 KB -0.5%
hits_90.vortex 1.0 vortex-compact 82.51 MB 81.71 MB 816.95 KB -1.0%
duckdb.db 1.0 vortex-compact 268.00 KB 0 B 268.00 KB -100.0%

Totals:

  • vortex-compact: 7.04 GB → 7.04 GB (-0.0%)
  • vortex-file-compressed: 10.98 GB → 10.98 GB (+0.0%)

Add explicit coverage that nullable take indices over a non-nullable fixed-size-list produce nullable output rows.

Signed-off-by: Daniel King <dan@spiraldb.com>
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: TPC-H SF=1 on S3

Verdict: No clear signal (environment too noisy confidence)
Attributed Vortex impact: +3.8%
Engines: DataFusion No clear signal (+4.3%, environment too noisy confidence) · DuckDB No clear signal (+3.4%, environment too noisy confidence)
Vortex (geomean): 1.040x ➖
Parquet (geomean): 1.001x ➖
Shifts: Parquet (control) +0.1% · Median polish +2.1%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (0.994x ➖, 1↑ 3↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:vortex-file-compressed 353326509 344196436 1.03
tpch_q02/datafusion:vortex-file-compressed 710668143 803344153 0.88
tpch_q03/datafusion:vortex-file-compressed 🚀 531912144 844202905 0.63
tpch_q04/datafusion:vortex-file-compressed 316682650 306136448 1.03
tpch_q05/datafusion:vortex-file-compressed 555133161 591428977 0.94
tpch_q06/datafusion:vortex-file-compressed 🚨 419871233 304462041 1.38
tpch_q07/datafusion:vortex-file-compressed 🚨 764186705 496399376 1.54
tpch_q08/datafusion:vortex-file-compressed 720816411 654860138 1.10
tpch_q09/datafusion:vortex-file-compressed 557494584 562341026 0.99
tpch_q10/datafusion:vortex-file-compressed 🚨 644454761 431633855 1.49
tpch_q11/datafusion:vortex-file-compressed 431950929 358771529 1.20
tpch_q12/datafusion:vortex-file-compressed 501222942 522790513 0.96
tpch_q13/datafusion:vortex-file-compressed 166889527 227965279 0.73
tpch_q14/datafusion:vortex-file-compressed 275834276 298028050 0.93
tpch_q15/datafusion:vortex-file-compressed 525700173 511641551 1.03
tpch_q16/datafusion:vortex-file-compressed 301488080 286009337 1.05
tpch_q17/datafusion:vortex-file-compressed 465405131 505702045 0.92
tpch_q18/datafusion:vortex-file-compressed 358081782 359999056 0.99
tpch_q19/datafusion:vortex-file-compressed 670014723 627013885 1.07
tpch_q20/datafusion:vortex-file-compressed 542412821 580352667 0.93
tpch_q21/datafusion:vortex-file-compressed 629516396 789879357 0.80
tpch_q22/datafusion:vortex-file-compressed 197651981 270421979 0.73
datafusion / vortex-compact (1.132x ➖, 0↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:vortex-compact 323278957 313799538 1.03
tpch_q02/datafusion:vortex-compact 660924050 514007467 1.29
tpch_q03/datafusion:vortex-compact 583569489 606296978 0.96
tpch_q04/datafusion:vortex-compact 270531995 244734756 1.11
tpch_q05/datafusion:vortex-compact 498739132 457786352 1.09
tpch_q06/datafusion:vortex-compact 386220690 331257002 1.17
tpch_q07/datafusion:vortex-compact 595078830 510328894 1.17
tpch_q08/datafusion:vortex-compact 672454191 636900894 1.06
tpch_q09/datafusion:vortex-compact 506718749 466860657 1.09
tpch_q10/datafusion:vortex-compact 531423246 559445940 0.95
tpch_q11/datafusion:vortex-compact 327097638 320057877 1.02
tpch_q12/datafusion:vortex-compact 454965117 382475635 1.19
tpch_q13/datafusion:vortex-compact 206126999 165754063 1.24
tpch_q14/datafusion:vortex-compact 344596392 268818849 1.28
tpch_q15/datafusion:vortex-compact 🚨 607113459 463110882 1.31
tpch_q16/datafusion:vortex-compact 223097459 195616684 1.14
tpch_q17/datafusion:vortex-compact 464589024 371592781 1.25
tpch_q18/datafusion:vortex-compact 405489279 357604662 1.13
tpch_q19/datafusion:vortex-compact 586214309 498958316 1.17
tpch_q20/datafusion:vortex-compact 509059463 462742171 1.10
tpch_q21/datafusion:vortex-compact 658130234 517019534 1.27
tpch_q22/datafusion:vortex-compact 179992191 181431763 0.99
datafusion / parquet (1.017x ➖, 0↑ 5↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:parquet 248904426 279412938 0.89
tpch_q02/datafusion:parquet 599874081 548281618 1.09
tpch_q03/datafusion:parquet 435578047 449319793 0.97
tpch_q04/datafusion:parquet 269384467 295905959 0.91
tpch_q05/datafusion:parquet 671381287 559693017 1.20
tpch_q06/datafusion:parquet 234320591 244795884 0.96
tpch_q07/datafusion:parquet 569506815 651469146 0.87
tpch_q08/datafusion:parquet 676960558 739144063 0.92
tpch_q09/datafusion:parquet 484003485 634227416 0.76
tpch_q10/datafusion:parquet 473938658 508919509 0.93
tpch_q11/datafusion:parquet 370372870 386521889 0.96
tpch_q12/datafusion:parquet 🚨 355958572 240005758 1.48
tpch_q13/datafusion:parquet 🚨 548163870 421034253 1.30
tpch_q14/datafusion:parquet 🚨 263518714 186047037 1.42
tpch_q15/datafusion:parquet 🚨 398501529 303347841 1.31
tpch_q16/datafusion:parquet 223933828 203382264 1.10
tpch_q17/datafusion:parquet 🚨 669931550 432171620 1.55
tpch_q18/datafusion:parquet 587196798 651895690 0.90
tpch_q19/datafusion:parquet 424278965 594107158 0.71
tpch_q20/datafusion:parquet 410960191 521011206 0.79
tpch_q21/datafusion:parquet 632533887 683461529 0.93
tpch_q22/datafusion:parquet 226880579 242583513 0.94
duckdb / vortex-file-compressed (1.022x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:vortex-file-compressed 283107230 364808147 0.78
tpch_q02/duckdb:vortex-file-compressed 1076287373 1038702066 1.04
tpch_q03/duckdb:vortex-file-compressed 840178124 682626815 1.23
tpch_q04/duckdb:vortex-file-compressed 445954854 434712720 1.03
tpch_q05/duckdb:vortex-file-compressed 871126509 862498090 1.01
tpch_q06/duckdb:vortex-file-compressed 370155438 371333942 1.00
tpch_q07/duckdb:vortex-file-compressed 1011314947 953653309 1.06
tpch_q08/duckdb:vortex-file-compressed 1223106785 1108624964 1.10
tpch_q09/duckdb:vortex-file-compressed 1003934740 940258128 1.07
tpch_q10/duckdb:vortex-file-compressed 779138459 767394808 1.02
tpch_q11/duckdb:vortex-file-compressed 551674785 512814091 1.08
tpch_q12/duckdb:vortex-file-compressed 761652225 656140053 1.16
tpch_q13/duckdb:vortex-file-compressed 501690270 514360400 0.98
tpch_q14/duckdb:vortex-file-compressed 461954284 429681193 1.08
tpch_q15/duckdb:vortex-file-compressed 324034166 326253814 0.99
tpch_q16/duckdb:vortex-file-compressed 410576191 342881290 1.20
tpch_q17/duckdb:vortex-file-compressed 756390309 823582588 0.92
tpch_q18/duckdb:vortex-file-compressed 672063566 689203708 0.98
tpch_q19/duckdb:vortex-file-compressed 559970564 599026618 0.93
tpch_q20/duckdb:vortex-file-compressed 899017554 949157076 0.95
tpch_q21/duckdb:vortex-file-compressed 1101805786 1232330463 0.89
tpch_q22/duckdb:vortex-file-compressed 364765456 326396955 1.12
duckdb / vortex-compact (1.017x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:vortex-compact 341538538 420205622 0.81
tpch_q02/duckdb:vortex-compact 981806027 974306395 1.01
tpch_q03/duckdb:vortex-compact 810012367 647472865 1.25
tpch_q04/duckdb:vortex-compact 420855376 409611122 1.03
tpch_q05/duckdb:vortex-compact 955876994 911483893 1.05
tpch_q06/duckdb:vortex-compact 363480052 336447811 1.08
tpch_q07/duckdb:vortex-compact 956543222 953374496 1.00
tpch_q08/duckdb:vortex-compact 1258557831 1162627734 1.08
tpch_q09/duckdb:vortex-compact 1103683925 1021751279 1.08
tpch_q10/duckdb:vortex-compact 757132806 784512524 0.97
tpch_q11/duckdb:vortex-compact 473277113 491079048 0.96
tpch_q12/duckdb:vortex-compact 678568536 695006865 0.98
tpch_q13/duckdb:vortex-compact 441740860 372844148 1.18
tpch_q14/duckdb:vortex-compact 424245697 412515042 1.03
tpch_q15/duckdb:vortex-compact 299516120 358879412 0.83
tpch_q16/duckdb:vortex-compact 371424428 334459021 1.11
tpch_q17/duckdb:vortex-compact 705705389 788557065 0.89
tpch_q18/duckdb:vortex-compact 622726521 617621519 1.01
tpch_q19/duckdb:vortex-compact 543181762 480052925 1.13
tpch_q20/duckdb:vortex-compact 815472213 800796416 1.02
tpch_q21/duckdb:vortex-compact 1153773176 1083005750 1.07
tpch_q22/duckdb:vortex-compact 280358292 309682236 0.91
duckdb / parquet (0.986x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:parquet 573117360 463815403 1.24
tpch_q02/duckdb:parquet 1172240171 1189075377 0.99
tpch_q03/duckdb:parquet 1304185044 1231497893 1.06
tpch_q04/duckdb:parquet 730462303 694267003 1.05
tpch_q05/duckdb:parquet 1379122706 1395958181 0.99
tpch_q06/duckdb:parquet 500820086 525314974 0.95
tpch_q07/duckdb:parquet 1243268110 1212849805 1.03
tpch_q08/duckdb:parquet 1572418825 1582794285 0.99
tpch_q09/duckdb:parquet 1399749579 1478318242 0.95
tpch_q10/duckdb:parquet 1449651902 1448544713 1.00
tpch_q11/duckdb:parquet 839076710 830648920 1.01
tpch_q12/duckdb:parquet 823228810 772947214 1.07
tpch_q13/duckdb:parquet 962455133 918245327 1.05
tpch_q14/duckdb:parquet 704039957 779187817 0.90
tpch_q15/duckdb:parquet 572193848 659085472 0.87
tpch_q16/duckdb:parquet 657537100 692623623 0.95
tpch_q17/duckdb:parquet 826291512 931889754 0.89
tpch_q18/duckdb:parquet 952794213 1138171305 0.84
tpch_q19/duckdb:parquet 870030358 765380180 1.14
tpch_q20/duckdb:parquet 1222262052 1284755190 0.95
tpch_q21/duckdb:parquet 1145190459 1269528536 0.90
tpch_q22/duckdb:parquet 584091863 602625257 0.97

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: Appian on NVME

Verdict: No clear signal (low confidence)
Attributed Vortex impact: +4.0%
Engines: DataFusion No clear signal (+10.0%, low confidence) · DuckDB No clear signal (-0.9%, environment too noisy confidence)
Vortex (geomean): 1.038x ➖
Parquet (geomean): 1.017x ➖
Shifts: Parquet (control) +1.7% · Median polish +0.8%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (1.075x ➖, 0↑ 3↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
appian_q01/datafusion:vortex-file-compressed 131002880 129674591 1.01
appian_q02/datafusion:vortex-file-compressed 591528913 621495438 0.95
appian_q03/datafusion:vortex-file-compressed 346018466 362381456 0.95
appian_q04/datafusion:vortex-file-compressed 43538544097 45581235690 0.96
appian_q05/datafusion:vortex-file-compressed 🚨 327652245 269325410 1.22
appian_q06/datafusion:vortex-file-compressed 🚨 417973183 343093958 1.22
appian_q07/datafusion:vortex-file-compressed 🚨 552390306 430148238 1.28
appian_q08/datafusion:vortex-file-compressed 2132755392 2002677441 1.06
datafusion / parquet (0.977x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
appian_q01/datafusion:parquet 127829355 134823427 0.95
appian_q02/datafusion:parquet 606394489 615118108 0.99
appian_q03/datafusion:parquet 330564781 332698822 0.99
appian_q04/datafusion:parquet 44253694031 45990713413 0.96
appian_q05/datafusion:parquet 285211027 284702851 1.00
appian_q06/datafusion:parquet 357344008 364054101 0.98
appian_q07/datafusion:parquet 450933708 460026314 0.98
appian_q08/datafusion:parquet 1944717149 2023916044 0.96
duckdb / vortex-file-compressed (1.003x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
appian_q01/duckdb:vortex-file-compressed 199712172 189300921 1.05
appian_q02/duckdb:vortex-file-compressed 603690080 604789771 1.00
appian_q03/duckdb:vortex-file-compressed 264067107 269292725 0.98
appian_q04/duckdb:vortex-file-compressed 1335416739 1334496117 1.00
appian_q05/duckdb:vortex-file-compressed 285445081 292362056 0.98
appian_q06/duckdb:vortex-file-compressed 813393955 806181392 1.01
appian_q07/duckdb:vortex-file-compressed 360559097 358403251 1.01
appian_q08/duckdb:vortex-file-compressed 1299593493 1299393442 1.00
duckdb / parquet (1.060x ➖, 0↑ 3↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
appian_q01/duckdb:parquet 206069239 206899918 1.00
appian_q02/duckdb:parquet 604495636 613817349 0.98
appian_q03/duckdb:parquet 🚨 330429755 290459920 1.14
appian_q04/duckdb:parquet 🚨 1582110350 1329142671 1.19
appian_q05/duckdb:parquet 321664017 322553900 1.00
appian_q06/duckdb:parquet 804767736 793966086 1.01
appian_q07/duckdb:parquet 366221332 372384588 0.98
appian_q08/duckdb:parquet 🚨 1543771962 1282862284 1.20
duckdb / duckdb (1.098x ➖, 0↑ 3↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
appian_q01/duckdb:duckdb 🚨 211321689 177610675 1.19
appian_q02/duckdb:duckdb 🚨 664437750 560326280 1.19
appian_q03/duckdb:duckdb 412867655 383505255 1.08
appian_q04/duckdb:duckdb 1362008129 1304716451 1.04
appian_q05/duckdb:duckdb 🚨 350265204 288730216 1.21
appian_q06/duckdb:duckdb 847148073 785439905 1.08
appian_q07/duckdb:duckdb 335274268 332139930 1.01
appian_q08/duckdb:duckdb 1248598478 1235267961 1.01

File Size Changes (4 files changed, -0.0% overall, 1↑ 3↓)
File Scale Format Base HEAD Change %
orderview.vortex 1.0 vortex-file-compressed 76.11 MB 76.18 MB +69.73 KB +0.1%
addressview.vortex 1.0 vortex-file-compressed 34.61 MB 34.61 MB 16 B -0.0%
creditcardview.vortex 1.0 vortex-file-compressed 58.27 MB 58.23 MB 40.68 KB -0.1%
duckdb.db 1.0 vortex-compact 268.00 KB 0 B 268.00 KB -100.0%

Totals:

  • vortex-compact: 271.94 MB → 271.68 MB (-0.1%)
  • vortex-file-compressed: 476.40 MB → 476.43 MB (+0.0%)

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: TPC-H SF=10 on S3

Verdict: No clear signal (environment too noisy confidence)
Attributed Vortex impact: -5.1%
Engines: DataFusion No clear signal (-3.6%, environment too noisy confidence) · DuckDB No clear signal (-6.5%, environment too noisy confidence)
Vortex (geomean): 0.994x ➖
Parquet (geomean): 1.047x ➖
Shifts: Parquet (control) +4.7% · Median polish +2.5%

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

datafusion / vortex-file-compressed (1.003x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:vortex-file-compressed 780442114 696350317 1.12
tpch_q02/datafusion:vortex-file-compressed 992923916 794485005 1.25
tpch_q03/datafusion:vortex-file-compressed 895214525 809914481 1.11
tpch_q04/datafusion:vortex-file-compressed 498935358 460335641 1.08
tpch_q05/datafusion:vortex-file-compressed 992208223 1042460013 0.95
tpch_q06/datafusion:vortex-file-compressed 608808045 660456839 0.92
tpch_q07/datafusion:vortex-file-compressed 1021231817 1159767964 0.88
tpch_q08/datafusion:vortex-file-compressed 1368208405 1437103395 0.95
tpch_q09/datafusion:vortex-file-compressed 1429530388 1482134256 0.96
tpch_q10/datafusion:vortex-file-compressed 1063174530 1260622239 0.84
tpch_q11/datafusion:vortex-file-compressed 522437293 718837634 0.73
tpch_q12/datafusion:vortex-file-compressed 903337510 791347313 1.14
tpch_q13/datafusion:vortex-file-compressed 459979454 421800614 1.09
tpch_q14/datafusion:vortex-file-compressed 563990386 568196011 0.99
tpch_q15/datafusion:vortex-file-compressed 985664862 1189520607 0.83
tpch_q16/datafusion:vortex-file-compressed 454632245 459060511 0.99
tpch_q17/datafusion:vortex-file-compressed 1236749109 1125685921 1.10
tpch_q18/datafusion:vortex-file-compressed 1345451455 1176135783 1.14
tpch_q19/datafusion:vortex-file-compressed 999504396 967729960 1.03
tpch_q20/datafusion:vortex-file-compressed 971227322 932535278 1.04
tpch_q21/datafusion:vortex-file-compressed 1538873973 1495177319 1.03
tpch_q22/datafusion:vortex-file-compressed 626378690 608212694 1.03
datafusion / vortex-compact (1.055x ➖, 0↑ 1↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:vortex-compact 766210567 790491891 0.97
tpch_q02/datafusion:vortex-compact 763639775 889156596 0.86
tpch_q03/datafusion:vortex-compact 847727462 873588740 0.97
tpch_q04/datafusion:vortex-compact 520760906 497790389 1.05
tpch_q05/datafusion:vortex-compact 990362132 966578727 1.02
tpch_q06/datafusion:vortex-compact 614613847 630470130 0.97
tpch_q07/datafusion:vortex-compact 999661958 932150348 1.07
tpch_q08/datafusion:vortex-compact 1385286425 1261564089 1.10
tpch_q09/datafusion:vortex-compact 🚨 1624397981 1231157986 1.32
tpch_q10/datafusion:vortex-compact 1077861546 965466710 1.12
tpch_q11/datafusion:vortex-compact 530467025 497239966 1.07
tpch_q12/datafusion:vortex-compact 861207796 717496728 1.20
tpch_q13/datafusion:vortex-compact 466091447 440765644 1.06
tpch_q14/datafusion:vortex-compact 620867269 504714846 1.23
tpch_q15/datafusion:vortex-compact 1022282005 1033603869 0.99
tpch_q16/datafusion:vortex-compact 505204765 425589437 1.19
tpch_q17/datafusion:vortex-compact 1195127104 1140411696 1.05
tpch_q18/datafusion:vortex-compact 1223215700 1177008063 1.04
tpch_q19/datafusion:vortex-compact 1089290083 957321007 1.14
tpch_q20/datafusion:vortex-compact 1055900223 983400383 1.07
tpch_q21/datafusion:vortex-compact 1601483312 1356080156 1.18
tpch_q22/datafusion:vortex-compact 650343104 900156851 0.72
datafusion / parquet (1.067x ➖, 0↑ 2↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/datafusion:parquet 1053444519 873446261 1.21
tpch_q02/datafusion:parquet 🚨 1318815469 847135375 1.56
tpch_q03/datafusion:parquet 1128617911 1201162921 0.94
tpch_q04/datafusion:parquet 528971195 591603559 0.89
tpch_q05/datafusion:parquet 1234873300 1194555060 1.03
tpch_q06/datafusion:parquet 581985388 595828795 0.98
tpch_q07/datafusion:parquet 1713741424 1385494744 1.24
tpch_q08/datafusion:parquet 1802205532 1786606426 1.01
tpch_q09/datafusion:parquet 1917676564 2108504090 0.91
tpch_q10/datafusion:parquet 2944087726 2475290822 1.19
tpch_q11/datafusion:parquet 829482616 712346528 1.16
tpch_q12/datafusion:parquet 713762059 810821213 0.88
tpch_q13/datafusion:parquet 793539194 889809860 0.89
tpch_q14/datafusion:parquet 875702627 912378524 0.96
tpch_q15/datafusion:parquet 1332669586 1385950919 0.96
tpch_q16/datafusion:parquet 437599400 361377365 1.21
tpch_q17/datafusion:parquet 1464303152 1518886350 0.96
tpch_q18/datafusion:parquet 1879735532 1587507799 1.18
tpch_q19/datafusion:parquet 1169822665 1047730580 1.12
tpch_q20/datafusion:parquet 1503192917 1305018838 1.15
tpch_q21/datafusion:parquet 1918619076 1934959006 0.99
tpch_q22/datafusion:parquet 🚨 998325176 762448198 1.31
duckdb / vortex-file-compressed (0.991x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:vortex-file-compressed 637610883 657730609 0.97
tpch_q02/duckdb:vortex-file-compressed 1328000994 1320152021 1.01
tpch_q03/duckdb:vortex-file-compressed 877863481 879411844 1.00
tpch_q04/duckdb:vortex-file-compressed 693757184 665146701 1.04
tpch_q05/duckdb:vortex-file-compressed 1248482178 1186585728 1.05
tpch_q06/duckdb:vortex-file-compressed 592973320 563591399 1.05
tpch_q07/duckdb:vortex-file-compressed 1277467687 1235895059 1.03
tpch_q08/duckdb:vortex-file-compressed 1538260619 1531468413 1.00
tpch_q09/duckdb:vortex-file-compressed 1795508316 1718894541 1.04
tpch_q10/duckdb:vortex-file-compressed 1512375928 1387387130 1.09
tpch_q11/duckdb:vortex-file-compressed 743165703 670890325 1.11
tpch_q12/duckdb:vortex-file-compressed 1268100687 1267759899 1.00
tpch_q13/duckdb:vortex-file-compressed 802877877 747257892 1.07
tpch_q14/duckdb:vortex-file-compressed 722228515 668990341 1.08
tpch_q15/duckdb:vortex-file-compressed 618384394 600617203 1.03
tpch_q16/duckdb:vortex-file-compressed 531757936 601110306 0.88
tpch_q17/duckdb:vortex-file-compressed 1018594282 1165512315 0.87
tpch_q18/duckdb:vortex-file-compressed 1004289778 992808131 1.01
tpch_q19/duckdb:vortex-file-compressed 834419691 930871966 0.90
tpch_q20/duckdb:vortex-file-compressed 1293116224 1588538039 0.81
tpch_q21/duckdb:vortex-file-compressed 1920070215 2078120572 0.92
tpch_q22/duckdb:vortex-file-compressed 485560785 545766081 0.89
duckdb / vortex-compact (0.929x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:vortex-compact 649191085 667493395 0.97
tpch_q02/duckdb:vortex-compact 1198714422 1391337973 0.86
tpch_q03/duckdb:vortex-compact 901962207 1017275906 0.89
tpch_q04/duckdb:vortex-compact 692291616 711400173 0.97
tpch_q05/duckdb:vortex-compact 1217093095 1288332399 0.94
tpch_q06/duckdb:vortex-compact 559100914 536617322 1.04
tpch_q07/duckdb:vortex-compact 1200559907 1333553664 0.90
tpch_q08/duckdb:vortex-compact 1510473317 1794468823 0.84
tpch_q09/duckdb:vortex-compact 1817601899 1738676607 1.05
tpch_q10/duckdb:vortex-compact 1303386372 1441033061 0.90
tpch_q11/duckdb:vortex-compact 749370305 796914609 0.94
tpch_q12/duckdb:vortex-compact 1165935401 1142049472 1.02
tpch_q13/duckdb:vortex-compact 794345715 908198777 0.87
tpch_q14/duckdb:vortex-compact 642554979 795818854 0.81
tpch_q15/duckdb:vortex-compact 562294619 604850433 0.93
tpch_q16/duckdb:vortex-compact 489545700 476343425 1.03
tpch_q17/duckdb:vortex-compact 968769241 956802099 1.01
tpch_q18/duckdb:vortex-compact 947066285 1054302965 0.90
tpch_q19/duckdb:vortex-compact 857531924 842167265 1.02
tpch_q20/duckdb:vortex-compact 1238331987 1364914741 0.91
tpch_q21/duckdb:vortex-compact 1906744232 1956334945 0.97
tpch_q22/duckdb:vortex-compact 412262088 558599997 0.74
duckdb / parquet (1.027x ➖, 0↑ 0↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
tpch_q01/duckdb:parquet 949133345 875061465 1.08
tpch_q02/duckdb:parquet 1441836957 1573446235 0.92
tpch_q03/duckdb:parquet 1959874492 2008152170 0.98
tpch_q04/duckdb:parquet 1060264888 1082421317 0.98
tpch_q05/duckdb:parquet 2026623304 1977883124 1.02
tpch_q06/duckdb:parquet 757781902 778398300 0.97
tpch_q07/duckdb:parquet 1973102555 1838814424 1.07
tpch_q08/duckdb:parquet 2713936426 2465336716 1.10
tpch_q09/duckdb:parquet 2907732208 2567752651 1.13
tpch_q10/duckdb:parquet 3364373982 3378276681 1.00
tpch_q11/duckdb:parquet 1104895389 1050106826 1.05
tpch_q12/duckdb:parquet 1528905110 1314449693 1.16
tpch_q13/duckdb:parquet 1431174475 1430907465 1.00
tpch_q14/duckdb:parquet 1527265773 1323333167 1.15
tpch_q15/duckdb:parquet 1063270644 1044425070 1.02
tpch_q16/duckdb:parquet 961986376 914674167 1.05
tpch_q17/duckdb:parquet 1318017423 1489316555 0.88
tpch_q18/duckdb:parquet 1560423454 1562161544 1.00
tpch_q19/duckdb:parquet 1567636845 1527321042 1.03
tpch_q20/duckdb:parquet 1938529798 2050287730 0.95
tpch_q21/duckdb:parquet 1979927477 1769211183 1.12
tpch_q22/duckdb:parquet 1194868972 1223604871 0.98

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Benchmarks: Compression

Vortex (geomean): 0.991x ➖
Parquet (geomean): 1.018x ➖

How to read Verdict and Engines
  • Verdict: Overall PR-level signal after subtracting baseline drift estimated from Parquet control rows. It can be Likely improvement, Likely regression, or No clear signal.
  • Engines: Per-engine attribution. DataFusion is compared against DataFusion/Parquet controls; DuckDB is compared against DuckDB/Parquet controls. This answers whether each engine improved or regressed independently.
  • Confidence: Based on directional consistency, share of rows above the noise floor, and control-run noise.

unknown / unknown (1.024x ➖, 2↑ 18↓)
name PR f80606e (ns) base 24ad8fd (ns) ratio (PR/base)
compress time/Arade 1154736536 1105099294 1.04
compress time/Bimbo 5677830485 5716961103 0.99
compress time/CMSprovider 2638360418 2671648897 0.99
compress time/Euro2016 503829766 496088058 1.02
compress time/Food 395748705 365758575 1.08
compress time/HashTags 🚨 913210392 825755092 1.11
compress time/TPC-H l_comment canonical 1242516205 1214877426 1.02
compress time/TPC-H l_comment chunked 1283492324 1224811560 1.05
compress time/taxi 602453832 569563414 1.06
compress time/wide table cols=100 chunks=1 rows=1000 13426886 12397404 1.08
compress time/wide table cols=100 chunks=50 rows=1000 12447779 12431961 1.00
compress time/wide table cols=1000 chunks=1 rows=1000 132731443 131973567 1.01
compress time/wide table cols=1000 chunks=50 rows=1000 138067925 135690183 1.02
compress time/wide table cols=10000 chunks=1 rows=1000 1561495691 1515774933 1.03
compress time/wide table cols=10000 chunks=50 rows=1000 1529466560 1523563658 1.00
decompress time/Arade 🚨 31473772 26458987 1.19
decompress time/Bimbo 93229124 92655731 1.01
decompress time/CMSprovider 77175604 77909489 0.99
decompress time/Euro2016 23228576 21120545 1.10
decompress time/Food 🚨 9754393 8625843 1.13
decompress time/HashTags 98493678 93827559 1.05
decompress time/TPC-H l_comment canonical 45045946 41784525 1.08
decompress time/TPC-H l_comment chunked 🚨 48360680 41037940 1.18
decompress time/taxi 🚨 18413971 16253919 1.13
decompress time/wide table cols=100 chunks=1 rows=1000 🚨 2701997 2425827 1.11
decompress time/wide table cols=100 chunks=50 rows=1000 2669784 2670176 1.00
decompress time/wide table cols=1000 chunks=1 rows=1000 23874224 22927379 1.04
decompress time/wide table cols=1000 chunks=50 rows=1000 23947832 21912919 1.09
decompress time/wide table cols=10000 chunks=1 rows=1000 246714374 227768801 1.08
decompress time/wide table cols=10000 chunks=50 rows=1000 245142314 247682029 0.99
parquet size/Arade 258014282 258014282 1.00
parquet size/Bimbo 384517292 384517292 1.00
parquet size/CMSprovider 376885545 376885545 1.00
parquet size/Euro2016 122975499 122975499 1.00
parquet size/Food 35699500 35699500 1.00
parquet size/HashTags 133510943 133510943 1.00
parquet size/TPC-H l_comment canonical 158358238 158358238 1.00
parquet size/TPC-H l_comment chunked 158358238 158358238 1.00
parquet size/taxi 55283635 55283635 1.00
parquet size/wide table cols=100 chunks=1 rows=1000 932404 932404 1.00
parquet size/wide table cols=100 chunks=50 rows=1000 932404 932404 1.00
parquet size/wide table cols=1000 chunks=1 rows=1000 9324004 9324004 1.00
parquet size/wide table cols=1000 chunks=50 rows=1000 9324004 9324004 1.00
parquet size/wide table cols=10000 chunks=1 rows=1000 93240004 93240004 1.00
parquet size/wide table cols=10000 chunks=50 rows=1000 93240004 93240004 1.00
parquet_rs-zstd compress time/Arade 🚨 2889134319 2608565791 1.11
parquet_rs-zstd compress time/Bimbo 13002066641 12724227658 1.02
parquet_rs-zstd compress time/CMSprovider 6837314028 6832117404 1.00
parquet_rs-zstd compress time/Euro2016 🚨 1447183449 1301495812 1.11
parquet_rs-zstd compress time/Food 853820975 792710507 1.08
parquet_rs-zstd compress time/HashTags 🚨 2517038046 2181644217 1.15
parquet_rs-zstd compress time/TPC-H l_comment canonical 🚨 3559697928 3208562624 1.11
parquet_rs-zstd compress time/TPC-H l_comment chunked 🚨 3575970460 3176009577 1.13
parquet_rs-zstd compress time/taxi 1297717684 1187126594 1.09
parquet_rs-zstd compress time/wide table cols=100 chunks=1 rows=1000 🚨 7115557 6016557 1.18
parquet_rs-zstd compress time/wide table cols=100 chunks=50 rows=1000 🚨 6712134 5984506 1.12
parquet_rs-zstd compress time/wide table cols=1000 chunks=1 rows=1000 78193682 73463218 1.06
parquet_rs-zstd compress time/wide table cols=1000 chunks=50 rows=1000 77528216 74740630 1.04
parquet_rs-zstd compress time/wide table cols=10000 chunks=1 rows=1000 780555102 764119620 1.02
parquet_rs-zstd compress time/wide table cols=10000 chunks=50 rows=1000 776071198 777518755 1.00
parquet_rs-zstd decompress time/Arade 655394609 628591473 1.04
parquet_rs-zstd decompress time/Bimbo 1711861236 1687071132 1.01
parquet_rs-zstd decompress time/CMSprovider 1695697197 1702786373 1.00
parquet_rs-zstd decompress time/Euro2016 🚨 419981527 374652061 1.12
parquet_rs-zstd decompress time/Food 🚨 217866704 196731778 1.11
parquet_rs-zstd decompress time/HashTags 🚨 775159595 631223757 1.23
parquet_rs-zstd decompress time/TPC-H l_comment canonical 641031066 588726887 1.09
parquet_rs-zstd decompress time/TPC-H l_comment chunked 🚨 664548178 589816776 1.13
parquet_rs-zstd decompress time/taxi 260634570 246479540 1.06
parquet_rs-zstd decompress time/wide table cols=100 chunks=1 rows=1000 3027700 2797398 1.08
parquet_rs-zstd decompress time/wide table cols=100 chunks=50 rows=1000 2909797 2764826 1.05
parquet_rs-zstd decompress time/wide table cols=1000 chunks=1 rows=1000 34238373 31684507 1.08
parquet_rs-zstd decompress time/wide table cols=1000 chunks=50 rows=1000 34346643 33328278 1.03
parquet_rs-zstd decompress time/wide table cols=10000 chunks=1 rows=1000 349694788 345951073 1.01
parquet_rs-zstd decompress time/wide table cols=10000 chunks=50 rows=1000 350072354 348900831 1.00
vortex-file-compressed size/Arade 145358060 145358060 1.00
vortex-file-compressed size/Bimbo 467257556 467257556 1.00
vortex-file-compressed size/CMSprovider 417782644 417785260 1.00
vortex-file-compressed size/Euro2016 157810620 158528100 1.00
vortex-file-compressed size/Food 41976800 41976800 1.00
vortex-file-compressed size/HashTags 185274668 184436356 1.00
vortex-file-compressed size/TPC-H l_comment canonical 171869432 172120592 1.00
vortex-file-compressed size/TPC-H l_comment chunked 172006704 172239120 1.00
vortex-file-compressed size/taxi 52296276 52296276 1.00
vortex-file-compressed size/wide table cols=100 chunks=1 rows=1000 932512 932512 1.00
vortex-file-compressed size/wide table cols=100 chunks=50 rows=1000 932512 932512 1.00
vortex-file-compressed size/wide table cols=1000 chunks=1 rows=1000 9309712 9309712 1.00
vortex-file-compressed size/wide table cols=1000 chunks=50 rows=1000 9309712 9309712 1.00
vortex-file-compressed size/wide table cols=10000 chunks=1 rows=1000 93117712 93117712 1.00
vortex-file-compressed size/wide table cols=10000 chunks=50 rows=1000 93117712 93117712 1.00
vortex:parquet-zstd ratio compress time/Arade 0 0 0.94
vortex:parquet-zstd ratio compress time/Bimbo 0 0 0.97
vortex:parquet-zstd ratio compress time/CMSprovider 0 0 0.99
vortex:parquet-zstd ratio compress time/Euro2016 0 0 0.91
vortex:parquet-zstd ratio compress time/Food 0 0 1.00
vortex:parquet-zstd ratio compress time/HashTags 0 0 0.96
vortex:parquet-zstd ratio compress time/TPC-H l_comment canonical 0 0 0.92
vortex:parquet-zstd ratio compress time/TPC-H l_comment chunked 0 0 0.93
vortex:parquet-zstd ratio compress time/taxi 0 0 0.97
vortex:parquet-zstd ratio compress time/wide table cols=100 chunks=1 rows=1000 1 2 0.92
vortex:parquet-zstd ratio compress time/wide table cols=100 chunks=50 rows=1000 🚀 1 2 0.89
vortex:parquet-zstd ratio compress time/wide table cols=1000 chunks=1 rows=1000 1 1 0.94
vortex:parquet-zstd ratio compress time/wide table cols=1000 chunks=50 rows=1000 1 1 0.98
vortex:parquet-zstd ratio compress time/wide table cols=10000 chunks=1 rows=1000 2 1 1.01
vortex:parquet-zstd ratio compress time/wide table cols=10000 chunks=50 rows=1000 1 1 1.01
vortex:parquet-zstd ratio decompress time/Arade 🚨 0 0 1.14
vortex:parquet-zstd ratio decompress time/Bimbo 0 0 0.99
vortex:parquet-zstd ratio decompress time/CMSprovider 0 0 0.99
vortex:parquet-zstd ratio decompress time/Euro2016 0 0 0.98
vortex:parquet-zstd ratio decompress time/Food 0 0 1.02
vortex:parquet-zstd ratio decompress time/HashTags 🚀 0 0 0.85
vortex:parquet-zstd ratio decompress time/TPC-H l_comment canonical 0 0 0.99
vortex:parquet-zstd ratio decompress time/TPC-H l_comment chunked 0 0 1.05
vortex:parquet-zstd ratio decompress time/taxi 0 0 1.07
vortex:parquet-zstd ratio decompress time/wide table cols=100 chunks=1 rows=1000 0 0 1.03
vortex:parquet-zstd ratio decompress time/wide table cols=100 chunks=50 rows=1000 0 0 0.95
vortex:parquet-zstd ratio decompress time/wide table cols=1000 chunks=1 rows=1000 0 0 0.96
vortex:parquet-zstd ratio decompress time/wide table cols=1000 chunks=50 rows=1000 0 0 1.06
vortex:parquet-zstd ratio decompress time/wide table cols=10000 chunks=1 rows=1000 0 0 1.07
vortex:parquet-zstd ratio decompress time/wide table cols=10000 chunks=50 rows=1000 0 0 0.99
vortex:parquet-zstd size/Arade 0 0 1.00
vortex:parquet-zstd size/Bimbo 1 1 1.00
vortex:parquet-zstd size/CMSprovider 1 1 1.00
vortex:parquet-zstd size/Euro2016 1 1 1.00
vortex:parquet-zstd size/Food 1 1 1.00
vortex:parquet-zstd size/HashTags 1 1 1.00
vortex:parquet-zstd size/TPC-H l_comment canonical 1 1 1.00
vortex:parquet-zstd size/TPC-H l_comment chunked 1 1 1.00
vortex:parquet-zstd size/taxi 0 0 1.00
vortex:parquet-zstd size/wide table cols=100 chunks=1 rows=1000 1 1 1.00
vortex:parquet-zstd size/wide table cols=100 chunks=50 rows=1000 1 1 1.00
vortex:parquet-zstd size/wide table cols=1000 chunks=1 rows=1000 0 0 1.00
vortex:parquet-zstd size/wide table cols=1000 chunks=50 rows=1000 0 0 1.00
vortex:parquet-zstd size/wide table cols=10000 chunks=1 rows=1000 0 0 1.00
vortex:parquet-zstd size/wide table cols=10000 chunks=50 rows=1000 0 0 1.00

Validate existing converted Vortex files against the source Parquet footer row count before reusing them. Regenerate files that are unreadable or have stale row counts so benchmark data caches cannot preserve empty Vortex artifacts.

Signed-off-by: Daniel King <dan@spiraldb.com>
@danking danking force-pushed the codex/take-slices-fsl branch from c96c771 to 4285b93 Compare July 9, 2026 21:07
Add context-aware TakeSlices construction and validity paths so callers with an ExecutionCtx do not fall back to legacy session execution. Centralize run selector validation/output length in RunSelectors and use it from execution kernels.\n\nClarify that TakeSlices remains a lazy non-serializable compute encoding like Slice, remove the unrelated AGENTS.md guidance change, tighten Struct length derivation, document the FSL null-placeholder run invariant, and rename the benchmark cache helper to describe its row-count-only check.

Signed-off-by: Daniel King <dan@spiraldb.com>
Comment on lines +99 to +100
let len = selector_output_len_with_ctx(child.len(), &starts, &lengths, ctx)?;
Ok(Self::new_validated(child, starts, lengths, len))

@robert3005 robert3005 Jul 10, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we should do this validation on construction. As long as starts, lengths are correct size then starts being out of bounds should be an execution error

Comment on lines +147 to +149
check_selector_arrays(starts, lengths)?;
let starts = starts.clone().execute::<PrimitiveArray>(ctx)?;
let lengths = lengths.clone().execute::<PrimitiveArray>(ctx)?;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this really should account for constant arrays, that's what you end up with for fixedsizelist

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/performance A performance improvement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants