cancel
Showing results for 
Search instead for 
Did you mean: 

Timerstartevent does not work correctly

houstoniasian
Champ in-the-making
Champ in-the-making
1.  timerStart -Smiley Embarassed serviceTask1 -> serviceTask2 -> humanTask

The above work flow works fine.  I set the timer to start the process every 20s.  Every 20s, it start a new process and stop at humanTask waiting for user input.  So after 1 minute, I expect to see 3 processes.

2.  timerStart -> serviceTask1 -> serviceTask2 -> loopbackto serviceTask2 (serviceTask2 looking for a certain condition and if it meets the condition, the process will go to humanTask)

In this case, if the current process keep looping back to serviceTask2, timer will NOT start a new process.  So after 1 minute, I only see 1 process that keep running and looping back to serviceTask2.  I expect there are three processes, not one. 

It seems like timerstartevent will not start a new process if the previous process did not reach the end or a human task.  To confirm this behavior, I test this scenario:

timerStart (every 20s) -> serviceTask -> endEvent.  Inside serviceTask, I put a Thread.sleep for 1 minute.  Sure enough, timerStart does not start a new process after the current process goes to endEvent.

Is this a "designed" behavior of timerStartEvent or is it a bug?

Thank you,

Tan
1 REPLY 1

jbarrez
Star Contributor
Star Contributor
Yes, this is "designed" behavior: there is only _one_ job for starting the process every x seconds.

The job executor locks the job before execution and unlocks it after running it. So if your job execution takes longer than the restart time of the process instance start it won't be unlocked yet. Hence the problem you are seeing.

A solution to your problem is to make parts of your workflow async, which will be executed in different jobs.
Getting started

Tags


Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.