Managing the Database Connection Pool
Managing the Database Connection Pool
Pulse uses a database connection pool to manage concurrent connections to the Pulse relational database (MS SQL Server). The connection pool settings control how many database connections Pulse maintains and how idle connections are handled.
Note: Connection pool settings apply only when using MS SQL Server as the Pulse database. They do not apply to H2 or Postgres.
Connection Pool Parameters
Connection pool settings are configured in Pulse.cfg under the [DBConnectionPool] section:
[DBConnectionPool]
IdleTimeoutSeconds = 60
MinimumIdle = 1
MaximumPoolSize = 10Parameter | Description | Default |
|---|---|---|
| The maximum time (in seconds) a connection is allowed to sit idle in the pool before it is removed. |
|
| The minimum number of idle connections Pulse maintains in the pool at all times. |
|
| The maximum number of connections the pool will maintain. |
|
When to Adjust Connection Pool Settings
The default values are appropriate for most environments. Consider adjusting them if:
High concurrency: You have many simultaneous Pulse users or a large number of TM1 instances being monitored, causing database query queuing.
SQL Server connection limits: Your SQL Server license or configuration restricts the number of concurrent connections — reduce
MaximumPoolSizeaccordingly.Connection timeout errors: Increase
MaximumPoolSizeif Pulse logs connection timeout errors during peak usage.
Applying Changes
Stop the Pulse Application Server service.
Open
conf/Pulse.cfgin a text editor.Update the values in the
[DBConnectionPool]section.Save the file and restart the Pulse Application Server service.
Monitoring Connection Usage
To monitor how many connections Pulse is using at any given time, you can:
Query the SQL Server dynamic management view
sys.dm_exec_sessionsand filter for the Pulse database name.Check the Pulse
pulse.logfile for anyConnection pool exhaustedor timeout messages.
Notes
MaximumPoolSizeshould not exceed the SQL Server's configured maximum connections limit.Setting
MinimumIdleto0means Pulse will not maintain any idle connections, which reduces resource usage but may add latency when new connections are needed.These settings are only relevant for the Pulse relational database connection. Opensearch connections are managed separately.