I have a process that I want to run every day at 6 am. I have already tested the whole thing in a test workflow, but it only works if a user task is directly after the timer. I then always have to confirm this user task manually, which makes no sense in an automated workflow.
Example 1 is the process that doesn’t work like this.
Example 2 is a test process with a user task after the timer, which is executed.
What is the reason for this? What am I doing wrong?
If I run the user task (which does nothing) then the process works without error.
If I define a normal executable start instead of a timer start event, everything also works without problems.
The timer does not want to execute the process afterwards without the user task.
Can you look into the database and find the job record for this timer - it should have a time and date in the recording showing the next time it’ll fire.
Do you see event subscriptions for this process definition in ACT_RU_EVENT_SUBSCR table configuration must be the process definition id? - Edit: start timer is used in the process so to event subscriptions are involved.
Depending on the setup that you use, the timer job might not be picked up as the deployment that the job belong to is not registered with the job executor.
For example in Tomcat/WidlFly pre-packaged distros jobExecutorDeploymentAware is set by default to true and deployments via Modeler are not registered (if I recall correctly).
If you have multiple applications, you might consider setting the configuration to false.
What do you mean by applications? I only have one Camunda instance on which only one timer start event is running, which should only execute one process per day. The process is also very small and takes less than 30 seconds to complete.
Should I still set jobExecutorDeploymentAware to false?
I deployed the process again yesterday and set a priority of 100 in the timer start event. (I don’t know if that helps me)
Today it ran as expected. I’ll check again over the next few days to see if it stays that way. In the post above you can also see that the duedate_ remains in the past.
Today where it was successful, the date is now also tomorrow.
There must be some service that looks at the ACT_RU_JOB table and ensures that the process is started. Where can I find logs for this service? It must be the cause.
Redeploying the process again will resolve the issue as it leads to automatic registration.
If you try restarting your engine the problem will arise again because registration is not persisted.
(Deployment-Aware Job Executor - #2 by thorben)
To completely kill the issue, set jobExecutorDeploymentAware to false.
Thank you!
I have set jobExecutorDeploymentAware to false and am now testing it. I will report back here in 7 days or sooner if the job is not executed.