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
Deletion of a running process instance fails with foreign key violation
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
-