Timer waiting for finish of preceding timer

Hi there, we’ve triggered a process by a timer start event from 04:00 to 07:30 every half an hour. We had configured the timer settings as a spring boot configuration. Then we found out that this was too quick: the process that had started at 04:00 had not finished at 04:30, and though the next timer was fired. This caused severe problems because the process instances were fighting for the same resources. So we changed the configuration to trigger the timer only once a day at 04:00 o’clock and restarted our service. But the timers still were triggered at

  • 04:00
  • 04:30
  • 05:00
  • 05:40
  • 06:35
  • 07:19
  • 07:35

Two questions:

  1. Why are the old timer settings still alive? Are they persisted somewhere?
  2. Can a timer trigger be configured that it waits with its firing until the previous one has finished?

Many thanks in advance,

Hi Christian

Yes timers are persisted in the db. I suspect you have two process versions running. In cockpit, consider removing the earlier version via undeploy.

To address concurrency, there are quite a few choices. One approach is to leave the timers as is, but detect concurrent execution. An example pattern to limit concurrent execution can be found here