At the moment, it is not clear how to reproduce this issue. That's why this issue contains different scenarios in which the deletion of running instances fail.
Scenarios:
- In all scenarios, there exists a running process instance.
- Scenario 1: A variable exists that references the running process instance.
- Scenario 2: An incident exists that references the running process instance.
When
- Deleting the running process instance.
Observed Behavior:
- In scenario 1, the variable doesn't get deleted so that the deletion of the running process instance fails with a foreign key violation exception.
- In scenario 2, the incident doesn't get deleted so that the deletion of the running process instance fails with a foreign key violation exception.
Hints:
- Each execution entity has a "cached entity state" field, that contains information about which referencing entities (like variables, incidents, ...) exists. Basically, the "cached entity state" is a bitmask, for example
- If a process instance has variable, then the respective bit for variables is on.
- If a process instance hasn't any variables, then the respective bit for variables is off.
- In the scenarios, in which the deletion failed with a foreign key violation exception, the "cached entity state" represented the wrong state, for example
- According to the "cached entity state", the process instance supposed to have no variables, but the deletion failed because a variable exists that references the process instance.
- According to the "cached entity state", the process instance supposed to have no incidents, but the deletion failed because an incident exists that references the process instance.
Please note:
- The root cause for the inconsistent "cached entity state" is unknown so far.
- Possibly related to
CAM-10409 - This issue is to collect the different scenarios in which a foreign key violation exception happens on deletion.
This is the controller panel for Smart Panels app
- is related to
-
CAM-10409 Failing dabase batch operation can lead to inconsistent database state
- Closed