开发者社区 > 大数据与机器学习 > 大数据计算 MaxCompute > 正文

大数据计算MaxCompute这个报错是什么原因?执行自定义sql function出现的,

ODPS-0010000:System internal error - java.util.NoSuchElementException
at java.util.ArrayDeque.removeFirst(ArrayDeque.java:285)
at java.util.ArrayDeque.pop(ArrayDeque.java:522)
at com.aliyun.odps.compiler.DataTaskGen$Context.pop(DataTaskGen.java:165)
at com.aliyun.odps.compiler.DataTaskGen.visit(DataTaskGen.java:453)
at com.aliyun.odps.compiler.DataTaskGen.visit(DataTaskGen.java:120)
at com.aliyun.odps.compiler.AssignmentStatement.accept(AssignmentStatement.java:108)
at com.aliyun.odps.compiler.TreeScanner.scan(TreeScanner.java:1743)
at com.aliyun.odps.compiler.DataTaskGen$DMLGenerator.generate(DataTaskGen.java:4690)
at com.aliyun.odps.compiler.DataTaskGen.generate(DataTaskGen.java:307)
at com.aliyun.odps.compiler.DataTaskGen.generate(DataTaskGen.java:291)
at com.aliyun.odps.compiler.DataJobCodeGen.generate(DataJobCodeGen.java:103)
at com.aliyun.odps.compiler.DataJobCodeGen.generate(DataJobCodeGen.java:23)
at com.aliyun.odps.compiler.OdpsQlCompiler.codeGeneration(OdpsQlCompiler.java:350)
at com.aliyun.odps.compiler.OdpsQlCompiler.compile(OdpsQlCompiler.java:147)
at com.aliyun.odps.sqltask.OdpsCompilerWrapper.parse(OdpsCompilerWrapper.java:143)
at com.aliyun.odps.sqltask.OdpsCompilerWrapper.parse(OdpsCompilerWrapper.java:97)
at com.aliyun.odps.sqltask.task.SqlTaskBase.doCompile(SqlTaskBase.java:131)
at com.aliyun.odps.sqltask.task.SqlTaskBase.compile(SqlTaskBase.java:114)
at com.aliyun.odps.sqltask.task.DMLTask.handleInternal(DMLTask.java:61)
at com.aliyun.odps.sqltask.task.SqlTaskBase.handle(SqlTaskBase.java:87)
at com.aliyun.odps.sqltask.SqlTaskDriver.execute(SqlTaskDriver.java:137)
at com.aliyun.odps.sqltask.SqlTaskDriver.run(SqlTaskDriver.java:202)

DebugingInfo amF2YS51dGlsLk5vU3VjaEVsZW1lbnRFeGNlcHRpb24KCWF0IGphdmEudXRpbC5BcnJheURlcXVlLnJlbW92ZUZpcnN0KEFycmF5RGVxdWUuamF2YToyODUpCglhdCBqYXZhLnV0aWwuQXJyYXlEZXF1ZS5wb3AoQXJyYXlEZXF1ZS5qYXZhOjUyMikKCWF0IGNvbS5hbGl5dW4ub2Rwcy5jb21waWxlci5EYXRhVGFza0dlbiRDb250ZXh0LnBvcChEYXRhVGFza0dlbi5qYXZhOjE2NSkKCWF0IGNvbS5hbGl5dW4ub2Rwcy5jb21waWxlci5EYXRhVGFza0dlbi52aXNpdChEYXRhVGFza0dlbi5qYXZhOjQ1MykKCWF0IGNvbS5hbGl5dW4ub2Rwcy5jb21waWxlci5EYXRhVGFza0dlbi52aXNpdChEYXRhVGFza0dlbi5qYXZhOjEyMCkKCWF0IGNvbS5hbGl5dW4ub2Rwcy5jb21waWxlci5Bc3NpZ25tZW50U3RhdGVtZW50LmFjY2VwdChBc3NpZ25tZW50U3RhdGVtZW50LmphdmE6MTA4KQoJYXQgY29tLmFsaXl1bi5vZHBzLmNvbXBpbGVyLlRyZWVTY2FubmVyLnNjYW4oVHJlZVNjYW5uZXIuamF2YToxNzQzKQoJYXQgY29tLmFsaXl1bi5vZHBzLmNvbXBpbGVyLkRhdGFUYXNrR2VuJERNTEdlbmVyYXRvci5nZW5lcmF0ZShEYXRhVGFza0dlbi5qYXZhOjQ2OTApCglhdCBjb20uYWxpeXVuLm9kcHMuY29tcGlsZXIuRGF0YVRhc2tHZW4uZ2VuZXJhdGUoRGF0YVRhc2tHZW4uamF2YTozMDcpCglhdCBjb20uYWxpeXVuLm9kcHMuY29tcGlsZXIuRGF0YVRhc2tHZW4uZ2VuZXJhdGUoRGF0YVRhc2tHZW4uamF2YToyOTEpCglhdCBjb20uYWxpeXVuLm9kcHMuY29tcGlsZXIuRGF0YUpvYkNvZGVHZW4uZ2VuZXJhdGUoRGF0YUpvYkNvZGVHZW4uamF2YToxMDMpCglhdCBjb20uYWxpeXVuLm9kcHMuY29tcGlsZXIuRGF0YUpvYkNvZGVHZW4uZ2VuZXJhdGUoRGF0YUpvYkNvZGVHZW4uamF2YToyMykKCWF0IGNvbS5hbGl5dW4ub2Rwcy5jb21waWxlci5PZHBzUWxDb21waWxlci5jb2RlR2VuZXJhdGlvbihPZHBzUWxDb21waWxlci5qYXZhOjM1MCkKCWF0IGNvbS5hbGl5dW4ub2Rwcy5jb21waWxlci5PZHBzUWxDb21waWxlci5jb21waWxlKE9kcHNRbENvbXBpbGVyLmphdmE6MTQ3KQoJYXQgY29tLmFsaXl1bi5vZHBzLnNxbHRhc2suT2Rwc0NvbXBpbGVyV3JhcHBlci5wYXJzZShPZHBzQ29tcGlsZXJXcmFwcGVyLmphdmE6MTQzKQoJYXQgY29tLmFsaXl1bi5vZHBzLnNxbHRhc2suT2Rwc0NvbXBpbGVyV3JhcHBlci5wYXJzZShPZHBzQ29tcGlsZXJXcmFwcGVyLmphdmE6OTcpCglhdCBjb20uYWxpeXVuLm9kcHMuc3FsdGFzay50YXNrLlNxbFRhc2tCYXNlLmRvQ29tcGlsZShTcWxUYXNrQmFzZS5qYXZhOjEzMSkKCWF0IGNvbS5hbGl5dW4ub2Rwcy5zcWx0YXNrLnRhc2suU3FsVGFza0Jhc2UuY29tcGlsZShTcWxUYXNrQmFzZS5qYXZhOjExNCkKCWF0IGNvbS5hbGl5dW4ub2Rwcy5zcWx0YXNrLnRhc2suRE1MVGFzay5oYW5kbGVJbnRlcm5hbChETUxUYXNrLmphdmE6NjEpCglhdCBjb20uYWxpeXVuLm9kcHMuc3FsdGFzay50YXNrLlNxbFRhc2tCYXNlLmhhbmRsZShTcWxUYXNrQmFzZS5qYXZhOjg3KQoJYXQgY29tLmFsaXl1bi5vZHBzLnNxbHRhc2suU3FsVGFza0RyaXZlci5leGVjdXRlKFNxbFRhc2tEcml2ZXIuamF2YToxMzcpCglhdCBjb20uYWxpeXVuLm9kcHMuc3FsdGFzay5TcWxUYXNrRHJpdmVyLnJ1bihTcWxUYXNrRHJpdmVyLmphdmE6MjAyKQo= 大数据计算MaxCompute这个报错是什么原因?执行自定义sql function出现的,function编译通过,创建成功了。感觉是function有问题,比较长,但是能创建成功,调用不行

展开
收起
cuicuicuic 2023-07-25 17:57:23 46 0
3 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    在使用 MaxCompute 自定义 SQL 函数时,可能会出现各种错误和异常情况。根据您提供的信息,很难确定具体的错误原因。以下是一些常见的错误类型和可能的原因,供您参考:

    SyntaxError:这种错误通常是由于 SQL 函数定义中出现了语法错误或者语义错误导致的。例如,函数定义中缺少括号、引号不匹配、变量名错误等。

    NameError:这种错误通常是由于在函数定义中使用了未定义的变量名或者函数名导致的。例如,函数定义中使用了不存在的列名或者表名、函数名错误等。

    TypeError:这种错误通常是由于函数参数类型不匹配或者函数返回值类型不正确导致的。例如,函数定义中使用了不支持的数据类型、函数参数类型与输入数据类型不一致等。

    ArgumentError:这种错误通常是由于函数参数数量不正确导致的。例如,函数定义中缺少参数、参数数量过多等。

    2023-07-29 09:03:52
    赞同 展开评论 打赏
  • 根据提供的错误信息,报错信息为 "ODPS-0010000:System internal error - java.util.NoSuchElementException"。这个错误信息表明在执行自定义 SQL 函数时出现了系统内部错误。

    造成这个错误的原因可能是复杂函数逻辑或输入数据导致问题。由于您提到函数编译通过并成功创建,但调用时出现问题,这可能意味着函数的实际执行过程中发生了异常。

    要解决这个问题,可以尝试以下步骤:

    1. 检查函数逻辑和输入数据:仔细检查自定义函数的逻辑,确保没有语法错误、死循环或其它潜在问题。还要确保函数的输入数据符合预期,不会导致异常情况。
    2. 查看函数日志和异常信息:在MaxCompute中,可以查看函数的运行日志和异常信息以获取更多详细信息。通过分析日志和异常堆栈信息,可以定位问题所在,并进行进一步调试。
    3. 简化函数逻辑和测试数据:如果函数逻辑非常复杂,可以尝试简化函数的实现,然后逐渐增加复杂性来确定问题出现的具体原因。同时,可以使用较小规模的测试数据来验证函数是否能够正常工作。
    4. 联系MaxCompute支持团队:如果以上方法无法解决问题,建议与MaxCompute的支持团队联系。他们可以帮助进一步分析错误信息并提供针对性的建议和支持。

    需要注意的是,由于无法查看函数的具体实现和输入数据,以上步骤只是一般性的建议。具体解决方法可能需要根据您的实际情况进行调试和处理。

    2023-07-28 18:33:19
    赞同 展开评论 打赏
  • 可以先换一个文档的示例看看能不能走通,此回答整理自钉群“MaxCompute开发者社区2群”

    2023-07-25 18:07:17
    赞同 展开评论 打赏

MaxCompute(原ODPS)是一项面向分析的大数据计算服务,它以Serverless架构提供快速、全托管的在线数据仓库服务,消除传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您经济并高效的分析处理海量数据。

相关产品

  • 云原生大数据计算服务 MaxCompute
  • 热门讨论

    热门文章

    相关电子书

    更多
    SQL Server在电子商务中的应用与实践 立即下载
    GeoMesa on Spark SQL 立即下载
    原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载