Spark报错:grows beyond 64 KB

(作者:陈玓玏 data-master

spark脚本执行中,碰到错误:

2020-06-24 16:59:53,246 [Thread-44] ERROR 
org.apache.spark.sql.catalyst.expressions.codegen.CodeGenerator 
- failed to compile: 
org.codehaus.janino.InternalCompilerException: 
Compiling "GeneratedClass": Code of method "processNext()V" of class 
"org.apache.spark.sql.catalyst.expressions.
GeneratedClass$GeneratedIteratorForCodegenStage2" grows beyond 64 KB

但是奇怪的是,虽然报错还是跑出了结果。

这个错误,应当只是个告警,因为我在sql中使用了with as,共包含了3个sql片段,存在并且有大量的正则表达式,大量的中文,所以在编译的时候,sql太长导致了执行计划过长,catalyst执行计划超出了一般的量,所以有这个错误。我理解的,这个更像一个告警,不影响结果的产生。

总之呢,还是不要使用with as写太长的sql,哈哈,排查问题的时候也不方便。把sql写短一些,拆成多个写,功能还是一样的,但这个告警就不存在了。

猜你喜欢

转载自blog.csdn.net/weixin_39750084/article/details/107525530