Skip to content

[WIP] Add Spark 4.2 support#2768

Draft
wForget wants to merge 1 commit into
apache:masterfrom
wForget:spark420
Draft

[WIP] Add Spark 4.2 support#2768
wForget wants to merge 1 commit into
apache:masterfrom
wForget:spark420

Conversation

@wForget

@wForget wForget commented Jul 21, 2026

Copy link
Copy Markdown
Member

What changes were proposed in this pull request?

Add Apache Spark 4.2.0 support to Uniffle.

The main changes include:

  • Add a spark4.2 Maven profile using JDK 17 and Scala 2.13.18.
  • Align Spark 4.2 dependencies, including Hadoop 3.5.0, Netty 4.2.13.Final, Jackson 2.21.2, Log4j 2.25.4, and SLF4J 2.0.17.
  • Reuse the Spark 4.1 compatibility implementation for the unchanged MapStatus and ExternalSorter APIs.
  • Upgrade LZ4 to at.yawk.lz4:lz4-java:1.11.0 for Spark 4.2 while preserving the existing version for other profiles.
  • Adapt the Spark UI extension to Spark 4.2's Bootstrap 5 and CSP-compatible collapse markup.
  • Add Spark 4.2 UI compatibility tests.
  • Add Spark 4.2 builds to the parallel and sequential CI workflows.
  • Update the supported Spark versions and build instructions in the README.

Why are the changes needed?

Spark 4.2 updates several dependency versions and removes the legacy global collapseTable() JavaScript function from its Web UI.

Without these changes:

  • Spark shuffle integration tests fail because Spark 4.2 requires the newer LZ4 builder API.
  • Collapsible sections on the Uniffle Spark UI page do not work.
  • Uniffle cannot be built or validated directly against Spark 4.2.0.

How was this patch tested?

The following validations passed with JDK 17 and the spark4.2 profile:

  • RssSpark4ShuffleUtilsTest: 3 tests passed.
  • SparkVersionUtilsTest: 2 tests passed.
  • ServletCompatTest with Spark 4.2: passed.
  • ServletCompatTest with Spark 4.1: passed.
  • MapSideCombineTest: passed.
  • AQERepartitionTest: passed.
  • Spark 4.2 shaded client build: passed.
  • Shaded dependency check: unshaded count: 0.
  • git diff --check: passed.

Generated by Codex (GPT-5.6)

@github-actions

github-actions Bot commented Jul 21, 2026

Copy link
Copy Markdown

Test Results

 3 844 files  +  227   3 844 suites  +227   8h 14m 13s ⏱️ + 31m 42s
 1 266 tests +    1   1 255 ✅ +    2  11 💤 ± 0  0 ❌  - 1 
19 164 runs  +1 109  19 116 ✅ +1 099  48 💤 +11  0 ❌  - 1 

Results for commit cf6c443. ± Comparison against base commit 20167ff.

♻️ This comment has been updated with latest results.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant