This is an automated email from the ASF dual-hosted git repository.
voonhous pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hudi.git
The following commit(s) were added to refs/heads/master by this push:
new ac6456aca657 fix(build): align the root kafka.version default with
spark3.5 (#19987)
ac6456aca657 is described below
commit ac6456aca657fcba749364d0fd4489975c486c77
Author: voonhous <[email protected]>
AuthorDate: Fri Sep 18 16:17:10 2026 +0800
fix(build): align the root kafka.version default with spark3.5 (#19987)
Any active profile in the root pom turns off the activeByDefault
spark3.5 and flink2.2 profiles. The java11/java17 profiles activate on
the running JDK, so every build that names no Spark profile falls back
to the root kafka.version default, 2.0.0:
- `mvn -Prelease clean install` fails to compile
KafkaAvroSchemaDeserializer: kafka-clients 2.0.0's Deserializer has
no deserialize(String, Headers, byte[]) overload for its @Override.
- The Flink CI jobs (-Dflink* without a Spark profile) build and test
hudi-flink and hudi-examples-flink against kafka-clients 2.0.0,
while the release deploy builds pass -Dspark3.5 and get 3.4.1.
Set the default to 3.4.1, matching spark3.5 like the other root
defaults (hudi.spark.module, spark.version) already do.
The release guide's build check now names -Dscala-2.12 -Dspark3.5
-Dflink2.2: -Prelease otherwise leaves hudi-spark3.5.x,
hudi-spark3-common and hudi-flink2.2.x out of the reactor, and the
modules depending on them resolve stale jars from the local repository.
---
pom.xml | 4 +++-
release/release_guide.md | 7 +++----
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/pom.xml b/pom.xml
index 787a7b445eb6..341a7838f0f3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -104,7 +104,9 @@
<fasterxml.jackson.databind.version>${fasterxml.spark3.version}</fasterxml.jackson.databind.version>
<fasterxml.jackson.module.scala.version>${fasterxml.spark3.version}</fasterxml.jackson.module.scala.version>
<fasterxml.jackson.dataformat.yaml.version>${fasterxml.spark3.version}</fasterxml.jackson.dataformat.yaml.version>
- <kafka.version>2.0.0</kafka.version>
+ <!-- Used by every build that selects no Spark profile: the JDK-activated
java11/java17 profiles always
+ turn off the activeByDefault spark3.5 profile. Keep in sync with
spark3.5. -->
+ <kafka.version>3.4.1</kafka.version>
<pulsar.version>3.0.2</pulsar.version>
<tika.version>3.3.2</tika.version>
<kafka.connect.api.version>2.5.0</kafka.connect.api.version>
diff --git a/release/release_guide.md b/release/release_guide.md
index e48599cd01b9..2c4c501b6dbc 100644
--- a/release/release_guide.md
+++ b/release/release_guide.md
@@ -343,14 +343,13 @@ Source Release step) -- otherwise the voted tarball ships
a `-SNAPSHOT` Trino pi
## Verify that a Release Build Works
-Run "mvn -Prelease clean install" to ensure that the build processes are in
good shape. // You need to execute this command once you have the release
branch in apache/hudi
+Run the `mvn -Prelease clean install` command below to ensure that the build
processes are in good shape. // You need to execute this command once you have
the release branch in apache/hudi
Good to run this for all profiles
```shell
-mvn -Prelease clean install
-mvn -Prelease clean install -Dscala-2.12
-mvn -Prelease clean install -Dspark3
+# -Prelease turns off the activeByDefault profiles; keep these in sync with
the activeByDefault spark and flink profiles in the root pom.xml
+mvn -Prelease clean install -Dscala-2.12 -Dspark3.5 -Dflink2.2
```
## Checklist to proceed to the next step