This is an automated email from the ASF dual-hosted git repository. morningman pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push: new 062641e8f8 [fix](hudi) set default class loader for hudi serializer (#20680) 062641e8f8 is described below commit 062641e8f835e91cfe4254d6373998c2bd8cb430 Author: Ashin Gau <ashin...@users.noreply.github.com> AuthorDate: Wed Jun 14 16:02:56 2023 +0800 [fix](hudi) set default class loader for hudi serializer (#20680) hudi serializer `org.apache.hudi.common.util.SerializationUtils$KryoInstantiator.newKryo` throws error like `java.lang.IllegalArgumentException: classLoader cannot be null`. Set the default class loader for scan thread. ``` public Kryo newKryo() { Kryo kryo = new Kryo(); ... // Thread.currentThread().getContextClassLoader() returns null kryo.setClassLoader(Thread.currentThread().getContextClassLoader()); ... return kryo; } ``` --- .../src/main/java/org/apache/doris/hudi/HudiJniScanner.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/fe/be-java-extensions/hudi-scanner/src/main/java/org/apache/doris/hudi/HudiJniScanner.java b/fe/be-java-extensions/hudi-scanner/src/main/java/org/apache/doris/hudi/HudiJniScanner.java index d7078dc9ca..ce86b27ad6 100644 --- a/fe/be-java-extensions/hudi-scanner/src/main/java/org/apache/doris/hudi/HudiJniScanner.java +++ b/fe/be-java-extensions/hudi-scanner/src/main/java/org/apache/doris/hudi/HudiJniScanner.java @@ -155,6 +155,11 @@ public class HudiJniScanner extends JniScanner { InputFormat<?, ?> inputFormatClass = HudiScanUtils.createInputFormat(jobConf, hudiScanParam.getInputFormat()); + // org.apache.hudi.common.util.SerializationUtils$KryoInstantiator.newKryo + // throws error like `java.lang.IllegalArgumentException: classLoader cannot be null`. + // Set the default class loader + Thread.currentThread().setContextClassLoader(classLoader); + // RecordReader will use ProcessBuilder to start a hotspot process, which may be stuck, // so use another process to kill this stuck process. // TODO(gaoxin): better way to solve the stuck process? --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org