Repository navigation
[pull] main from apache:main - #274
Merged
Merged
Conversation
## 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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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 : )