+

Search Tips   |   Advanced Search

Connection Manager (connectionManager)

Connection Manager configuration

Name Type Default Description
agedTimeout A period of time with second precision -1 Amount of time before a connection can be discarded by pool maintenance. A value of -1 disables this timeout. A value of 0 discards every connection, which disables connection pooling. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), or seconds (s). For example, specify 30 seconds as 30s. We can include multiple values in a single entry. For example, 1m30s is equivalent to 90 seconds.
connectionTimeout A period of time with second precision 30s Amount of time after which a connection request times out. A value of -1 disables this timeout, meaning infinite wait. A value of 0 is immediate, meaning no wait. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), or seconds (s). For example, specify 30 seconds as 30s. We can include multiple values in a single entry. For example, 1m30s is equivalent to 90 seconds.
id string A unique configuration ID.
maxIdleTime A period of time with second precision 30m Amount of time a connection can be unused or idle until it can be discarded during pool maintenance, if doing so does not reduce the pool below the minimum size. A value of -1 disables this timeout. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), or seconds (s). For example, specify 30 seconds as 30s. We can include multiple values in a single entry. For example, 1m30s is equivalent to 90 seconds.
maxPoolSize int
Min: 0
50 Maximum number of physical connections for a pool. A value of 0 means unlimited. The optimal setting depends on the application characteristics. For an application in which every thread obtains a connection to the database, we might start with a 1:1 mapping to the `coreThreads` attribute.
minPoolSize int
Min: 0
Minimum number of physical connections to maintain in the pool. The pool is not pre-populated. Aged timeout can override the minimum.
purgePolicy

  • EntirePool
  • FailingConnectionOnly
  • ValidateAllConnections

EntirePool Specifies which connections to destroy when a stale connection is detected in a pool.
EntirePool
When a stale connection is detected, all connections in the pool are marked stale, and when no longer in use, are closed.
FailingConnectionOnly
When a stale connection is detected, only the connection which was found to be bad is closed.
ValidateAllConnections
When a stale connection is detected, connections are tested and those found to be bad are closed.
reapTime A period of time with second precision 3m Amount of time between runs of the pool maintenance thread. A value of -1 disables pool maintenance. Specify a positive integer followed by a unit of time, which can be hours (h), minutes (m), or seconds (s). For example, specify 30 seconds as 30s. We can include multiple values in a single entry. For example, 1m30s is equivalent to 90 seconds.
Advanced Properties
autoCloseConnections boolean true Attempts to clean up after applications that leave connections open after the end of a servlet request, enterprise bean instance, managed executor task, contextual task, or managed completion stage. When an unsharable connection is obtained within one of these application artifacts and remains open when it ends, the container attempts to close the connection handle. The container may also close sharable connections that do not support DissociatableManagedConnection. Applications should always follow the programming model defined by the specification and close connections at the appropriate times rather than relying on the container, even when this option is enabled.
enableContainerAuthForDirectLookups boolean false If set to true, connections use container authentication. If set to false, connections use application authentication.
enableSharingForDirectLookups boolean true If set to true, connections are shared. If set to false, connections are unshared.
maxConnectionsPerThread int
Min: 0
Limits the number of open connections on each thread.
numConnectionsPerThreadLocal int
Min: 0
Caches the specified number of connections for each thread. This setting can provide a performance improvement on large multi-core (8+) machines by reserving the specified number of database connections for each thread. For best performance, if we have n applications threads, set the maximum pool connections to at least n times the value of the numConnectionsPerThreadLocal attribute. Use the same credentials for all connection requests. For example, if we use 20 application threads, set the maximum pool connections to 20 or more. If we set the value of numConnectionPerThreadLocal attribute as 2 and we have 20 application threads, set the maximum pool connection to 40 or more. If setting numConnectionsPerThreadLocal does not improve performance due to application connection usage patterns that do not benefit from using numConnectionsPerThreadLocal, remove the attribute from configuration or set the value to 0.