重新启动时无法使用保存点停止 Flink 作业

问题描述 投票:0回答:1

我使用的是flink 1.19。当其中一位操作员产生异常时(例如,由于某种原因接收器不可用),作业将开始循环重新启动。在这种情况下,我希望能够通过保存点取消作业。 通常,要取消带有保存点的作业,我会调用 flink REST API:

curl -s -XPOST localhost:8081/jobs/2f23bde95c740a0f8f83d00ce6dfdacc/savepoints -d "{\"cancel-job\": true, \"target-directory\": \"s3://bucket-name/savepoints\"}"

作业处于 RUNNING 状态时效果良好。但当作业处于 RESTARTING 状态时,该命令将被忽略。 我知道即使在重新启动状态下,以下命令也会突然取消(终止)作业:

curl -X PATCH localhost:8081/jobs/1db48d5f38b44a0736d3e15d09f5d013

问题是,作业重启时是否可以创建保存点? 并且(相关问题)我应该让我的接收器异常保存还是快速失败?

apache-flink
1个回答
0
投票

我认为除非作业成功运行,否则不可能采用保存点。

您可能想要做的是调整您的重新启动策略,以便最终作业失败。然后,一旦问题得到纠正,您可以从最新的检查点手动重新启动它。

您可能还想将外部化检查点保留的设置更改为 RETAIN_ON_CANCELLATION。

© www.soinside.com 2019 - 2024. All rights reserved.