Database Connection Pool - Smile CDR Documentation

Database Connection Pool

Smile CDR manages a connection pool for each database connection. A number of database config properties control the behaviour of these connection pools.

Connection Pool Exhaustion

If Smile CDR requests a database connection from the database and none is available, then you will see an error message like the following in the logs.

Cannot get a connection, pool error Timeout waiting for idle object

Copy

The first thing to check is that the value for db.connectionpool.maxtotal is lower than the number of database connections available for Smile CDR (as configured on the database server).

If that does not resolve the issue, then you should set the following configuration parameters to true:

This will return abandoned connections to the connection pool and DEBUG log their stack traces. You may wish to enable the Connection Pool Troubleshooting Log so these log messages are in a separate file from your main log file.

Database Design

Database Connection Pool

Database Administration

Database Design Database Connection Pool Setting Up PostgreSQL Troubleshooting PostgreSQL Setting Up MySQL Setting Up MariaDB Setting Up Oracle Setting Up SQL Server (MSSQL) AWS RDS Authentication Azure Entra Authentication

Setting Up PostgreSQL