错误描述
报错信息:java.lang.StackOverflowError at java.util.HashMap.hash
code:[30017], brief info:[get app plan failed], context info:[detail:[java.lang.StackOverflowError
at java.util.HashMap.hash(HashMap.java:338)
at java.util.HashMap.get(HashMap.java:556)
at GeneratedMetadataHandler_RowCount.getRowCount(Unknown Source)
at org.apache.calcite.rel.metadata.RelMetadataQuery.getRowCount(RelMetadataQuery.java:236)
at org.apache.calcite.rel.metadata.RelMdUtil.estimateFilteredRows(RelMdUtil.java:718)
at org.apache.calcite.rel.metadata.RelMdRowCount.getRowCount(RelMdRowCount.java:123)
at GeneratedMetadataHandlerRowCount.getRowCount$(Unknown Source)
at GeneratedMetadataHandler_RowCount.getRowCount(Unknown Source)
at org.apache.calcite.rel.metadata.RelMetadataQuery.getRowCount(RelMetadataQuery.java:236)
at org.apache.calcite.rel.metadata.RelMdRowCount.getRowCount(RelMdRowCount.java:71)
at GeneratedMetadataHandlerRowCount.getRowCount$(Unknown Source)
at GeneratedMetadataHandler_RowCount.getRowCount(Unknown Source)
at org.apache.calcite.rel.metadata.RelMetadataQuery.getRowCount(RelMetadataQuery.java:236)
at org.apache.calcite.rel.metadata.RelMdRowCount.getRowCount(RelMdRowCount.java:132)
at GeneratedMetadataHandlerRowCount.getRowCount$(Unknown Source)
at GeneratedMetadataHandler_RowCount.getRowCount(Unknown Source)
at org.apache.calcite.rel.metadata.RelMetadataQuery.getRowCount(RelMetadataQuery.java:236)
at org.apache.calcite.rel.metadata.RelMdRowCount.getRowCount(RelMdRowCount.java:71)
at GeneratedMetadataHandlerRowCount.getRowCount$(Unknown Source)
at GeneratedMetadataHandler_RowCount.getRowCount(Unknown Source)
at org.apache.calcite.rel.metadata.RelMetadataQuery.getRowCount(RelMetadataQuery.java:236)
错误原因
Flink SQL语句中多次使用的UNION ALL会导致堆栈溢出。
解决方案
在作业语句里添加以下的参数。
client.jvm.option=-Xss20m
blink.job.submit.timeoutInSeconds=300
blink.job.option=-yD env.java.opts='-Xss20m'
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。