Skip to content

[pull] main from apache:main - #274

Merged
pull[bot] merged 2 commits into
buraksenn:mainfrom
apache:main
Jun 11, 2026
Merged

pull[bot] merged 2 commits into
buraksenn:mainfrom
apache:main

Conversation

@pull

@pull pull Bot commented Jun 11, 2026 •

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

alamb and others added 2 commits June 11, 2026 12:22
## Which issue does this PR close?

<!--
We generally require a GitHub issue to be filed for all bug fixes and
enhancements and this helps us generate change logs for our releases.
You can link an issue to this PR using the GitHub syntax. For example
`Closes #123` indicates that this PR will close issue #123.
-->

- Related to #22882.

## Rationale for this change

I opened a new roadmap discussion, [DataFusion 2026 Q3-Q4 Roadmap
Discussion](#22882), and it
would be nice if public-facing docs pointed readers at it so the
community can find and join the current discussion.

## What changes are included in this PR?

- Add a roadmap pointer to the `README.md` "Contributing to DataFusion"
section linking to the roadmap docs and the current discussion (#22882).
- Update the contributor-guide roadmap page
(`docs/source/contributor-guide/roadmap.md`) to call out #22882 as the
current discussion and list it at the top of the quarterly roadmap
discussions.

## Are these changes tested?

No tests; documentation-only change.

## Are there any user-facing changes?

Documentation only — adds links to the current roadmap discussion.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
## Which issue does this PR close?

- Closes #22594

## Rationale for this change

This PR extends the `EliminateJoin` rewrite pass to replace inner joins
with semi joins in some cases. An inner join `L ⋈ R` can be rewritten to
a left semi join `L ⋉ R` if two conditions hold:

1. None of R's columns are referenced above the join
2. (a) each L row matches at most one R row, OR (b) the consumers of the
join result are insensitive to duplicates

(And symmetrically with right semi joins.)

## What changes are included in this PR?

* Add `for_each_referenced_index` helper that is used by both
`EliminateJoin` and `EliminateProjections`
* Introduce `LiveColumns` type to track the "live" (referenced by
parent) columns of a plan node
* Add inner -> semi join rewrite to `EliminateJoin`
* Add unit and SLT tests for rewrite behavior
* Update SLT test fixtures for plan changes

## Are these changes tested?

Yes; new tests added.

## Are there any user-facing changes?

Some plan changes but no behavioral changes.

---------

Co-authored-by: Daniël Heres <danielheres@gmail.com>
@pull pull Bot locked and limited conversation to collaborators Jun 11, 2026
@pull pull Bot added the ⤵️ pull label Jun 11, 2026
@pull
pull Bot merged commit b8998c7 into buraksenn:main Jun 11, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants