UCP 12.1.0.2 Connection Pool Is Not Refreshing Properly for Borrowed Connections (Doc ID 2158818.1)

Last updated on JULY 28, 2016

Applies to:

JDBC - Version 12.1.0.2.0 and later
Information in this document applies to any platform.

Symptoms

UCP version 12.1.0.2.0 used as a connection pool manager with JDBC 12c driver, the max and min pool size set to 4.

Operation: borrow two connections ( example Session-ID S1 and S2) from the pool. One connection (Session-ID=S1) encounters SQL exception (vendor code-17002). The SQL exception is received because the network connection is removed.  After that failure, reconnect the LAN and refresh the pool (refreshConnectionPool and recycleConnectionPool API).

Behaviour of Recycle connection pool: Connection (Session-ID=S1) that encountered SQL exception has been removed from the pool and recycled and all the available connections get refreshed. However, the borrowed connection (SID=S2) is not refreshed after it returns to the pool. The SQL statement can be executed using that borrowed connection (Session-ID=S2).

Behaviour of Refresh connection pool: Connection that encountered SQL exception has been removed from the pool and refreshed and all the available connections get refreshed. However, the borrowed connection (SID=S2) is not refreshed after it returns to the pool. The SQL statement can be executed using that borrowed connection (Session-ID=S2).

UCP connection pool is not refreshing properly for borrowed connections.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms