Spring cloud 重新启动作业后,不会传递合成的任务参数

Spring cloud 重新启动作业后,不会传递合成的任务参数,spring-cloud,spring-cloud-dataflow,Spring Cloud,Spring Cloud Dataflow,我正在运行一个包含三个子任务的组合任务 组合任务定义: 组合任务运行程序--graph='task1&&task2&&task3' 发射命令 任务启动我的组合任务--属性“app.composited task runner.composited task arguments=arg1=a.txt arg2=test” 情景1: 当组合任务在没有任何错误的情况下运行时,参数将传递给所有子任务 情景2: 当第二个子任务失败且作业重新启动时,合成的任务参数将传递给第二个子任务,而不是第三个子任务 情

我正在运行一个包含三个子任务的组合任务

组合任务定义:

组合任务运行程序--graph='task1&&task2&&task3'

发射命令

任务启动我的组合任务--属性“app.composited task runner.composited task arguments=arg1=a.txt arg2=test”

情景1: 当组合任务在没有任何错误的情况下运行时,参数将传递给所有子任务

情景2: 当第二个子任务失败且作业重新启动时,合成的任务参数将传递给第二个子任务,而不是第三个子任务

情景3:

当第一个和第二个任务成功,第三个子任务失败,并且作业重新启动时,组合的任务参数现在传递给第三个子任务

观察: 任务失败并重新启动后,合成的任务参数仅传递给失败的任务,而不传递给失败后的任务

作业重新启动后,如何在组合任务中检索参数?这种行为的原因可能是什么

使用的版本:

SpringCloud本地服务器-1.7.3,SpringBoot-2.0.4,SpringCloudStarter任务-2.0.0


您遇到的问题是SCDF没有存储启动时指定的属性。 此问题正在此处跟踪:并计划在SCDF 2.0.0中修复 [详情] 因此,当作业重新启动时,这些属性不会提交(因为它们当前未存储)到新的CTR启动。 因此,后续任务(失败的任务成功后)将不会为其设置属性。 失败作业仍具有此值的原因是参数存储在该步骤的批处理步骤执行上下文中。 [在问题解决之前解决问题]
不要重新启动作业,而是使用属性启动CTR任务定义(只要属性相同)

您遇到的问题是SCDF没有存储启动时指定的属性。 此问题正在此处跟踪:并计划在SCDF 2.0.0中修复 [详情] 因此,当作业重新启动时,这些属性不会提交(因为它们当前未存储)到新的CTR启动。 因此,后续任务(失败的任务成功后)将不会为其设置属性。 失败作业仍具有此值的原因是参数存储在该步骤的批处理步骤执行上下文中。 [在问题解决之前解决问题]
不要重新启动作业,而是使用属性启动CTR任务定义(只要属性相同)

太好了。谢谢你的信息。太好了。谢谢你的信息。