从 Oracle 11g 迁移到 Oracle 12 c 时,我们使用 UCP(12.1.0.2.0) 遇到错误
java.sql.SQLException: The connection is closed: The connection is closed
at oracle.ucp.util.UCPErrorHandler.newSQLException(UCPErrorHandler.java:464)
at oracle.ucp.util.UCPErrorHandler.newSQLException(UCPErrorHandler.java:448)
at oracle.ucp.jdbc.proxy.JDBCConnectionProxyFactory.invoke(JDBCConnectionProxyFactory.java:307)
at oracle.ucp.jdbc.proxy.ConnectionProxyFactory.invoke(ConnectionProxyFactory.java:50)
at com.sun.proxy.$Proxy24.prepareStatement(Unknown Source)
这是一个多线程应用程序,我们从 UCP 池中获取连接,使用它然后关闭连接。但是,对于某些操作,我们在线上遇到了上述错误 - connection.prepareStatement(statement) 我们正在使用 PoolDataSource
很少尝试 1) 使用连接池的默认值并仅设置最小、最大池大小。2)将 setValidateConnectionOnBorrow 设置为 true,3)将 setValidateConnectionOnBorrow 设置为 true,并将 setValidateConnectionOnBorrow 设置为“SELECT 1 FROM DUAL” 4)使用标签连接 5)数据库在特定时间后不会断开连接,也没有防火墙阻止连接. 6) 使用 setMaxConnectionReuseTime
我已经提到了一些显示类似问题的链接。但是它没有显示任何分辨率 https://community.oracle.com/thread/2183613
https://community.oracle.com/thread/2298699
有没有人在使用 UCP 的 Oracle 12C 上遇到过类似的问题?最新的 UCP 中是否有一些错误?