Investigate whether replacing `async_trait` with `dynosaur` yields perf improvements
- 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?
I was looking through axum's changelog and I stumbled upon this benchmark, where removing `async_trait` and using Rust's 1.75's native AFIT yielded a pretty substantial performance improvement.
https://github.com/tokio-rs/axum/pull/2308#issuecomment-1880186615
### Describe the solution you'd like
I want to investigate whether removing this trait in favor of native AFIT / [dynosaur](https://crates.io/crates/dynosaur) when boxed futures are needed improves query performance. I'll test with https://github.com/alamb/datafusion-benchmarking/
### Describe alternatives you've considered
N/A
### Additional context
N/A
Contributor guide
Research direction
No DataFusion files or tests are named. Start by reviewing the linked axum benchmark and the datafusion-benchmarking project, then identify the relevant async_trait usage and benchmark the native AFIT/dynosaur alternatives. Done means documenting whether replacing the trait improves query performance.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- data-engineering, performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100