Camunda load test - JDBC connection problem

We have the spring boot application embedded with camunda spring boot starter.
Application having two database one is for camunda and another one is for domain. (Both are oracle)
Bpmn contain one user task and two service tasks. In the service tasks we call the domain related sps using simple Jdbc template.
Now we are doing load test for 1000 users using JMeter. It throw the exception as “Could not open JDBC Connection for transaction; nested exception is java.sql.SQLTransientConnectionException: HikariPool-2 - Connection is not available, request timed out after 30009ms.org.springframework.transaction.CannotCreateTransactionException: Could not open JDBC Connection for transaction; nested exception is java.sql.SQLTransientConnectionException: HikariPool-2 - Connection is not available, request timed out after 30009ms.” for some users.
Note: without camunda we call the same in normal application using the single transaction using @Transactional annotation it is working.

Hi @admin1,

seems to be a problem that occurs because of high load. Did you double check that the oracle instances are configured to allow enough connections in respect to the hikari pool size? And that the session timeout in oracle is longer than the connection timeout in hikari?
Second, please check that the Camunda DB-pool is not “larger” than your domain DB pool, because otherwise it can happen that you have Camunda threads running, each holding a Camunda DB session, in which the domain transaction is opened. If the system allows not enough domain sessions, this could also give the observed error.

Best, Ragnar

2 Likes

Thank you for your quick reply. I will analyze and make change according to your response and then let you know.

failure percentage decreased but still we are getting the exception for some users. Any other solutions?
Note: without camunda we call the same in normal application using the single transaction using @Transactional annotation it is working.