Skip to content

Commit 8932e51

Browse files
committed
check exists before delete flow process instance
1 parent 0ce681f commit 8932e51

1 file changed

Lines changed: 11 additions & 1 deletion

File tree

server/odc-service/src/main/java/com/oceanbase/odc/service/flow/FlowInstanceService.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
import org.flowable.engine.RuntimeService;
4848
import org.flowable.engine.history.HistoricProcessInstance;
4949
import org.flowable.engine.history.HistoricProcessInstanceQuery;
50+
import org.flowable.engine.runtime.ProcessInstance;
5051
import org.springframework.beans.factory.annotation.Autowired;
5152
import org.springframework.beans.factory.annotation.Qualifier;
5253
import org.springframework.context.annotation.Lazy;
@@ -1643,7 +1644,16 @@ private void deleteFlowProcessInstance(String processInstanceID, Long flowInstan
16431644
log.info("processInstanceID is null for instance id {}, return", flowInstanceId);
16441645
return;
16451646
}
1646-
runtimeService.deleteProcessInstance(String.valueOf(processInstanceID), "flow is canceled");
1647+
try {
1648+
ProcessInstance processInstance =
1649+
runtimeService.createProcessInstanceQuery().processInstanceId(processInstanceID).singleResult();
1650+
if (null != processInstance) {
1651+
runtimeService.deleteProcessInstance(processInstance.getId(), "flow is deleted");
1652+
}
1653+
} catch (Exception e) {
1654+
log.warn("Failed to delete external approval instance, flowInstanceId={}, processInstanceID={}",
1655+
flowInstanceId, processInstanceID, e);
1656+
}
16471657
}
16481658

16491659
/**

0 commit comments

Comments
 (0)