停止工作,而不是重试Apache Flink中的特定异常

时间:2019-04-02 13:02:06

标签: apache-flink

我在工作中使用default restart strategy,在某些问题可能在一段时间后可能会解决的情况下(没有网络,内存不足,Kafka不可用等),它可以正常工作。但是,有一些例外情况这通常意味着代码中的错误(例如NullPointerException或任何其他未处理的错误),在这种情况下,我不想应用任何重新启动策略,因为任何数量的重新启动都无法解决问题。

在这种情况下,尽管配置了策略,是否有任何方法可以将作业从作业内部停止?

1 个答案:

答案 0 :(得分:1)

我认为Flink当前不支持您尝试实现的目标。但是一种潜在的解决方案是解决这个问题。

  1. 将重新启动策略设置为no retry
  2. 捕获您认为会在一段时间后解决的异常(例如,网络blip)并在适当位置重试
  3. 对于其他失败案例,抛出以停止工作