From 9642a4ac5041415d44554c4452828208c8817b9a Mon Sep 17 00:00:00 2001 From: Kevin Wallimann Date: Tue, 10 Jun 2025 11:16:16 +0200 Subject: [PATCH 1/3] Add support for Spark 4.0 --- .github/workflows/test-and-verify.yml | 10 ++++++---- pom.xml | 12 ++++++++++-- .../spark/sql/avro/AbrisAvroDeserializer.scala | 6 +++--- 3 files changed, 19 insertions(+), 9 deletions(-) diff --git a/.github/workflows/test-and-verify.yml b/.github/workflows/test-and-verify.yml index 190368b..e23f4f1 100644 --- a/.github/workflows/test-and-verify.yml +++ b/.github/workflows/test-and-verify.yml @@ -12,16 +12,18 @@ jobs: strategy: matrix: - spark: [ 3.2, 3.3, 3.4, 3.5 ] + spark: [ 3.2, 3.3, 3.4, 3.5, 4.0 ] scala: [ 2.12, 2.13 ] name: Spark ${{ matrix.spark }}, Scala ${{ matrix.scala }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 + with: + persist-credentials: false - name: Set up JDK 1.8 - uses: actions/setup-java@v1 with: - java-version: 1.8 + distribution: 'adopt' + java-version: 8 - name: Run tests run: mvn clean verify -Plicense-check,spark-${{ matrix.spark }},scala-${{ matrix.scala }} diff --git a/pom.xml b/pom.xml index 18f0a84..b804839 100644 --- a/pom.xml +++ b/pom.xml @@ -389,7 +389,7 @@ spark-3.4 - 3.4.2 + 3.4.4 1.11.1 2.14.2 @@ -397,11 +397,19 @@ spark-3.5 - 3.5.0 + 3.5.6 1.11.2 2.15.2 + + spark-4.0 + + 4.0.0 + 1.12.0 + 2.18.2 + + uber diff --git a/src/main/scala/org/apache/spark/sql/avro/AbrisAvroDeserializer.scala b/src/main/scala/org/apache/spark/sql/avro/AbrisAvroDeserializer.scala index 22b498f..1191612 100644 --- a/src/main/scala/org/apache/spark/sql/avro/AbrisAvroDeserializer.scala +++ b/src/main/scala/org/apache/spark/sql/avro/AbrisAvroDeserializer.scala @@ -48,12 +48,12 @@ class AbrisAvroDeserializer(rootAvroType: Schema, rootCatalystType: DataType) { currCtor.newInstance(rootAvroType, rootCatalystType, "LEGACY") case currCtor if currCtor.getParameterTypes sameElements Array(schemaClz, dataTypeClz, stringClz, booleanClz) => - // Spark 3.5.1 - 3.5.2 + // Spark 3.5.1 - 3.5.6 currCtor.newInstance(rootAvroType, rootCatalystType, "LEGACY", false: java.lang.Boolean) case currCtor if currCtor.getParameterTypes.toSeq sameElements Array(schemaClz, dataTypeClz, stringClz, booleanClz, stringClz) => - // Spark 4.0.0-SNAPSHOT+ - currCtor.newInstance(rootAvroType, rootCatalystType, "LEGACY", false: java.lang.Boolean, "") + // Spark 4.0.0 + currCtor.newInstance(rootAvroType, rootCatalystType, "LEGACY", false: java.lang.Boolean, "") // ,-1 } match { case Some(value: AvroDeserializer) => value From d18323925287bbfb68b5eb308c09f925b7400031 Mon Sep 17 00:00:00 2001 From: Kevin Wallimann Date: Tue, 10 Jun 2025 11:19:57 +0200 Subject: [PATCH 2/3] Update actions --- .github/workflows/ci-check-jacoco.yml | 6 ++++-- .github/workflows/compatibility-check.yml | 10 ++++++---- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci-check-jacoco.yml b/.github/workflows/ci-check-jacoco.yml index 1fa5a0a..6cb13f5 100644 --- a/.github/workflows/ci-check-jacoco.yml +++ b/.github/workflows/ci-check-jacoco.yml @@ -10,9 +10,11 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v4 + with: + persist-credentials: false - name: Setup Scala - uses: olafurpg/setup-scala@v10 + uses: olafurpg/setup-scala@v14 with: java-version: "adopt@1.8" - name: Build and run tests diff --git a/.github/workflows/compatibility-check.yml b/.github/workflows/compatibility-check.yml index 8932a39..518fe2e 100644 --- a/.github/workflows/compatibility-check.yml +++ b/.github/workflows/compatibility-check.yml @@ -17,12 +17,14 @@ jobs: scala: [ 2.12, 2.13 ] name: Spark ${{ matrix.spark }}, Scala ${{ matrix.scala }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 + with: + persist-credentials: false - name: Set up JDK 1.8 - uses: actions/setup-java@v1 with: - java-version: 1.8 - - uses: actions/cache@v2 + distribution: 'adopt' + java-version: 8 + - uses: actions/cache@v4 with: path: ~/.m2/repository key: ${{ runner.os }}-${{ matrix.scala }}-${{ hashFiles('**/pom.xml') }} From 168660bf3d2e1886746a77f04fdfbca320096956 Mon Sep 17 00:00:00 2001 From: Kevin Wallimann Date: Tue, 10 Jun 2025 11:29:34 +0200 Subject: [PATCH 3/3] Fix actions --- .github/workflows/compatibility-check.yml | 1 + .github/workflows/test-and-verify.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/compatibility-check.yml b/.github/workflows/compatibility-check.yml index 518fe2e..1a4eef4 100644 --- a/.github/workflows/compatibility-check.yml +++ b/.github/workflows/compatibility-check.yml @@ -21,6 +21,7 @@ jobs: with: persist-credentials: false - name: Set up JDK 1.8 + uses: actions/setup-java@v2 with: distribution: 'adopt' java-version: 8 diff --git a/.github/workflows/test-and-verify.yml b/.github/workflows/test-and-verify.yml index e23f4f1..2342fdc 100644 --- a/.github/workflows/test-and-verify.yml +++ b/.github/workflows/test-and-verify.yml @@ -22,6 +22,7 @@ jobs: with: persist-credentials: false - name: Set up JDK 1.8 + uses: actions/setup-java@v2 with: distribution: 'adopt' java-version: 8