Xuanwo opened a new pull request, #23828:
URL: https://github.com/apache/datafusion/pull/23828
## Which issue does this PR close?
- Part of #318.
- Umbrella PR: #23738.
## Rationale for this change
This is the first layer of the ASOF JOIN stack. It establishes the physical
execution contract independently so later logical-plan, SQL, DataFrame, and
serialization changes can be reviewed as smaller follow-up PRs.
## What changes are included in this PR?
- Add `AsOfJoinExec` for left-preserving, Snowflake-style ASOF semantics.
- Require compatible equality partitioning and ordering on both inputs.
- Preserve merge state across input and output batch boundaries.
- Define output properties, statistics, and ASOF-specific metrics.
- Add physical operator tests covering match directions, equality groups,
batch boundaries, unmatched rows, and invalid contracts.
## Are these changes tested?
Yes:
- `cargo fmt --all`
- `cargo clippy --all-targets --all-features -- -D warnings`
- `cargo test -p datafusion-physical-plan joins::asof_join --all-features`
- Extended workspace tests from the contributor guide
## Are there any user-facing changes?
This adds a new physical operator API. SQL and DataFrame APIs are
intentionally
left to dependent PRs in the ASOF JOIN stack.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]