Description:
If WebLogic is consistently running out of memory CA Technical Support recommends you to verify that the Connection Pool setting for 'Remove Infected Connections Enabled' be set to false.
This is a requirement as per the Installation guide. Leaving this option enabled has provenly interfered with Clarity application's performance.
Solution:
When 'Remove infected Connections Enabled' = true (default value) and you close the logical connection, the server instance discards the underlying physical connection and creates a new connection to replace it. This action ensures that the pool can guarantee to the next user that they are the sole user of the pool connection. This configuration provides a simple and safe way to close a connection. However, there is a performance loss because:
The physical connection is replaced with a new database connection in the connection pool, which uses resources on both the application server and the database server.
The statement cache for the original connection is closed and a new cache is opened for the new connection. Therefore, the performance gains from using the statement cache are lost.
Note: Use 'Remove infected Connections Enabled' = false only if you are sure that the exposed physical connection will never be retained or reused after the logical connection is closed.
When 'Remove infected Connections Enabled' = false and you close the logical connection, the server instance simply returns the physical connection to the connection pool for reuse. Although this configuration minimizes performance losses, the server instance does not guarantee the quality of the connection or to effectively manage the connection after the logical connection is closed. You must make sure that the connection is suitable for reuse by other applications before it is returned to the connection pool.