diff --git a/hudi-flink/src/main/java/org/apache/hudi/sink/StreamWriteOperatorCoordinator.java b/hudi-flink/src/main/java/org/apache/hudi/sink/StreamWriteOperatorCoordinator.java index c1b56b95f..d72eb1206 100644 --- a/hudi-flink/src/main/java/org/apache/hudi/sink/StreamWriteOperatorCoordinator.java +++ b/hudi-flink/src/main/java/org/apache/hudi/sink/StreamWriteOperatorCoordinator.java @@ -377,6 +377,9 @@ public class StreamWriteOperatorCoordinator if (allEventsReceived()) { // start to commit the instant. commitInstant(this.instant); + // The executor thread inherits the classloader of the #handleEventFromOperator + // caller, which is a AppClassLoader. + Thread.currentThread().setContextClassLoader(getClass().getClassLoader()); // sync Hive if is enabled in batch mode. syncHiveIfEnabled(); } diff --git a/packaging/hudi-flink-bundle/pom.xml b/packaging/hudi-flink-bundle/pom.xml index 443eb42cd..a2f91491e 100644 --- a/packaging/hudi-flink-bundle/pom.xml +++ b/packaging/hudi-flink-bundle/pom.xml @@ -227,6 +227,10 @@ com.esotericsoftware.kryo. ${flink.bundle.shade.prefix}com.esotericsoftware.kryo. + + com.fasterxml.jackson. + ${flink.bundle.shade.prefix}com.fasterxml.jackson. +