apache / apache/datafusion

Improve `verify benchmark results` time (even) more by using debug (rather than release) build

Open
#7,709 1 comment 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Rust
Stars
9.3k
Forks
2.4k
Avg merge
3d 7h
Merged PRs (30d)
344

Description

### Is your feature request related to a problem or challenge?

While reviewing https://github.com/apache/arrow-datafusion/pull/7708 from @sarutak I spent time looking into what `plan_q` does and it is not at all clear to me it needs to be built in release mode:

https://github.com/apache/arrow-datafusion/blob/46cdb8c2dc495e8063a0adc5c3f9ac82b136e72e/benchmarks/src/tpch/run.rs#L297-L453

### Describe the solution you'd like

Since the benchmark verifies the plans (rather than actually running them). I think it is ok to use debug mode (rather than release) mode which compiles faster and will have more reuse with the subsequent call to `cargo test --test sqllogictests`

### Describe alternatives you've considered

_No response_

### Additional context

_No response_

Contributor guide

Open the contributing guide

Research direction

Start in benchmarks/src/tpch/run.rs around the referenced plan_q code and trace how the verification benchmark is built. Compare the benchmark build with the subsequent cargo test --test sqllogictests invocation; done means verification uses debug mode without changing the plan checks or benchmark behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
build-system
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.