[MINOR][CI] Use spark-4.0 instead of the nonexistent spark-4 profile in the m2 cache image - #12903
Merged
Merged
Conversation
LuciferYang
commented
Aug 26, 2026
|
|
||
| # Spark 4.0 | ||
| $MVN_CMD -Pjava-17,scala-2.13,spark-4,backends-velox,hadoop-3.3,spark-ut \ | ||
| $MVN_CMD -Pjava-17,scala-2.13,spark-4.0,backends-velox,hadoop-3.3,spark-ut \ |
Contributor
Author
|
Thank you @jackylee-ch |
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.
What changes are proposed in this pull request?
dev/docker/ubuntu/Dockerfile.ubuntu22-m2-cachepre-populates the Maven cache with onedependency:go-offlineper supported Spark version. The stanza commented# Spark 4.0passes-Pspark-4, which is not a profile id: the root pom definesspark-3.4,spark-3.5,spark-4.0andspark-4.1. Maven printsThe requested profile "spark-4" could not be activated because it does not exist., continues with no Spark profile active, and that stanza resolves against the root pom's default properties instead of Spark 4.0's.enforce-spark-profiledoes not catch it.dependency:go-offlineinvokes the plugin goal directly rather than running a lifecycle, and that enforcer execution binds tovalidate, so it never fires. The command exits 0 after the warning, which is why this went unnoticed since #11655.The defaults lean 3.5, so the stanza caches a mix:
-Pspark-4(no profile active)-Pspark-4.0spark.versiondelta.versionsparkshim.artifactIdspark-sql-columnar-shims-spark35spark-sql-columnar-shims-spark40sparkbundle.versionspark.versionagrees by accident, because the root default is already 4.0.2, so the Spark 4.0 jars do land in the image; Delta 4.0.1 does not. To be accurate about the scope of that: nothing in this repo consumesapache/gluten:ubuntu22-m2-cache.docker_image.ymlbuilds and pushes it, no workflow references it as acontainer:, and neither.devcontainernor any script or doc mentions it.git log -S 'ubuntu22-m2-cache' --allreturns only #11655, so it never had an in-repo consumer that was later dropped. The effect today is therefore confined to the published image: the stanza labelled# Spark 4.0does not pre-populate what it says it does, for whoever pulls that image by hand. After this fix the stanza does real work, so the image build takes longer and the image grows by whatever Spark 4.0's Delta tree weighs. That is the intent.Split out of #12902, which removes Spark 3.3 support and had to edit the same
RUNfor an unrelated reason (deleting the trailing Spark 3.3 stanza left a dangling; \). This change adds behavior rather than removing it, so it is easier to review and to revert on its own.How was this patch tested?
The property table is reproducible from the repo root, and it is the whole substance of the change:
docker buildx build --checkon the file reports the same single pre-existingNoEmptyContinuationwarning before and after, so the edit changes nothing structural.The image is built by
docker_image.yml, which triggers on push to main underdev/docker/ubuntu/*and on a weekly cron, so the effect appears when that workflow runs rather than in PR CI.Was this patch authored or co-authored using generative AI tooling?
Generated-by: Claude claude-opus-5