-
Bug Report
-
Resolution: Unresolved
-
L3 - Default
-
None
-
None
-
None
Consider the process model example.png.
On version 7.3:
- the process is instantiated
- execution reaches the compensation-throwing event; the compensation handler C is active
After migrating to 7.4:
- the compensation handler is completed, execution reaches task D
Problem:
- the message boundary event cannot be triggered
- the sub process history end time is written when the compensation event is completed
- the compensation event receives no history end time
Reason:
- the modeled process contains two constructs that are a scope in 7.4 but were not before. The event sub process was not a scope in versions <= 7.2. The compensation throw event was not a scope in versions <= 7.3
- in the described process instance, there misses only one scope execution (for the compensation throw event) because the event sub process was a scope in 7.3
- the legacy behavior logic assumes that the event sub process scope is missing and that the compensation throw event scope is there
- when leaving the compensation throw event, we therefore destroy the current scope execution, which is in fact the scope execution for the sub process. Any event subscriptions, jobs, variables related to it are removed as well
- in consequence the message event cannot be triggered
The discussed process is just an example, there are more. They all have in common that migration is performed when compensation is active and the compensation throwing event has an ancestor scope that was not a scope in 7.2.
This is the controller panel for Smart Panels app
- is depended on by
-
CAM-4354 Write migration tests for changes introduced with CAM-4285
- Closed