Data Concurrency Issue

Hi All,

While performing sequential operations everything is working fine but while performing concurrent operations, causing concurrency issues. Data isn’t being fetched completely from Camunda DB to Camunda variable which results in failure of subsequent service tasks.

  1. Is this issue because of Camunda DB (MySQL in my case) unable to handle concurrent queries or is Camunda engine related?

  2. If this is the SQL DB issue then do we have to handle it at Camunda level or SQL DB level?

  3. is there a limitation of handling load at Camunda level?

Please assist me to get load balancing things done.

Thanks in advance.

Best Regards,
Vinit

What do you mean exactly when you say “concurrent operations”? Within one process instance? Or across multiple instances (with the concurrency only in the DB)? I think if there were general concurrency issues in camunda, they would have been long noticed and fixed by now.

Hi @fml2,

Thanks for the quick response.

Running multiple instances of a service task

yes

While performing multiple requests, when we are setting variables of one service task having multiple instance and in another service task we are getting partial data. But while requesting one at a time isn’t causing any issue while getting Camund variable in any service task.

This below is our use case:

So we are using rabbitMQ for messaging.

  1. Message Received: Consume the messages from the queue and setting all the variables of Camunda while starting the Process Engine.
    Note : Concurrency of rabbitMQ consumer is 5.

  2. Task 1: This service task is not getting all variables when we produce multiple requests to the rabbitMQ producer even though rabbitMQ consumers consume concurrent 5 requests at a time but Camunda isn’t able to fetch all those variables as per concurrent requests.
    Note: One request at a time is fetching all data from Camunda variables.

  3. Task 3: Same issue happing in Task 2 as well.

This behavior is random, sometimes in task 1 or task 2 or sometimes works fine.

Regards,
Vinit Kumar