- 
                Notifications
    You must be signed in to change notification settings 
- Fork 1.7k
Description
Is your feature request related to a problem or challenge?
- Part of [EPIC] Extract remaining physical optimizer out of core #11502
- Related to Building project takes a *long* time  (esp compilation time for datafusioncore crate) #13814
Historically DataFusion was one (very) large crate datafusion, and as it grew bigger we extracted various functionality into separate crates. This leads to both faster compile times (as the crates can be compiled in parallel) as well easier to navigate code (as the crates force a cleaner dependency separation)
One project we have not yet completed is to extract the physical optimizer passes out #11502
- The original physical optimizers are here https://github.com/apache/datafusion/tree/main/datafusion/core/src/physical_optimizer
- The new crate is here https://github.com/apache/datafusion/tree/main/datafusion/physical-optimizer
Describe the solution you'd like
Extract the JoinSelection from the datafusion core crate to the datafusion-physical-optimizer crate
Describe alternatives you've considered
Move https://github.com/apache/datafusion/blob/main/datafusion/core/src/physical_optimizer/join_selection.rs to
https://github.com/apache/datafusion/tree/main/datafusion/physical-optimizer/src/
Additional context
Here is an example PR:
I think this is a good first issue as it is mostly mechanical and does not require deep internals knowledge