This is an automated email from the ASF dual-hosted git repository.
wForget pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gluten.git
The following commit(s) were added to refs/heads/main by this push:
new 7e04fae42e [GLUTEN-12053][CELEBORN] Bump Celeborn version to 0.6.3
(#12057)
7e04fae42e is described below
commit 7e04fae42e5150e6619452e18c05568e70e9a1fc
Author: Nicholas Jiang <[email protected]>
AuthorDate: Mon May 11 13:28:39 2026 +0800
[GLUTEN-12053][CELEBORN] Bump Celeborn version to 0.6.3 (#12057)
---
.github/workflows/velox_backend_x86.yml | 4 +-
dev/docker/Dockerfile.centos8-dynamic-build | 2 +-
dev/docker/Dockerfile.centos9-dynamic-build | 2 +-
.../shuffle/gluten/celeborn/CelebornUtils.java | 50 ++++++++++++++++++++++
.../shuffle/CelebornColumnarShuffleWriter.scala | 19 ++++++--
pom.xml | 2 +-
tools/gluten-it/pom.xml | 4 +-
7 files changed, 73 insertions(+), 10 deletions(-)
diff --git a/.github/workflows/velox_backend_x86.yml
b/.github/workflows/velox_backend_x86.yml
index c7d98cac19..e06d0d0554 100644
--- a/.github/workflows/velox_backend_x86.yml
+++ b/.github/workflows/velox_backend_x86.yml
@@ -595,7 +595,7 @@ jobs:
fail-fast: false
matrix:
spark: [ "spark-3.3" ]
- celeborn: [ "celeborn-0.6.1", "celeborn-0.5.4"]
+ celeborn: [ "celeborn-0.6.3", "celeborn-0.5.4"]
writer: ["sort", "hash"]
runs-on: ubuntu-22.04
container: centos:8
@@ -630,7 +630,7 @@ jobs:
EXTRA_PROFILE=""
if [ "${{ matrix.celeborn }}" = "celeborn-0.5.4" ]; then
EXTRA_PROFILE="-Pceleborn-0.5"
- elif [ "${{ matrix.celeborn }}" = "celeborn-0.6.1" ]; then
+ elif [ "${{ matrix.celeborn }}" = "celeborn-0.6.3" ]; then
EXTRA_PROFILE="-Pceleborn-0.6"
fi
echo "EXTRA_PROFILE: ${EXTRA_PROFILE}"
diff --git a/dev/docker/Dockerfile.centos8-dynamic-build
b/dev/docker/Dockerfile.centos8-dynamic-build
index b87e234bab..48f45794a4 100644
--- a/dev/docker/Dockerfile.centos8-dynamic-build
+++ b/dev/docker/Dockerfile.centos8-dynamic-build
@@ -33,7 +33,7 @@ RUN set -ex; \
yum install -y java-${JAVA_VERSION}-openjdk-devel patch wget git perl; \
mirror_host="https://www.apache.org/dyn/closer.lua"; \
wget -nv
${mirror_host}/celeborn/celeborn-0.5.4/apache-celeborn-0.5.4-bin.tgz?action=download
-O /opt/apache-celeborn-0.5.4-bin.tgz; \
- wget -nv
${mirror_host}/celeborn/celeborn-0.6.1/apache-celeborn-0.6.1-bin.tgz?action=download
-O /opt/apache-celeborn-0.6.1-bin.tgz; \
+ wget -nv
${mirror_host}/celeborn/celeborn-0.6.3/apache-celeborn-0.6.3-bin.tgz?action=download
-O /opt/apache-celeborn-0.6.3-bin.tgz; \
wget -nv
${mirror_host}/uniffle/0.10.0/apache-uniffle-0.10.0-bin.tar.gz?action=download
-O /opt/apache-uniffle-0.10.0-bin.tar.gz; \
wget -nv
${mirror_host}/hadoop/common/hadoop-2.8.5/hadoop-2.8.5.tar.gz?action=download
-O /opt/hadoop-2.8.5.tar.gz; \
git clone --depth=1 https://github.com/apache/gluten /opt/gluten; \
diff --git a/dev/docker/Dockerfile.centos9-dynamic-build
b/dev/docker/Dockerfile.centos9-dynamic-build
index 2034bf01e7..7b3387ce8c 100644
--- a/dev/docker/Dockerfile.centos9-dynamic-build
+++ b/dev/docker/Dockerfile.centos9-dynamic-build
@@ -31,7 +31,7 @@ RUN set -ex; \
yum install -y java-${JAVA_VERSION}-openjdk-devel patch wget git perl; \
mirror_host="https://www.apache.org/dyn/closer.lua"; \
wget -nv
${mirror_host}/celeborn/celeborn-0.5.4/apache-celeborn-0.5.4-bin.tgz?action=download
-O /opt/apache-celeborn-0.5.4-bin.tgz; \
- wget -nv
${mirror_host}/celeborn/celeborn-0.6.1/apache-celeborn-0.6.1-bin.tgz?action=download
-O /opt/apache-celeborn-0.6.1-bin.tgz; \
+ wget -nv
${mirror_host}/celeborn/celeborn-0.6.3/apache-celeborn-0.6.3-bin.tgz?action=download
-O /opt/apache-celeborn-0.6.3-bin.tgz; \
wget -nv
${mirror_host}/uniffle/0.10.0/apache-uniffle-0.10.0-bin.tar.gz?action=download
-O /opt/apache-uniffle-0.10.0-bin.tar.gz; \
wget -nv
${mirror_host}/hadoop/common/hadoop-2.8.5/hadoop-2.8.5.tar.gz?action=download
-O /opt/hadoop-2.8.5.tar.gz; \
git clone --depth=1 https://github.com/apache/gluten /opt/gluten; \
diff --git
a/gluten-celeborn/src/main/java/org/apache/spark/shuffle/gluten/celeborn/CelebornUtils.java
b/gluten-celeborn/src/main/java/org/apache/spark/shuffle/gluten/celeborn/CelebornUtils.java
index e8a8fcca60..653ceaad13 100644
---
a/gluten-celeborn/src/main/java/org/apache/spark/shuffle/gluten/celeborn/CelebornUtils.java
+++
b/gluten-celeborn/src/main/java/org/apache/spark/shuffle/gluten/celeborn/CelebornUtils.java
@@ -700,4 +700,54 @@ public class CelebornUtils {
throw new RuntimeException(e);
}
}
+
+ public static void prepareForMergeData(
+ ShuffleClient shuffleClient, int shuffleId, int mapId, int attemptId) {
+ try {
+ Method prepareMethod =
+ shuffleClient
+ .getClass()
+ .getDeclaredMethod("prepareForMergeData", Integer.TYPE,
Integer.TYPE, Integer.TYPE);
+ prepareMethod.invoke(shuffleClient, shuffleId, mapId, attemptId);
+ } catch (NoSuchMethodException ignored) {
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+ public static void mapperEnd(
+ ShuffleClient shuffleClient,
+ int shuffleId,
+ int mapId,
+ int attemptId,
+ int numMappers,
+ int numPartitions) {
+ try {
+ try {
+ // for Celeborn 0.6.3
+ Method mapperEndMethod =
+ shuffleClient
+ .getClass()
+ .getDeclaredMethod(
+ "mapperEnd",
+ Integer.TYPE,
+ Integer.TYPE,
+ Integer.TYPE,
+ Integer.TYPE,
+ Integer.TYPE);
+ mapperEndMethod.invoke(
+ shuffleClient, shuffleId, mapId, attemptId, numMappers,
numPartitions);
+ } catch (NoSuchMethodException e) {
+ Method mapperEndMethod =
+ shuffleClient
+ .getClass()
+ .getDeclaredMethod(
+ "mapperEnd", Integer.TYPE, Integer.TYPE, Integer.TYPE,
Integer.TYPE);
+ mapperEndMethod.invoke(shuffleClient, shuffleId, mapId, attemptId,
numMappers);
+ }
+ } catch (NoSuchMethodException ignored) {
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ }
}
diff --git
a/gluten-celeborn/src/main/scala/org/apache/spark/shuffle/CelebornColumnarShuffleWriter.scala
b/gluten-celeborn/src/main/scala/org/apache/spark/shuffle/CelebornColumnarShuffleWriter.scala
index 451a020f6f..7ac31d7973 100644
---
a/gluten-celeborn/src/main/scala/org/apache/spark/shuffle/CelebornColumnarShuffleWriter.scala
+++
b/gluten-celeborn/src/main/scala/org/apache/spark/shuffle/CelebornColumnarShuffleWriter.scala
@@ -23,6 +23,7 @@ import org.apache.spark.internal.Logging
import org.apache.spark.internal.config.SHUFFLE_COMPRESS
import org.apache.spark.scheduler.MapStatus
import org.apache.spark.shuffle.celeborn.CelebornShuffleHandle
+import org.apache.spark.shuffle.gluten.celeborn.CelebornUtils
import org.apache.spark.sql.vectorized.ColumnarBatch
import org.apache.spark.storage.BlockManager
@@ -150,15 +151,27 @@ abstract class CelebornColumnarShuffleWriter[K, V](
def pushMergedDataToCeleborn(): Unit = {
val pushMergedDataTime = System.nanoTime
- client.prepareForMergeData(shuffleId, mapId, context.attemptNumber())
+ CelebornUtils.prepareForMergeData(client, shuffleId, mapId,
context.attemptNumber())
client.pushMergedData(shuffleId, mapId, context.attemptNumber)
- client.mapperEnd(shuffleId, mapId, context.attemptNumber, numMappers)
+ CelebornUtils.mapperEnd(
+ client,
+ shuffleId,
+ mapId,
+ context.attemptNumber,
+ numMappers,
+ numPartitions)
writeMetrics.incWriteTime(System.nanoTime - pushMergedDataTime)
}
def handleEmptyIterator(): Unit = {
partitionLengths = new Array[Long](dep.partitioner.numPartitions)
- client.mapperEnd(shuffleId, mapId, context.attemptNumber, numMappers)
+ CelebornUtils.mapperEnd(
+ client,
+ shuffleId,
+ mapId,
+ context.attemptNumber,
+ numMappers,
+ numPartitions)
mapStatus = MapStatus(blockManager.shuffleServerId, partitionLengths,
mapId)
}
}
diff --git a/pom.xml b/pom.xml
index 2a6d7ed75f..676c7252ac 100644
--- a/pom.xml
+++ b/pom.xml
@@ -78,7 +78,7 @@
<delta.version>3.3.2</delta.version>
<delta.binary.version>33</delta.binary.version>
<aws-java-sdk-dynamodb.version>1.12.262</aws-java-sdk-dynamodb.version>
- <celeborn.version>0.6.1</celeborn.version>
+ <celeborn.version>0.6.3</celeborn.version>
<uniffle.version>0.10.0</uniffle.version>
<arrow.version>15.0.0</arrow.version>
<arrow-gluten.version>15.0.0-gluten</arrow-gluten.version>
diff --git a/tools/gluten-it/pom.xml b/tools/gluten-it/pom.xml
index 487117ea2e..1afea4edce 100644
--- a/tools/gluten-it/pom.xml
+++ b/tools/gluten-it/pom.xml
@@ -38,7 +38,7 @@
<spark.major.version>3</spark.major.version>
<delta.package.name>delta-core</delta.package.name>
<delta.version>2.4.0</delta.version>
- <celeborn.version>0.6.1</celeborn.version>
+ <celeborn.version>0.6.3</celeborn.version>
<uniffle.version>0.10.0</uniffle.version>
<gluten.version>1.7.0-SNAPSHOT</gluten.version>
<tpch.version>1.1</tpch.version>
@@ -333,7 +333,7 @@
<profile>
<id>celeborn-0.6</id>
<properties>
- <celeborn.version>0.6.1</celeborn.version>
+ <celeborn.version>0.6.3</celeborn.version>
</properties>
</profile>
</profiles>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]