Skip to content

Bump Paimon 2.1.0 and enable Paimon tests for Spark 4.1 - #7789

Closed
pan3793 wants to merge 3 commits into
apache:masterfrom
pan3793:paimon-2.1
Closed

pan3793 wants to merge 3 commits into
apache:masterfrom
pan3793:paimon-2.1

Conversation

@pan3793

@pan3793 pan3793 commented Oct 16, 2026

Copy link
Copy Markdown
Member

Why are the changes needed?

Paimon 1.4.2 has no Spark 4.1 build, so the Spark 4.1 profile had to depend on the Spark 4.0 artifact (paimon-spark-4.0_2.13) and keep PaimonTest excluded. Paimon 2.1.0 ships paimon-spark-4.1_2.13, which unblocks running the Paimon authz suite on Spark 4.1.

  • paimon.version 1.4.2 -> 2.1.0 and paimon.artifact -> paimon-spark-${spark.binary.version}_${scala.binary.version} for the Spark 4.1/4.2/4.3 profiles
  • Spark 4.1: drop org.apache.kyuubi.tags.PaimonTest from maven.plugin.scalatest.exclude.tags
  • Spark 4.2/4.3: PaimonTest stays excluded; both profiles alias spark.binary.version to 4.1, so they keep resolving paimon-spark-4.1_2.13
  • Spark 4.0 keeps Paimon 1.4.2: the Spark 4.0 build of Paimon 2.x declares Spark 4.0.3, but its classes reference the Spark 4.1-only org.apache.spark.sql.connector.catalog.constraints.Constraint (Table.constraints()), so it cannot run on Spark 4.0

How was this patch tested?

PaimonCatalogRangerSparkExtensionSuite, Java 17 and Scala 2.13:

  • Spark 4.1.2 + Paimon 2.1.0: 37/37 passed
  • Spark 4.0.3 + Paimon 1.4.2: 37/37 passed
  • Spark 4.0.3 + Paimon 2.0.0 and 2.1.0: fails with NoClassDefFoundError: org.apache.spark.sql.connector.catalog.constraints.Constraint, raised inside the authz reflection helper - hence the Spark 4.0 profile stays on 1.4.2

HiveCatalogRangerSparkExtensionSuite on Spark 4.1.2 + Paimon 2.1.0: 53/53 passed.

build/mvn -B test -pl extensions/spark/kyuubi-spark-authz -am -Pspark-4.1 -Pscala-2.13 -Pspark-provided \
    -Dtest=none -DwildcardSuites=org.apache.kyuubi.plugin.spark.authz.ranger.PaimonCatalogRangerSparkExtensionSuite

Was this patch assisted by generative AI tooling?

Assisted-by: Codex with gemini-4-argon

Paimon 1.4.2 has no Spark 4.1 build, so the Spark 4.1 profile depended on the
Spark 4.0 artifact and kept the Paimon tests excluded. Paimon 2.1.0 ships
paimon-spark-4.1_2.13, so the suite can run there now.

The Spark 4.0 profile stays on 1.4.2: the Spark 4.0 build of Paimon 2.x
references the Spark 4.1-only Table.constraints() API.
@pan3793 pan3793 self-assigned this Oct 16, 2026
@pan3793 pan3793 added this to the v1.13.0 milestone Oct 16, 2026
@pan3793 pan3793 closed this in 61399f8 Oct 16, 2026
@pan3793

pan3793 commented Oct 16, 2026

Copy link
Copy Markdown
Member Author

Merge Summary:

Posted by merge_kyuubi_pr.py

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.

1 participant