sparksql Exception :GeneratedClass$SpecificUnsafeProjection
异常
2020-03-30 15:18:47,161 WARN TaskSetManager Lost task 13.0 in stage 3.0 (TID 35, hdp-dn12.cluster01.xxxxx, executor 2):
java.util.concurrent.ExecutionException: java.lang.Exception: failed to compile: org.codehaus.janino.JaninoRuntimeException:
Code of method "apply_341$(Lorg/apache/spark/sql/catalyst/expressions/GeneratedClass$SpecificUnsafeProjection;
Lorg/apache/spark/sql/catalyst/InternalRow;)V" of class "org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificUnsafeProjection" grows beyond 64 KB
- 使用了多个自定义UDF,多个UDF嵌套,表达式长度很长
- Spark优化生成的代码超过64KB 导致编译错误,一直刷新调试异常
- 解决:减少UDF的表达式参数长度,直到编译不报错
在Spark SQL中遇到一个异常:GeneratedClass$SpecificUnsafeProjection由于表达式长度过长导致编译错误。该问题发生在使用多个自定义UDF并进行嵌套时。为了解决这个问题,可以通过缩短UDF的表达式参数长度来避免编译报错。
557

被折叠的 条评论
为什么被折叠?



