-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Description
Follow on to Dec 4 2023:
Boilerplate Overview
The idea of this ticket is make my plans for DataFusion visible, largely for my own personal organizational needs, but also to:
- Try some different ways to communicate / coordinate in the community
- Help provide an interesting summary of what is happening in DataFusion this week
It would be great if anyone else who has plans like this for DataFusion could try to make them visible somehow as well
My (personal) plans for this week
- Shepherd the PRs through Support general pruning based on
<col> = 'const'
inPruningPredicate
#8376 - Fix Incorrect results due to repartitioning a sorted ParquetExec #8451)
- Draft proposal to move DataFusion to a new top level apache project #8491
- Reproduce other bugs / limitations we have hit while upgrading DataFusion in InfluxDB IOx
Project Queue (list of future projects)
- FIFO
JoinHashMap
forHashJoin
#8130, in support of memory explosion in HashJoin outputs:HashJoinStream
memory tracking insufficient #7848 - Epic: Statistics improvements #8227 (specifically, Consolidate statistics aggregation #8229 as a step towards Introduce a way to represent constrained statistics / bounds on values in Statistics #8078)
Projects I hope to help review and coordinate
- Next steps towards function packages more modular (make all BuiltInScalarFunctions ScalarUDFs): [EPIC] Unify Function Interface (remove
BuiltInScalarFunction
) #8045 with @2010YOUY01 and @edmondop . This week I hope to help get SupportExpr
creation forScalarUDF
: Resolve function calls by name during planning #8157 complete, and move on to RFC: Demonstrate what a function package might look like -- encoding expressions #8046 - Review any new ticket / bug reports
Algorithm for (my) prioritizing PR reviews
Note there are many committers who can review and merge PRs, so this is not the priorities of the project as a whole, just the approximate algorithm I am using
Priority:
- Bug fixes (where something is just incorrect), especially regressions (where it used to work and now does not)
- Improvements directly related to features needed for InfluxDB (my employer)
- Documentation and test improvements (I view these as very strategically important)
- PRs that I think are strategically important
- Other new features / additions to functionality
The current strategically important projects in my head are:
- Making function packages modular and easier to mix/match: [EPIC] Unify Function Interface (remove
BuiltInScalarFunction
) #8045 - Improving performance of high cardinality aggregation (I have dreams of working on this over christmas break)
Thus, if you are interested in contributing to DataFusion and are interested in a fast turn around time I would recommend looking into bug fixes / test improvements / documentation / etc.
If you propose adding new functionality, the review cycle will likely be longer. You can make it a shorter cycle by looking at the comments on other recent PRs and following the same model (e.g. ensure there are tests in sqllogictest for example, the CI passes, includes documentation, etc)