Skip to content

Conversation

@hawk9821
Copy link
Contributor

Purpose of this pull request

Does this PR introduce any user-facing change?

How was this patch tested?

Check list

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This pull request adds support for predicate pushdown in Paimon by extending SQL predicate conversion to handle IN and NOT IN expressions, updates corresponding configuration files for end-to-end tests, and improves documentation to reflect these capabilities.

  • Added new configuration files (filter6 and filter7) to test IN/NOT IN predicate pushdown.
  • Extended the SQL predicate converter to handle IN expressions.
  • Updated documentation in both Chinese and English regarding supported operators.

Reviewed Changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-paimon-e2e/src/test/resources/paimon_to_assert_with_filter7.conf New end-to-end test configuration for NOT IN filtering.
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-paimon-e2e/src/test/resources/paimon_to_assert_with_filter6.conf New end-to-end test configuration for IN filtering.
seatunnel-e2e/seatunnel-connector-v2-e2e/connector-paimon-e2e/src/test/java/org/apache/seatunnel/e2e/connector/paimon/PaimonSinkCDCIT.java Extended test cases to run the new configurations.
seatunnel-connectors-v2/connector-paimon/src/main/java/org/apache/seatunnel/connectors/seatunnel/paimon/source/converter/SqlToPaimonPredicateConverter.java Added logic to handle IN expressions in SQL predicate conversion.
docs/zh/connector-v2/source/Paimon.md
docs/en/connector-v2/source/Paimon.md
Updated documentation with IN and NOT IN operator support.
Comments suppressed due to low confidence (2)

seatunnel-connectors-v2/connector-paimon/src/main/java/org/apache/seatunnel/connectors/seatunnel/paimon/source/converter/SqlToPaimonPredicateConverter.java:300

  • [nitpick] There is a typo in the variable name 'theFiled'; consider renaming it to 'theField' for improved clarity.
Optional<DataField> theFiled =

seatunnel-connectors-v2/connector-paimon/src/main/java/org/apache/seatunnel/connectors/seatunnel/paimon/source/converter/SqlToPaimonPredicateConverter.java:268

  • Consider adding negative test cases to verify that handleInExpression correctly throws exceptions for empty expression lists and for cases when null values are encountered within the IN clause.
if (expressions.isEmpty()) {

@hailin0 hailin0 merged commit 1ec4375 into apache:dev May 29, 2025
6 checks passed
@hawk9821 hawk9821 deleted the paimon_in_predicate branch May 29, 2025 15:56
dybyte pushed a commit to dybyte/seatunnel that referenced this pull request Jul 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants