You need to enable JavaScript to run this app.
导航

常见问题

最近更新时间2023.07.12 10:25:15

首次发布时间2023.02.27 19:16:31

Q1. The Yarn application application_xxxxxx doesn't run anymore.

我们在运行 standlone cluster 模式或者 yarn session 模式时,可能会遇到 yarn application 不存在的场景。主要原因为上一个 yarn session 的 application 任务已经结束,但是在本地/tmp/.yarn-properties-root文件中还保留已经结束的 Application ID。SQL 客户端在默认不指定execution.target的场景下,会从该文件中读取 Application ID,并尝试提交任务到该 Application 上。

解决办法:
手动删除或者修改/tmp/.yarn-properties-root文件。

在 Flink 1.16 之后使用 hive dialect 的场景下,可能会出现以上错误,主要由依赖 Jar 包配置问题导致。

解决办法:
可参考Flink SQL Client使用参考---Hive Dialect建表 或者参考官方指南

Q3. java.lang.ClassNotFoundException: org.apache.ranger.authorization.hive.authorizer.RangerHiveAuthorizerFactory

在 Flink 使用 hive dailect 模式,并且 EMR 集群启用了 ranger-hive-plugin,并直接使用/etc/emr/hive/conf作为 hive conf 创建 Hive Catalog 时,Flink 运行环境缺少 ranger-hive-plugin 的相关依赖。

解决办法:

  • 如果依然想启用 ranger-hive-plugin 进行权限校验,需将 ranger-hive-plugin 添加到 Flink classpath 下,比如ln -s /usr/lib/emr/current/ranger-hive-plugin/lib/ranger-hive-plugin-shim-2.1.1-SNAPSHOT.jar ranger-hive-plugin-shim-2.1.1-SNAPSHOT.jar

  • 如果不想启用 ranger-hive-plugin,可以单独拷贝hive-site.xml,并取出 ranger 相关的配置参数,用新的hive-site.xml创建 Hive Catalog。

Q4. java.lang.UnsupportedOperationException: tos streams are not Syncable. See HADOOP-17597.

基于 TOS 协议向 TOS 写数据时,可能会遇到这类错误。需要额外添加添加 HDFS 参数,详情问题,可参考Hadoop-17597

解决办法:
core-site.xml文件中添加一下参数,或者通过 EMR UI 添加该参数

<property>
    <name>fs.tos.downgrade.syncable.exceptions</name>
    <value>true</value>
</property>

Q5. java.lang.VerifyError: Stack map does not match the one at exception handler 20 Exception Details: Location: org/apache/iceberg/hive/HiveCatalog.alterHiveDataBase(Lorg/apache/iceberg/catalog/Namespace;Lorg/apache/hadoop/hive/metastore/api/Database;)V

目前同时安装 Hudi 和 Iceberg 服务时,创建 Iceberg Hive Catalog 的时候可能会遇到以上错误,主要由于 Iceberg 和 Hudi 的冲突导致。

解决办法:

  • 方法一:安装服务时,只安装 Iceberg 和 Hudi 其中的一个服务。

  • 方法二:当使用 Iceberg 时,执行unlink /usr/lib/emr/current/flink/lib/hudi-flink-bundle_2.12.jar 命令手动移除 Hudi-flink 依赖包。