故障后如何正确重新定义/重新启动Jet的工作?

时间:2018-09-05 16:19:10

标签: java hazelcast-jet

喷气机的manual说,一份工作可以多次提交。但是,当我在某些异常后尝试重新启动它时,将收到诸如“无法重新启动失败的作业”之类的异常。如果我什么都不做,我不会有任何例外,但是不会在管道内部执行计算。

谢谢!

2 个答案:

答案 0 :(得分:2)

这是Jet 0.6.1手册中的错误:

  

同一个Job实例可以提交多次执行。

您实际提交执行的是PipelineDag,而Job是您执行一个特定执行的句柄。因此,您可以为同一JobPipeline获得许多Dag实例。 Job.restart()并不意味着“从头开始”,而是“停止并开始”相同的工作,继续到其离开的地方。

一旦作业失败,您可以自由地提交具有相同Pipeline实例的另一个作业,但是没有机制可以在任何失败后自动从头开始重试。

答案 1 :(得分:1)

重新启动方法仅对正在运行的作业有效。作业失败后,目前无法重新启动。如果失败,您需要做的是再次提交与新工作相同的工作。对于流作业,您可能希望处理任何间歇性异常,以免它们导致作业失败。