Description
Is your feature request related to a problem or challenge?
This is broken out from a more general ticket here
🥳 In my opinion DataFusion is now good enough (performance and feature wise) for many people to have buit real systems and products
However, as more people build "real" systems using DataFusion, our historic "move fast and break things and hope you can keep up" mentality likely needs to adjust to a more mature "move as fast as possible, but minimize breakages" type response.
My summary of the discussion on #13525 from @findepi @scsmithr @waynexia @timsaucer @Rachelint @Omega359 @jonmmease @Dandandan and @andygrove was that many existing heavy users of DataFusion spend a lot of time during upgrades from one DataFusion release to another
Specifically, I think the core challenge I heard was NOT the mechnical API changes required, but the effort required to diagnose more suble issues such as:
- Queries that used to work stopped working
Describe the solution you'd like
I would like to improve the ease of upgrading DataFusion versions
There are many ways to do so and I would like to use this ticket to capture / organize the work in this area
Related Items
- [DISCUSSION] Making it easier to use DataFusion (lessons from GlareDB) #13525
- [Epic] A Collection of Additional UTF8View support tickets #13504
- Upgrade from 40 to 43 causes utf8 timestamp queries to fail #13625
- [DISCUSS] Document criteria for adding new features / what belongs in core DataFusion (e.g. sql syntax, functions, etc) #12357
- [Discuss] Release cadence / patch releases / Long Term Supported (lts) minor releases #5269
- Automatically check "invariants" #13652
- [EPIC] Run full sqllogic / sqlite test suite against DataFusion #13811
- [DISCUSS] More extensive pre-release testing #13661
- Use
cargo semver-checks
for release testing #13665 - Minor: improve the Deprecation / API health guidelines #13701
Additional testing
- [DISCUSSION] More SqlLogicTest test coverage for queries, including join queries #13470
- Systematic fuzz testing for parquet predicate pushdown #12115
- Aggregation fuzz testing #12114