I’m facing an issue where I have two workflows and their respective instances are not getting processed parallelly by camunda. I have two workflows WF1.bpmn and WF2.bpmn, for load testing I started 50k-50k instances on each of the workflow at the same time. Once all 1 lakh instance reached to their respective timer event, I updated the DUEDATE_ column of ACT_RU_JOB for 1 lakh active instances to previous day so that the testing can be continued without waiting for timer to complete.
Query to update timer for 1 lakh instances in one go:
update act_ru_job set DUEDATE_ = sysdate-1 where process_def_id in (‘WF1:1:32a795d7-90b4-11ed-8f91-0a580a801275’, ‘WF2:1:32a9dfdf-90b4-11ed-8f91-0a580a801275’) ;
But then I observed that instances on WF1 were moved to next event first and when all the 50k instances got cleared then only WF2 instances waiting on timer started to move to next events. Sample workflows have been attached at the bottom.
In the middle of this testing when almost 10-12k instances of WF1 moved from timer event to next event, I thought defining more priority to WF2 timer event and restarting Camunda service may make a difference and their instances may started moving to next event. But nothing happened and I had to wait for WF1 timer event to complete.
Query to update priority
update act_ru_jobdef set job_priority_ = 5 where act_id_ = ‘MyTimerActId’ and proc_def_key_= ‘WF2’;
update act_ru_jobdef set job_priority_ = 4 where act_id_ = ‘MyTimerActId’ and proc_def_key_= ‘WF1’;
Above explained situation is not acceptable because journey of two customers running on two different workflows are completely independent and camunda should process them parallelly for better customer experience.
Can anyone please help me out to solve this problem, is there any configuration that needs to be done to make sure multiple workflows with their respective instances are processed parallelly.
Spring Boot Version: 2.5.4
Database: Oracle SQL
CPU: 500 millicore(0.5core)/pod
Pods: 20(Running Parallelly to scale performance)