Skip to content

fix: drop dynamic filter in hash-join when swap inputs#23078

Open
haohuaijin wants to merge 3 commits into
apache:mainfrom
haohuaijin:drop-dynamic-filter-when-swap-inputs
Open

fix: drop dynamic filter in hash-join when swap inputs#23078
haohuaijin wants to merge 3 commits into
apache:mainfrom
haohuaijin:drop-dynamic-filter-when-swap-inputs

Conversation

@haohuaijin

@haohuaijin haohuaijin commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Which issue does this PR close?

Rationale for this change

Dynamic filters are runtime state tied to the probe side. swap_inputs changes the probe side, so preserving the old filter is unsafe and can lead to wrong column references.

What changes are included in this PR?

remove the dynamic_filter while swap inputs in HashJoinExec:

.with_dynamic_filter(None)

Are these changes tested?

yes, add one test case

Are there any user-facing changes?

no

@github-actions github-actions Bot added the physical-plan Changes to the physical-plan crate label Jun 22, 2026
@github-actions github-actions Bot added the proto Related to proto crate label Jun 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

physical-plan Changes to the physical-plan crate proto Related to proto crate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

HashJoinExec::swap_inputs preserves old dynamic filter after swap

2 participants