Repository navigation
DRAFT Bench 25358 - #27128
DRAFT Bench 25358#27128kosiew wants to merge 12 commits into
Conversation
- Add staged_sort benchmark with automatic ORDER BY evaluation across ties, NULLs, expensive keys, and controls - Include inline data with knobs: STAGED_SORT_ROWS=200000, STAGED_SORT_PAYLOAD_WIDTH=32 - Update bench.sh to include staged_sort in staged workloads - Document staged_sort as a separate workload with deterministic in-memory table generation - Add staged_sort to README.md with detailed workload descriptions and query variants - Create new README.md section for staged_sort with query variants 01–08 - Define query 01: unique id prefix, optional lower and md5 skips - Define query 02: one sparse tie group (~10% rows), md5 on tied rows - Define query 03: prefix group, all rows reach md5 (fallback) - Define query 04: sparse ties resolve via lower(payload), skips md5 - Define query 05: nullable prefix, descending with NULLS FIRST, NULLs tie - Define query 06: cheap keys only, control with no expensive stage - Define query 07: TopK (LIMIT 100), eager fetch-path control - Define query 08: same keys as 02, multiple sorted runs and merge - Set defaults: STAGED_SORT_ROWS=200000, STAGED_SORT_PAYLOAD_WIDTH=32 - Ensure in-place sort threshold of 1 GiB for queries 01–07, zero for 08 - Use consistent fixture assertions for row count, unique IDs, payload width - Verify plan shape: expensive expressions in 01 and 04 remain, 07 is TopK - Confirm 08 exercises intended run/merge path - Update bench.sh to skip external data for staged_sort - Add debug options via --debug or EXPLAIN ANALYZE for timing insights - Add new benchmark files for q04_multiple_stages, q05_null_ties, q06_cheap_control, q07_topk_control, and q08_multiple_runs - Update template and add QPAD, NAME, and THRESHOLD values for each benchmark - Modify SQL queries in queries/ to reflect new ordering expressions and payloads - Update benchmarks/staged_sort.benchmark.template with load command and group metadata - Ensure consistent data generation in load.sql with deterministic keys and payloads - Maintain test assertions for row counts and NULL handling across all staged sorts - Update staged ORDER BY evaluation logic to handle sparse keys, expensive keys, NULLs, and control conditions - Modify test assertions to validate distinct tie_key and id % 100 conditions - Ensure payload width calculation respects environment variable STAGED_SORT_PAYLOAD_WIDTH - Add inline data generation for fixture rows with at least 100 entries - Adjust suite description to reflect automatic evaluation across tie densities and key types - Set default fixture rows to 200,000 with payload width of 32 - Update command example to reflect unique-prefix case - Confirm cleanup step removes bench table after test run - Maintain test coverage for COUNT, DISTINCT, and filtering logic - Ensure result output path aligns with staged sort directory structure
|
run benchmark sql env:
BENCH_NAME: staged_sort
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "true"
baseline:
ref: 89554196b7405d303f19584d8ee01522825023fe |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing bench-25358 (6c96507) to 8955419 diff Run configurationrun benchmark sql
env:
BENCH_NAME: "staged_sort"
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "true"
baseline:
ref: "89554196b7405d303f19584d8ee01522825023fe"Results will be posted here when complete File an issue against this benchmark runner |
|
Benchmark for this request failed before finishing (Kubernetes reason: Benchmarks requested: Runner log (last 40 lines)Kubernetes messageFile an issue against this benchmark runner |
- Update the benchmark template to include the sort threshold setting. - Add initialization for sort_in_place_threshold_bytes in the template.
|
run benchmark sql env:
BENCH_NAME: staged_sort
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "true"
baseline:
ref: 24d41f29a0 |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing bench-25358 (99fce22) to 24d41f2 diff Run configurationrun benchmark sql
env:
BENCH_NAME: "staged_sort"
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "true"
baseline:
ref: "24d41f29a0"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing bench-25358 (99fce22) to 24d41f2 diff Run configurationrun benchmark sql
env:
BENCH_NAME: "staged_sort"
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "true"
baseline:
ref: "24d41f29a0"CPU Details (lscpu)Details
Resource Usagesql — base (merge-base)
sql — branch
File an issue against this benchmark runner |
|
run benchmark sort_tpch topk_tpch env:
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "true" |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing bench-25358 (99fce22) to 70f2ed0 (merge-base) diff Run configurationrun benchmark sort_tpch
env:
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "true"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing bench-25358 (99fce22) to 70f2ed0 (merge-base) diff Run configurationrun benchmark topk_tpch
env:
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "true"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing bench-25358 (99fce22) to 70f2ed0 (merge-base) diff Run configurationrun benchmark topk_tpch
env:
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "true"CPU Details (lscpu)Details
Resource Usagetopk_tpch — base (merge-base)
topk_tpch — branch
File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing bench-25358 (99fce22) to 70f2ed0 (merge-base) diff Run configurationrun benchmark sort_tpch
env:
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "true"CPU Details (lscpu)Details
Resource Usagesort_tpch — base (merge-base)
sort_tpch — branch
File an issue against this benchmark runner |
|
run benchmark sort_tpch topk_tpch env:
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "false" |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing bench-25358 (99fce22) to 70f2ed0 (merge-base) diff Run configurationrun benchmark sort_tpch
env:
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "false"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing bench-25358 (99fce22) to 70f2ed0 (merge-base) diff Run configurationrun benchmark topk_tpch
env:
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "false"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing bench-25358 (99fce22) to 70f2ed0 (merge-base) diff Run configurationrun benchmark topk_tpch
env:
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "false"CPU Details (lscpu)Details
Resource Usagetopk_tpch — base (merge-base)
topk_tpch — branch
File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing bench-25358 (99fce22) to 70f2ed0 (merge-base) diff Run configurationrun benchmark sort_tpch
env:
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "false"CPU Details (lscpu)Details
Resource Usagesort_tpch — base (merge-base)
sort_tpch — branch
File an issue against this benchmark runner |
|
run benchmark sql env:
BENCH_NAME: staged_sort
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "false"
baseline:
ref: 24d41f29a0 |
|
🤖 Benchmark running (GKE) | trigger CPU Details (lscpu)Comparing bench-25358 (99fce22) to 24d41f2 diff Run configurationrun benchmark sql
env:
BENCH_NAME: "staged_sort"
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "false"
baseline:
ref: "24d41f29a0"Results will be posted here when complete File an issue against this benchmark runner |
|
🤖 Benchmark completed (GKE) | trigger Instance: Comparing bench-25358 (99fce22) to 24d41f2 diff Run configurationrun benchmark sql
env:
BENCH_NAME: "staged_sort"
DATAFUSION_EXECUTION_ENABLE_STAGED_SORT: "false"
baseline:
ref: "24d41f29a0"CPU Details (lscpu)Details
Resource Usagesql — base (merge-base)
sql — branch
File an issue against this benchmark runner |
bench #25358