Skip to content

[python] support predicate NotBetween, Like function#7352

Merged
JingsongLi merged 4 commits intoapache:masterfrom
plusplusjiajia:python-predicate
Mar 8, 2026
Merged

[python] support predicate NotBetween, Like function#7352
JingsongLi merged 4 commits intoapache:masterfrom
plusplusjiajia:python-predicate

Conversation

@plusplusjiajia
Copy link
Member

Purpose

  • Add predicate negate support
  • NotBetween, Like, AlwaysTrue, AlwaysFalse function

Generative AI tooling

Claude-4.6

@JingsongLi
Copy link
Contributor

Why need to support negate?

@plusplusjiajia
Copy link
Member Author

Why need to support negate?

Thanks for the question. The original intent was to align with the Java implementation which supports negate(). However, after a look, negate doesn't actually affect predicate serialization, I will remove it.

@plusplusjiajia plusplusjiajia changed the title [python] support predicate negation and NotBetween, Like, AlwaysTrue, AlwaysFalse function [python] support predicate NotBetween, Like, AlwaysTrue, AlwaysFalse function Mar 8, 2026
@plusplusjiajia plusplusjiajia force-pushed the python-predicate branch 2 times, most recently from 57de621 to ac550a8 Compare March 8, 2026 02:36
Copy link
Contributor

@JingsongLi JingsongLi left a comment

Choose a reason for hiding this comment

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

always_true and always_false are also useless for python. They are just for Spark SQL.

@plusplusjiajia plusplusjiajia changed the title [python] support predicate NotBetween, Like, AlwaysTrue, AlwaysFalse function [python] support predicate NotBetween, Like function Mar 8, 2026
Copy link
Contributor

@JingsongLi JingsongLi left a comment

Choose a reason for hiding this comment

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

+1

@JingsongLi JingsongLi merged commit 30afdb3 into apache:master Mar 8, 2026
5 checks passed
jerry-024 added a commit to jerry-024/paimon that referenced this pull request Mar 10, 2026
* upstream/master: (31 commits)
  [python] Correct pyroaring version in requirements
  [test] Enrich table name in MergeIntoTableTestBase
  [test] Fix unstable test: FileStoreLookupFunctionTest.testLookupScanLeak
  [python] Remove useless parameters in blob_writer.py
  [rest] Introduce reset consumer api in rest (apache#7372)
  [python] Introduce Python CLI table snapshot (apache#7373)
  [python] Fix time mapping by always using time32 (apache#7371)
  [python] Introduce catalog list-dbs in Python CLI (apache#7366)
  [hotfix][docs] replace the documentation URL for data-types blob (apache#7370)
  [python] Add i short name to ignore-if-not-exists for database
  [python] Support dynamic bucket write (apache#7363)
  [python] Introduce database related commands to Python CLI (apache#7362)
  [python] Introduce table import, drop and alter to Python CLI (apache#7360)
  [python] Fix py version required in README (apache#7361)
  [test] Add missing LeafFunction coverage in PredicateJsonSerdeTest (apache#7359)
  [python] support predicate NotBetween, Like function (apache#7352)
  [python] Introduce Paimon CLI in PyPaimon (apache#7358)
  [doc] Document ignoreIfExists for create_branch
  [core] Add IF NOT EXISTS support for create_branch operation (apache#7353)
  [python] Remove oss and pylance from requirements deps
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants