Hello,

From looking at the client driver, I get the impression the following expectation is valid:

// Initial data source creation and configuration
...
// Get physical connection
PooledConnection pc = cpDs.getPooledConnection();
// Get logical connection
Connection con = pc.getConnection();
...
// Reconfigure data source
...
// Get a new *logical* connection
con = pc.getConnection();
// The new logical connection has the changes made to the data source.

I thought you had to get a new pooled connection for the changes to take effect.
Does anyone know?


I was also surprised to discover that the client driver re-prepares all open statements when you do PooledConnection.getConnection().
Has there been a statement pooling mechanism in place earlier?
Why aren't the statement just closed instead?



thanks,
--
Kristian


Here's a comment from am.Statement:
// If a dataSource is passed into resetClientConnection(), then we will assume // properties on the dataSource may have changed, and we will need to go through // the open-statement list on the connection and do a full reset on all statements, // including preparedStatement's and callableStatement's. This is because property // change may influence the section we allocate for the preparedStatement, and
// also the cursor attributes, i.e. setCursorSensitivity().
// If no dataSource is passed into resetClientConnection(), then we will do the
// minimum reset required for preparedStatement's and callableStatement's.

KW: The method referred (resetClientConnection) does not exist anymore.

Reply via email to