HiveServer2; 하이브 버전 : 1.2하이브 - GenericUDTF - kryo stackoverflow 예외로 인해 runQuery가 실패 함
사용자 정의 UDF 클래스 (GenericUDTF 구현)를 포함하는 쿼리를 실행하려고합니다.
UDF 클래스에는 계산에 사용하는 트리 개체가 포함되어 있습니다.
트리가 작 으면 쿼리가 제대로 실행됩니다. org.apache에서 실행 오류, 리턴 코드 -101 :
org.apache.hive.service.cli.HiveSQLException : 오류 처리하는 동안 문 : 실패 나무가 성장하면 하지만, 쿼리는 다음과 같은 오류와 함께 실패 .hadoop.hive.ql.exec.mr.MapRedTask. null at org.apache.hive.service.cli.operation.Operation.toSQLException (Operation.java:315) at org.apache.hive.service.cli.operation.SQLOperation.runQuery (SQLOperation.java:155) org.apache.hive.service.cli.operation.SQLOperation.access $ 100 (SQLOperation.java:70) at org.apache.hive.service.cli.operation.SQLOperation $ 1 $ 1.run (SQLOperation.java:205) at java.security.AccessController.doPrivileged (네이티브 메소드) at javax.security.auth.Subject.doAs (Subject.java:422) at org.apache.hadoop.security.UserGroupInformation.doAs (UserGroupInformation.java:1595)) at org.apache.hive.service.cli.operation.SQLOperation $ 1.run (SQLOperation.java:217) at java.util.concurrent.Executors $ RunnableAdapter.call (Executors.ja va : 511) 에서 java.util.concurrent.FutureTask.run (FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor $ org.apache.hive.com.esotericsoftware.kryo에서 java.lang.StackOverflowError의 : java.lang.Thread.run에서 Worker.run (ThreadPoolExecutor.java:617) (Thread.java:745) 는에 의해 발생 org.apache.hive.com.esotericsoftware.kryo.util.DefaultClassResolver.writeClass (DefaultClassResolver.java:81)
어떤 생각에서 .util.DefaultClassResolver.writeName (DefaultClassResolver.java:90) 방법이 문제를 해결하려면? 하이브 구성의 마법 속성은 무엇입니까?