The following example shows a DataDirect Connection Pool Manager trace file. Notes provide explanations for the referenced text to help you understand the content of your own Pool Manager trace files.
Note: The example is drawn from a Microsoft SQL Server use case but applies to most Progress DataDirect drivers.
jdbc/SQLServerNCMarkBPool: *** ConnectionPool Created
(jdbc/SQLServerNCMarkBPool,
com.ddtek.jdbcx.sqlserver.SQLServerDataSource@1835282, 5, 5, 10, scott)1 jdbc/SQLServerNCMarkBPool: Number pooled connections = 0.
jdbc/SQLServerNCMarkBPool: Number free connections = 0.
jdbc/SQLServerNCMarkBPool: Enforced minimum!2 NrFreeConnections was: 0
jdbc/SQLServerNCMarkBPool: Number pooled connections = 5.
jdbc/SQLServerNCMarkBPool: Number free connections = 5.
jdbc/SQLServerNCMarkBPool: Reused free connection.3 jdbc/SQLServerNCMarkBPool: Number pooled connections = 5.
jdbc/SQLServerNCMarkBPool: Number free connections = 4.
jdbc/SQLServerNCMarkBPool: Reused free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 5.
jdbc/SQLServerNCMarkBPool: Number free connections = 3.
jdbc/SQLServerNCMarkBPool: Reused free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 5.
jdbc/SQLServerNCMarkBPool: Number free connections = 2.
jdbc/SQLServerNCMarkBPool: Reused free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 5.
jdbc/SQLServerNCMarkBPool: Number free connections = 1.
jdbc/SQLServerNCMarkBPool: Reused free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 5.
jdbc/SQLServerNCMarkBPool: Number free connections = 0.
jdbc/SQLServerNCMarkBPool: Created new connection.4 jdbc/SQLServerNCMarkBPool: Number pooled connections = 6.
jdbc/SQLServerNCMarkBPool: Number free connections = 0.
jdbc/SQLServerNCMarkBPool: Created new connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 7.
jdbc/SQLServerNCMarkBPool: Number free connections = 0.
jdbc/SQLServerNCMarkBPool: Created new connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 8.
jdbc/SQLServerNCMarkBPool: Number free connections = 0.
jdbc/SQLServerNCMarkBPool: Created new connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 9.
jdbc/SQLServerNCMarkBPool: Number free connections = 0.
jdbc/SQLServerNCMarkBPool: Created new connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 10.
jdbc/SQLServerNCMarkBPool: Number free connections = 0.
jdbc/SQLServerNCMarkBPool: Created new connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 0.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.5 jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 1.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 2.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 3.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 4.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 5.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 6.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 7.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 8.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 9.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 10.
jdbc/SQLServerNCMarkBPool: Connection was closed and added to the cache.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 11.
jdbc/SQLServerNCMarkBPool: Enforced minimum!6 NrFreeConnections was: 11
jdbc/SQLServerNCMarkBPool: Number pooled connections = 11.
jdbc/SQLServerNCMarkBPool: Number free connections = 11.
jdbc/SQLServerNCMarkBPool: Enforced maximum!7 NrFreeConnections was: 11
jdbc/SQLServerNCMarkBPool: Number pooled connections = 10.
jdbc/SQLServerNCMarkBPool: Number free connections = 10.
jdbc/SQLServerNCMarkBPool: Enforced minimum!
NrFreeConnections was: 10
jdbc/SQLServerNCMarkBPool: Number pooled connections = 10.
jdbc/SQLServerNCMarkBPool: Number free connections = 10.
jdbc/SQLServerNCMarkBPool: Enforced maximum!
NrFreeConnections was: 10
jdbc/SQLServerNCMarkBPool: Number pooled connections = 10.
jdbc/SQLServerNCMarkBPool: Number free connections = 10.
jdbc/SQLServerNCMarkBPool: Enforced minimum!
NrFreeConnections was: 10
jdbc/SQLServerNCMarkBPool: Number pooled connections = 10.
jdbc/SQLServerNCMarkBPool: Number free connections = 10.
jdbc/SQLServerNCMarkBPool: Enforced maximum!
NrFreeConnections was: 10
jdbc/SQLServerNCMarkBPool: Number pooled connections = 10.
jdbc/SQLServerNCMarkBPool: Number free connections = 10.
jdbc/SQLServerNCMarkBPool: Dumped free connection.8 jdbc/SQLServerNCMarkBPool: Number pooled connections = 9.
jdbc/SQLServerNCMarkBPool: Number free connections = 9.
jdbc/SQLServerNCMarkBPool: Dumped free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 8.
jdbc/SQLServerNCMarkBPool: Number free connections = 8.
jdbc/SQLServerNCMarkBPool: Dumped free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 7.
jdbc/SQLServerNCMarkBPool: Number free connections = 7.
jdbc/SQLServerNCMarkBPool: Dumped free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 6.
jdbc/SQLServerNCMarkBPool: Number free connections = 6.
jdbc/SQLServerNCMarkBPool: Dumped free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 5.
jdbc/SQLServerNCMarkBPool: Number free connections = 5.
jdbc/SQLServerNCMarkBPool: Dumped free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 4.
jdbc/SQLServerNCMarkBPool: Number free connections = 4.
jdbc/SQLServerNCMarkBPool: Dumped free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 3.
jdbc/SQLServerNCMarkBPool: Number free connections = 3.
jdbc/SQLServerNCMarkBPool: Dumped free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 2.
jdbc/SQLServerNCMarkBPool: Number free connections = 2.
jdbc/SQLServerNCMarkBPool: Dumped free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 1.
jdbc/SQLServerNCMarkBPool: Number free connections = 1.
jdbc/SQLServerNCMarkBPool: Dumped free connection.
jdbc/SQLServerNCMarkBPool: Number pooled connections = 0.
jdbc/SQLServerNCMarkBPool: Number free connections = 0.
jdbc/SQLServerNCMarkBPool: Enforced minimum!9 NrFreeConnections was: 0
jdbc/SQLServerNCMarkBPool: Number pooled connections = 5.
jdbc/SQLServerNCMarkBPool: Number free connections = 5.
jdbc/SQLServerNCMarkBPool: Enforced maximum!
NrFreeConnections was: 5
jdbc/SQLServerNCMarkBPool: Number pooled connections = 5.
jdbc/SQLServerNCMarkBPool: Number free connections = 5.
jdbc/SQLServerNCMarkBPool: Closing a pool of the group
jdbc/SQLServerNCMarkBPool10 jdbc/SQLServerNCMarkBPool: Number pooled connections = 5.
jdbc/SQLServerNCMarkBPool: Number free connections = 5.
jdbc/SQLServerNCMarkBPool: Pool closed11 jdbc/SQLServerNCMarkBPool: Number pooled connections = 0.
jdbc/SQLServerNCMarkBPool: Number free connections = 0.
1 The Pool Manager creates a connection pool. In this example, the characteristics of the connection pool are shown using the following format: (JNDI_name,DataSource_class,initial_pool_size,min_pool_size,max_pool_size, user) where: JNDI_name is the JNDI name used to look up the connection pool (for example, jdbc/SQLServerNCMarkBPool). DataSource_class is the DataSource class associated with the connection pool (for example com.ddtek.jdbcx.sqlserver.SQLServerDataSource). initial_pool_size is the number of physical connections created when the connection pool is initialized (for example, 5). min_pool_size is the minimum number of physical connections be kept open in the connection pool (for example, 5). max_pool_size is the maximum number of physical connections allowed within a single pool at any one time. When this number is reached, additional connections that would normally be placed in a connection pool are closed (for example, 10). user is the name of the user establishing the connection (for example, scott).
2 The Pool Manager checks the pool size. Because the minimum pool size is five connections, the Pool Manager creates new connections to satisfy the minimum pool size.
3 The driver requests a connection from the connection pool. The driver retrieves an available connection.
4 The driver requests a connection from the connection pool. Because a connection is unavailable, the Pool Manager creates a new connection for the request.
5 A connection is closed by the application and returned to the connection pool.
6 The Pool Manager checks the pool size. Because the number of connections in the connection pool is greater than the minimum pool size, five connections, no action is taken by the Pool Manager.
7 The Pool Manager checks the pool size. Because the number of connections in the connection pool is greater than the maximum pool size, 10 connections, a connection is closed and discarded from the pool.
8 The Pool Manager detects that a connection was idle in the connection pool longer than the maximum idle timeout. The idle connection is closed and discarded from the pool.
9 The Pool Manager detects that the number of connections dropped below the limit set by the minimum pool size, five connections. The Pool Manager creates new connections to satisfy the minimum pool size.
10 The Pool Manager closes one of the connection pools in the pool group. A pool group is a collection of pools created from the same PooledConnectionDataSource call. Different pools are created when different user IDs are used to retrieve connections from the pool. A pool group is created for each user ID that requests a connection. In our example, because only one user ID was used, only one pool group is closed.
11 The Pool Manager closed all the pools in the pool group. The connection pool is closed.