Skip to content

Conversation

rkrishn7
Copy link
Contributor

@rkrishn7 rkrishn7 commented Sep 6, 2025

Which issue does this PR close?

What changes are included in this PR?

Adds a simple synchronization mechanism (BoundsWaiter) for tasks to wait on complete bounds for left side and for the dynamic filter expr to be built.

Are these changes tested?

Not presently, open to ideas on regression tests we can add!

Are there any user-facing changes?

@github-actions github-actions bot added core Core DataFusion crate physical-plan Changes to the physical-plan crate labels Sep 6, 2025
@@ -61,6 +62,12 @@ impl FileOpener for TestOpener {
_file_meta: FileMeta,
_file: PartitionedFile,
) -> Result<FileOpenFuture> {
if let Some(predicate) = &self.predicate {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will take this out, just leaving here for now for visualization.

I wonder what are good ways to regression test this 🤔

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The best I can think of would be to make a custom ExecutionPlan that delays partition 0 for 1s or something and check that we still read the expected number of rows on the probe side

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core Core DataFusion crate physical-plan Changes to the physical-plan crate
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Ensure dynamic filter expr is built before fetching probe batch in HashJoin
2 participants