build: change default Maven profile to Spark 4.1 / Scala 2.13#4140
Merged
andygrove merged 8 commits intoapache:mainfrom May 7, 2026
Merged
build: change default Maven profile to Spark 4.1 / Scala 2.13#4140andygrove merged 8 commits intoapache:mainfrom
andygrove merged 8 commits intoapache:mainfrom
Conversation
Update the default build configuration from Spark 3.5 / Scala 2.12 to Spark 4.0 / Scala 2.13. The spark-3.4 and spark-3.5 profiles now explicitly set scala.binary.version, shims.majorVerSrc, and semanticdb.version since those defaults have changed. The scala-2.12 profile is populated and scala-2.13 is now empty (matching defaults). Also updates Dockerfile, Docker publish workflow, and all documentation to reflect the new defaults. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…K to 17 The scala-2.13 profile must retain its properties so that `-Pspark-3.x -Pscala-2.13` correctly overrides the Spark profile's scala.binary.version=2.12. Without this, Iceberg CI builds produce _2.12 artifacts when _2.13 is expected. The TPC-DS/TPC-H verification jobs used JDK 11 with no explicit Spark profile, so they now inherit the Spark 4.0 default which requires JDK 17. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The spark/pom.xml Iceberg dependency profiles use activeByDefault to provide the right Iceberg version when no -Pspark-* is passed. Since the default is now Spark 4.0, the activeByDefault must be on the spark-4.0 profile (Iceberg 1.10.0) rather than spark-3.5 (Iceberg 1.8.1), otherwise Maven resolves the non-existent artifact iceberg-spark-runtime-4.0_2.13:1.8.1. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Updates root pom.xml defaults to Spark 4.1.1, Scala 2.13.17, Parquet 1.16.0, slf4j 2.0.17, and shim sources to spark-4.1. Moves activeByDefault from spark-4.0 to spark-4.1 in spark/pom.xml. Bumps kube/Dockerfile to apache/spark:4.1.1, the docker-publish image tag, and all docs and example commands that the previous default-bump PR had updated to spark4.0_2.13.
Contributor
|
Seems like the benchmark queries failed : |
Member
Author
Ah, these queries contain |
comphead
reviewed
May 6, 2026
comphead
reviewed
May 6, 2026
comphead
approved these changes
May 6, 2026
The TPC-H data generation step launches Spark via `mvnw exec:java`, which falls outside surefire's argLine, so the --add-opens flags from pom.xml do not apply. With this PR bumping these jobs from JDK 11 to JDK 17, GenTPCHData hangs in shuffle when Kryo reflectively probes java.nio.ByteBuffer.hb. Set JAVA_TOOL_OPTIONS at the job level so both exec:java and surefire forks get the required flags.
…DS jobs The previous flag set only opened java.lang and java.nio, but with the default profile now Spark 4.1 / Scala 2.13 the TPC-H GenTPCHData run trips on SerializedLambda.capturingClass and dies with InaccessibleObjectException for java.lang.invoke. Mirror the full list from pom.xml's extraJavaTestArgs so any other reflection-driven access into java.base also has the matching --add-opens grant.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
spark-3.4andspark-3.5profiles to explicitly setscala.binary.version=2.12,shims.majorVerSrc=spark-3.x, andsemanticdb.version=4.8.8(previously inherited from defaults)scala-2.12profile with explicit properties and emptiesscala-2.13(now matches defaults)spark-4.0profileWhich issue does this PR close?
N/A
Test plan
Existing tests run across all Spark versions