This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Table of Contents

HikariCP connection pool configuration

Beginning with Pega® Platform 7.4, HikariCP manages connection pooling when a database is defined by URLs and maximum connections are not specified. When the connection pool size is exceeded, the result is a connection time-out. An exception appears in the log file as shown in the following example:

Caused by: java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30000ms.
[java] at com.zaxxer.hikari.pool.HikariPool.createTimeoutException( ~[HikariCP-java7-2.4.12.jar:?]
[java] at com.zaxxer.hikari.pool.HikariPool.getConnection( ~[HikariCP-java7-2.4.12.jar:?]
[java] at com.zaxxer.hikari.pool.HikariPool.getConnection( ~[HikariCP-java7-2.4.12.jar:?]
[java] at com.zaxxer.hikari.HikariDataSource.getConnection( ~[HikariCP-java7-2.4.12.jar:?]

The default maximum size of the HikariCP connection pool is 20 and can be changed in prconfig.xml file settings. To avoid performance issues, and because HikariCP aggressively acquires connections, set the maximum size of the HikariCP connection pool to a true maximum value, not to an arbitrary maximum value. Set the maximum connection pool size separately for each database, as shown in the following example:

<env name="database/databases/PegaRULES/connectionPoolSize" value="30" />

<env name="database/databases/PegaDATA/connectionPoolSize" value="30" />

If HikariCP is used for a specific database, the following entry appears in the log file:

Connection Pool size is set to "20"

Did you find this content helpful?

50% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.