Timeout Boundary Events are triggered incorrectly in Sub workflows (created using Create Process).
To be able to reproduce this issue, I have created 3 Test Flows (acttached):
TestMainProcess.xml
The Main Workflow which calls a single Sub workflow using Create Process.
In this demo a single TestSubProcess is launched, but in our project setup, multiple Sub Processes are launched. We designed our workflows this way, as was previously suggested by Avaya.
TestSubProcess.xml
The sub workflow creates additional smaller sub workflows using Create Process, in this demo this launches multiple sub processes called TestEmpty.
TestEmpty.xml
This workflow contains just a start+end event, to demonstrate the issue. In our current project workflow, this would contain a REST API call, or Database lookup and several logmessages, result mapping to vars etc.
All Create Process steps use TimeOut Boundary Events to handle lockup and timeouts of the workflows.
Error 1: Invalid triggering of Timeout Boundary Event
When instantiating the TestMainProcess, which creates the TestSubProcess, the First Create Process TestEmpty, always triggers a Timeout Boundary Event. This can be reproduced 100% on Breeze Engagement Designer 3.4.0.0.06340003.
NB: In our project workflow, the Timeout handling would trigger separate error handling and logging. The log message is just to demonstrate the issue.
NB: I added some extra LogMessage + Timeout Boundary Events at the start of TestSubProcess, to test if the error is related to the first Timeout Boundary Event or the first Create Process. It is related to Create Process.
Remark:
When launching TestSubProcess directly (so not using TestMainProcess), the issue does not occur.
But this is not a solution for us, as using a single large workflow would make it way too big and complex and introduces Editing timeouts and Save bugs in Engagement Designer.
So we really require the 2 subprocess levels.
Error 2:
Sometimes TestSubProcess remains Active because a random Create process TestEmpty + attached Timeout Boundary Event remain active (even when the TestEmpty workflow is finished).
I cannot reproduce this easily, but it occurs once in a while.
Filename |
Create Process ERROR - Timeout Boundary Event.zip |
Download
|
|