I know that this should be a question for Oracle, but there are already four threads in https://community.oracle.com asking the same and they get no answer. Maybe someone in stackoverflow can help me as we are getting MASSIVE problems with the managed drivers. Our hope is that someone from this community could know the answer.
After migrating from the 11 unmanaged to the 12c managed drivers (4.121.2.0 from Nuget) our system is getting exceptions from Oracle. This is the call stack:
Oracle.ManagedDataAccess.Client.OracleException (0x80004005): Request timed out
bei OracleInternal.ConnectionPool.PoolManager`3.Get(ConnectionString csWithDiffOrNewPwd, Boolean bGetForApp, String affinityInstanceName, Boolean bForceMatch)
bei OracleInternal.ConnectionPool.OraclePoolManager.Get(ConnectionString csWithNewPassword, Boolean bGetForApp, String affinityInstanceName, Boolean bForceMatch)
bei OracleInternal.ConnectionPool.OracleConnectionDispenser`3.Get(ConnectionString cs, PM conPM, ConnectionString pmCS, SecureString securedPassword, SecureString securedProxyPassword)
bei Oracle.ManagedDataAccess.Client.OracleConnection.Open()
We did some test and it seems that the pooling is not working correctly. As far as we can tell even if you keep the system just running without doing anything, the connections from the pool will die. When this happens the system cannot work anymore as there are no connections it could use. It seems that the connections are invalid but they are not being recycled by the drivers. In this case we need to kill the process. As this is a business server working as a service it is a major problem.
The same software with the previous unmanaged drivers had no problems at all, so it has nothing to do with the size of the pool or connections not being disposed (as I said we could reproduce the problem with nearly no queries to the system).
Have any of you heard something similar and could please help us? Thank you very much for any hints.