[Fix-11465] Serial first, the last executing instance will be stopped (#11466)

* Serial first, the last executing instance will be stopped

* ut fix
This commit is contained in:
JiPeng Wang 2022-08-13 22:30:56 +08:00 committed by GitHub
parent 4362fb8448
commit 13d400ceb6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 10 deletions

View File

@ -341,16 +341,7 @@ public class ProcessServiceImpl implements ProcessService {
processInstance.getProcessDefinitionCode(),
processInstance.getProcessDefinitionVersion(), Constants.RUNNING_PROCESS_STATE,
processInstance.getId());
if (CollectionUtils.isEmpty(runningProcessInstances)) {
processInstance.setState(WorkflowExecutionStatus.SUBMITTED_SUCCESS);
saveProcessInstance(processInstance);
return;
}
for (ProcessInstance info : runningProcessInstances) {
if (Objects.nonNull(info.getState()) && (WorkflowExecutionStatus.READY_STOP.equals(info.getState())
|| info.getState().isFinished())) {
continue;
}
info.setCommandType(CommandType.STOP);
info.addHistoryCmd(CommandType.STOP);
info.setState(WorkflowExecutionStatus.READY_STOP);
@ -368,6 +359,8 @@ public class ProcessServiceImpl implements ProcessService {
}
}
}
processInstance.setState(WorkflowExecutionStatus.SUBMITTED_SUCCESS);
saveProcessInstance(processInstance);
}
}

View File

@ -471,7 +471,7 @@ public class ProcessServiceTest {
Mockito.when(processInstanceMapper.updateById(processInstance)).thenReturn(1);
Mockito.when(commandMapper.deleteById(9)).thenReturn(1);
ProcessInstance processInstance10 = processService.handleCommand(host, command9);
Assert.assertTrue(processInstance10 == null);
Assert.assertTrue(processInstance10 != null);
}
@Test(expected = ServiceException.class)