Delete and Terminate Semantics

Hello Community,

I’m testing Case terminate and BPMN delete functionality.

Model a simple BPMN process with a user task ex: BPMN_Process_1 and a Case with Process Task activity which has a reference to BPMN_Process_1

Instantiate Case, as part of process task execution, initiates BPMN_Process_1. Now terminate case instance using ReST API POST /case-instance/{id}/terminate

I noticed that process instance and corresponding activities are active.

Similarly, If we have a BPMN process invoking Case using Call Activity. If we delete the process instance using ReST DELETE /process-instance/{id}, then the case instance which is created by Call Activity is active.

But when a BPMN process (Ex:Process-1) calling another BPMN process (Ex: Process-2) using Call Activity. If we delete Process-1 instance then will terminate instance of Process-2

I understand, these executions and instances are stored in two different tables.

When there is a change in type of execution i.e. process invoking case or case invoking a process. May I know, Is there any functional reason not to terminate or delete?