Skip to content

refactor: update cmp and nested data in binary operator#18256

Merged
Jefffrey merged 2 commits into
apache:mainfrom
sunng87:refactor/cmp-ops-nested
Nov 8, 2025
Merged

refactor: update cmp and nested data in binary operator#18256
Jefffrey merged 2 commits into
apache:mainfrom
sunng87:refactor/cmp-ops-nested

Conversation

@sunng87
Copy link
Copy Markdown
Contributor

@sunng87 sunng87 commented Oct 23, 2025

Which issue does this PR close?

Rationale for this change

To keep logic clear in binary operator and make it possible to use binary operators for nested data structures in coming changes.

What changes are included in this PR?

Another housekeeping refactor for binary operators.

  • Keep the API from datum module consistent by using Operator instead of kernel function
  • Move nested data structure check into cmp operators. This allows us to implement binary operators for List, Struct and etc.

Are these changes tested?

Unit tests

Are there any user-facing changes?

N/A

@github-actions github-actions Bot added the physical-expr Changes to the physical-expr crates label Oct 23, 2025
Copy link
Copy Markdown
Contributor

@Jefffrey Jefffrey left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makes sense to me

Comment thread datafusion/physical-expr-common/src/datum.rs Outdated
@Jefffrey Jefffrey added this pull request to the merge queue Nov 8, 2025
Merged via the queue into apache:main with commit 8f90814 Nov 8, 2025
32 checks passed
hsiang-c pushed a commit to hsiang-c/datafusion that referenced this pull request Nov 9, 2025
## 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 apache#123` indicates that this PR will close issue apache#123.
-->

- Related apache#18210 

## Rationale for this change

To keep logic clear in binary operator and make it possible to use
binary operators for nested data structures in coming changes.

## What changes are included in this PR?

Another housekeeping refactor for binary operators.

- Keep the API from datum module consistent by using `Operator` instead
of kernel function
- Move nested data structure check into cmp operators. This allows us to
implement binary operators for `List`, `Struct` and etc.

## Are these changes tested?

Unit tests

## Are there any user-facing changes?

N/A
codetyri0n pushed a commit to codetyri0n/datafusion that referenced this pull request Nov 11, 2025
## 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 apache#123` indicates that this PR will close issue apache#123.
-->

- Related apache#18210 

## Rationale for this change

To keep logic clear in binary operator and make it possible to use
binary operators for nested data structures in coming changes.

## What changes are included in this PR?

Another housekeeping refactor for binary operators.

- Keep the API from datum module consistent by using `Operator` instead
of kernel function
- Move nested data structure check into cmp operators. This allows us to
implement binary operators for `List`, `Struct` and etc.

## Are these changes tested?

Unit tests

## Are there any user-facing changes?

N/A
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

physical-expr Changes to the physical-expr crates

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants