You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by "amenhub@163.com" <am...@163.com> on 2021/01/06 07:47:02 UTC

hive表已创建的情况下从checkpoint恢复作业

hi everyone,

flink version: 1.12.0
job dag: kafka ->hive

今天碰到一个问题,我在第一次启动作业的时候,通过hivecatalog成功在hive中创建hive table,并正常入数,正常做checkpoint,但由于kafka含有脏数据,导致作业在重启3次仍无法跳过脏数据后变为Failed状态,于是修改作业kafka配置,开启可跳过解析异常行参数,再通过-s hdfs:///xxx/checkpoints/chk-122去从checkpoint恢复作业时,首先报出来的异常是以前的kafka和hive表已经在指定catalog.database中创建,也确实是如此,但是我的疑问是:

1.任务失败后我调整作业重新从最近的chk恢复上线作业,按理来说chk state应该记录了我的表创建信息,从而不会再重新在hive中建表,但显然并没有如此
2.从错误情况来看,是先创建表,再从chk中恢复作业状态,那hive表已创建的异常 Caused by: AlreadyExistsException(message:Table kafka_source_table already exists) 该如何避免呢?

best,
amenhub