Skip to content

Split datafusion/physical-plan/src/joins/hash_join.rs into smaller modules #17260

@alamb

Description

@alamb

Is your feature request related to a problem or challenge?

While reviewing #17197 with @adriangb @jonathanc-n @kosiew and @nuno-faria I noticed that hash_join.rs is currently huge (over 5k lines long)

https://github.com/apache/datafusion/blob/main/datafusion/physical-plan/src/joins/hash_join.rs

As we add more sophistication to this area in DataFusion I think having it split into smaller modules would help make it easier to understand

Describe the solution you'd like

Split hash_join.rs into smaller modules

Describe alternatives you've considered

I recommend the standard structure like

  • datafusion/physical-plan/src/joins/hash_join/mod.rs
  • datafusion/physical-plan/src/joins/hash_join/exec.rs (HashJoinExec)
  • datafusion/physical-plan/src/joins/hash_join/stream.rs
  • datafusion/physical-plan/src/joins/hash_join/shared_bounds.rs
  • etc

Additional context

No response

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions