From 85266f8aa2b144286e15468a4f062332c5c162a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Isma=C3=ABl=20Mej=C3=ADa?= Date: Sun, 9 Aug 2026 12:05:38 +0200 Subject: [PATCH] Upgrade Avro dependency from 1.11.5 to 1.12.2 - Guard against null logicalType in AvroRecordConverter.newConverter to avoid NPE in GenericData.getConversionByClass (Avro 1.12 no longer null-checks logicalType internally) - Create typed arrays instead of Object[] in AvroArrayConverter.end to satisfy Avro 1.12's stricter ReflectData.setField type checks - Add SERIALIZABLE_PACKAGES surefire property for Avro 1.12's ClassSecurityValidator --- parquet-avro/pom.xml | 3 ++- .../java/org/apache/parquet/avro/AvroRecordConverter.java | 5 +++-- pom.xml | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/parquet-avro/pom.xml b/parquet-avro/pom.xml index 3d172068c2..2db3e55c2d 100644 --- a/parquet-avro/pom.xml +++ b/parquet-avro/pom.xml @@ -207,8 +207,9 @@ maven-surefire-plugin - + java.math.BigDecimal + org.apache.parquet.avro,java.util diff --git a/parquet-avro/src/main/java/org/apache/parquet/avro/AvroRecordConverter.java b/parquet-avro/src/main/java/org/apache/parquet/avro/AvroRecordConverter.java index 66ffe64f6b..9f6c788807 100644 --- a/parquet-avro/src/main/java/org/apache/parquet/avro/AvroRecordConverter.java +++ b/parquet-avro/src/main/java/org/apache/parquet/avro/AvroRecordConverter.java @@ -355,7 +355,7 @@ private static Converter newConverter( LogicalType logicalType = schema.getLogicalType(); Conversion conversion; - if (knownClass != null) { + if (knownClass != null && logicalType != null) { conversion = model.getConversionByClass(knownClass, logicalType); } else { conversion = model.getConversionFor(logicalType); @@ -787,7 +787,8 @@ public void end() { } else if (elementClass == double.class) { parent.add(((DoubleArrayList) container).toDoubleArray()); } else { - parent.add(((ArrayList) container).toArray()); + parent.add(((ArrayList) container) + .toArray((Object[]) java.lang.reflect.Array.newInstance(elementClass, 0))); } } diff --git a/pom.xml b/pom.xml index 372c1d5034..effefd2fad 100644 --- a/pom.xml +++ b/pom.xml @@ -94,7 +94,7 @@ 8.5.19 0.9.33 1.7.33 - 1.11.5 + 1.12.2 33.6.0-jre 0.1.1 3.27.7