Timer job running in a loop


We use flowable to run a workflow and have encountered an issue when performance testing it.

Historic cleaning has been setup with the following properties, so the cleanup is expected to run at 1 am every day.
flowable.history-cleaning-cycle=0 0 1 * * ?

We see flowable events being triggered at 30 second intervals and when checking the ACT_RU_TIMER_JOB, can see 3 entries.

  1. bpmn-history-cleanup to run at intervals of 0 0 1 * * ? - expected
  2. cmmn-history-cleanup to run at intervals of 0 0 1 * * ? - again expected
  3. delete-historic-process-status to run at intervals of 30 * * * * ? - this record has a specific handler cfg but can’t find the reference in any of the other tables

My question was how did this entry get added to the table and why is it running at 30 second intervals. Could delete this record to resolve the issue, but was hoping to understand the root cause to prevent it from recurring. Hope you can help please.


That job is part of the overall cleaning process. It means things are being deleted.

How much data is this running on? It could very well be the system is still cleaning up?

Thanks Joram. There were about 20K processes and all of them have been deleted but the server had crashed when the cleanup was in progress. Can see a cleanup job running every 30 seconds now but there are no entries to cleanup so a little confused. Will re-run a load test and follow it up with the cleanup job to get some logs that may help. Thanks again.

Do note that in the recent weeks, we’ve pushed many fixes in this area and improved the housekeeping throughput quite a bit. Just FYI.

Thanks Joram and sorry for the delay in updating results from further tests. Checked on the perf env. and we had around 900K entries in ACT_HI_ACTINST table. Cleanup was set to trigger at 1 am and it ran for about 20 minutes but then gave an out of memory error and the microservice went down. Restarted the microservice but again the same issue observed. Checked the latest commits in this area in github (as you suggested) and there is a change to use batchCleaningQuery. However, not sure if there is a release version with this change that we could use.