Skip to content
Navigation Menu
Sign in
Appearance settings
Platform
AI CODE CREATION
GitHub Copilot
Write better code with AI
GitHub Copilot app
Direct agents from issue to merge
MCP Registry
Integrate external tools
DEVELOPER WORKFLOWS
Actions
Automate any workflow
Codespaces
Instant dev environments
Issues
Plan and track work
Code Review
Manage code changes
Code Quality
Enforce quality at merge
APPLICATION SECURITY
GitHub Advanced Security
Find and fix vulnerabilities
Code security
Secure your code as you build
Secret protection
Stop leaks before they start
EXPLORE
Why GitHub
Documentation
Blog
Changelog
Marketplace
View all features
Solutions
BY COMPANY SIZE
Enterprises
Small and medium teams
Startups
Nonprofits
BY USE CASE
App Modernization
DevSecOps
DevOps
CI/CD
View all use cases
BY INDUSTRY
Healthcare
Financial services
Manufacturing
Government
View all industries
View all solutions
Resources
EXPLORE BY TOPIC
AI
Software Development
DevOps
Security
View all topics
EXPLORE BY TYPE
Customer stories
Events & webinars
Ebooks & reports
Business insights
GitHub Skills
SUPPORT & SERVICES
Documentation
Customer support
Community forum
Trust center
Partners
View all resources
Open Source
COMMUNITY
GitHub Sponsors
Fund open source developers
PROGRAMS
Security Lab
Maintainer Community
GitHub Stars
Archive Program
REPOSITORIES
Topics
Trending
Collections
Enterprise
ENTERPRISE SOLUTIONS
Enterprise platform
AI-powered developer platform
AVAILABLE ADD-ONS
GitHub Advanced Security
Enterprise-grade security features
Copilot for Business
Enterprise-grade AI features
Premium Support
Enterprise-grade 24/7 support
Pricing
Search
/
Sign in
Sign up
Appearance settings
You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Dismiss alert
{{ message }}
apache
datafusion
Repository navigation
Code
Issues
1.9k
(1.9k)
Pull requests
448
(448)
Discussions
Actions
Security and quality
Insights
More
items
feat: cost-based join order enumeration
- #24456
#24456
Draft
Dandandan
wants to merge 22 commits into
apache:main
apache/datafusion:main
from
Dandandan:perf/join-order-enumeration
Dandandan/arrow-datafusion:perf/join-order-enumeration
Copy head branch name to clipboard
Conversation
Commits
22
(22)
Checks
Files changed
Draft
feat: cost-based join order enumeration
#24456
Dandandan
wants to merge 22 commits into
apache:main
apache/datafusion:main
from
Dandandan:perf/join-order-enumeration
Dandandan/arrow-datafusion:perf/join-order-enumeration
Copy head branch name to clipboard
Commits
Commits on Aug 18, 2026
feat: cost-based join order enumeration in JoinSelection
Show description for a329cf3
Dandandan
and
claude
committed
a329cf3
View commit details
Copy full SHA for a329cf3
Browse repository at this point
fix: require a margin before replacing the planner's join order
Show description for aa652b5
Dandandan
and
claude
committed
aa652b5
View commit details
Copy full SHA for aa652b5
Browse repository at this point
fix: estimate a filter one conjunct at a time, and estimate IN lists
Show description for de80dd7
Dandandan
and
claude
committed
de80dd7
View commit details
Copy full SHA for de80dd7
Browse repository at this point
refactor: trim join enumeration comments, drop the greedy fallback
Show description for 1040be5
Dandandan
and
claude
committed
1040be5
View commit details
Copy full SHA for 1040be5
Browse repository at this point
fix: keep the enumeration module private and drop unused async from tests
Show description for 1a3ab0c
Dandandan
and
claude
committed
1a3ab0c
View commit details
Copy full SHA for 1a3ab0c
Browse repository at this point
fix: don't re-enumerate inside a subtree whose order was kept
Show description for 47f3a39
Dandandan
and
claude
committed
47f3a39
View commit details
Copy full SHA for 47f3a39
Browse repository at this point
refactor: make join enumeration its own rule
Show description for 074cd43
Dandandan
and
claude
committed
074cd43
View commit details
Copy full SHA for 074cd43
Browse repository at this point
Commits on Aug 19, 2026
docs: add join_enumeration to the optimizer rule reference
Show description for 53da44d
Dandandan
and
claude
committed
53da44d
View commit details
Copy full SHA for 53da44d
Browse repository at this point
feat: enumerate sort merge join orders too
Show description for f37ebb5
Dandandan
and
claude
committed
f37ebb5
View commit details
Copy full SHA for f37ebb5
Browse repository at this point
feat: enumerate cross and nested loop join orders too
Show description for 636b455
Dandandan
and
claude
committed
636b455
View commit details
Copy full SHA for 636b455
Browse repository at this point
Cost partitioning in join enumeration, raise the collect threshold
Show description for 4c34486
Dandandan
and
claude
committed
4c34486
View commit details
Copy full SHA for 4c34486
Browse repository at this point
Fix two costs the search got wrong for sort merge and keyless joins
Show description for cf466ca
Dandandan
and
claude
committed
cf466ca
View commit details
Copy full SHA for cf466ca
Browse repository at this point
Merge upstream/main into perf/join-order-enumeration
Show description for bae4492
Dandandan
and
claude
committed
bae4492
View commit details
Copy full SHA for bae4492
Browse repository at this point
Commits on Aug 20, 2026
Merge remote-tracking branch 'upstream/main' into perf/join-order-enumeration
Dandandan
committed
f4a3d75
View commit details
Copy full SHA for f4a3d75
Browse repository at this point
Trim the comments this PR added
Show description for 3496d02
Dandandan
and
claude
committed
3496d02
View commit details
Copy full SHA for 3496d02
Browse repository at this point
Narrow each rebuilt sort merge join instead of once above the subtree
Show description for 29c224d
Dandandan
and
claude
committed
29c224d
View commit details
Copy full SHA for 29c224d
Browse repository at this point
Commits on Aug 21, 2026
Make the cost model a trait others can plug into
Show description for 8126ad3
Dandandan
and
claude
committed
8126ad3
View commit details
Copy full SHA for 8126ad3
Browse repository at this point
Move the join graph into its own module
Show description for a61d01b
Dandandan
and
claude
committed
a61d01b
View commit details
Copy full SHA for a61d01b
Browse repository at this point
Commits on Aug 22, 2026
Search join orders with DPhyp, and take outer, mark and cast-keyed joins with it
Show description for e973ab1
Dandandan
and
claude
committed
e973ab1
View commit details
Copy full SHA for e973ab1
Browse repository at this point
Merge remote-tracking branch 'upstream/main' into perf/join-order-enumeration
Show description for b8acd17
Dandandan
and
claude
committed
b8acd17
View commit details
Copy full SHA for b8acd17
Browse repository at this point
Commits on Oct 1, 2026
Merge remote-tracking branch 'upstream/main' into perf/join-order-enumeration
Show description for 86d7afc
Dandandan
and
claude
committed
86d7afc
View commit details
Copy full SHA for 86d7afc
Browse repository at this point
Update two upstream tests for join order enumeration
Show description for 472e83e
Dandandan
and
claude
committed
472e83e
View commit details
Copy full SHA for 472e83e
Browse repository at this point
You can’t perform that action at this time.