如果我们在工作流程决策程序中添加等待使用Flow框架,是否需要更改SWF的工作流程版本

问题描述

我们正在使用Flow框架在SWF上运行我们的业务工作流。现在,我们想通过在运行第一个活动之前引入30秒的等待时间来更改并行活动的顺序。 这需要更改我们的工作流工作者。现在,由于活动仍然相同,我们是否需要提高工作流程版本以执行此更改。

Flow文档说,重播要求代码具有确定性,任何更改都会破坏重播功能。 参考:https://docs.aws.amazon.com/amazonswf/latest/awsflowguide/java-flow-making-changes-decider-code.html

现在,由于这两个活动较早地并行运行,现在在代码更改中,我们试图将其中一个延迟30秒。如果我们不升级版本,重播会在这里失败吗?

解决方法

是的,重播将失败,因为它不会在通过旧版本代码传递执行点的工作流历史中找不到计时器。