Closed
Description
Bug description
Different behavior when interrupting a job, depending on the parallel flow order.
I am creating a parallel flow and trying to interrupt a job from one of them. Further behavior depends on the order of the flow inside the add() function. In one case, the job is finished immediately, in the other, all steps from another parallel flow are executed.
Flow parallelFlow = new FlowBuilder<SimpleFlow>("parallelFlow")
.split(new SimpleAsyncTaskExecutor())
.add(nonInterruptingFlow, interruptingFlow)
.build();
Environment
Spring Batch: 4.3.1
Steps to reproduce
- Create a job with two parallel flows, where the last flow in the list interrupts the job.
- Make sure that the job has finished after the interruption.
- Change flow order (now the first flow in the list interrupts the job).
- Make sure that all the steps of the job have been executed after the interruption.
Expected behavior
Same behavior after interruption.
Minimal Complete Reproducible example
springbatchdemo.zip