我们只在生产环境中看到了一种奇怪的行为。该应用程序运行良好几个小时,之后我们开始看到 java.sql.SQLException: Closed Connection
这发生在我们的 spring + ibatis 代码库中(我们从 Hibernate 迁移到 iBatis)。
我们正在使用 weblogic 10.0.3、spring 3.0.2 和 iBatis 2.3.5
异常的行为是:
- 使用 iBatis 更新时出现几个数据库异常(单个更新不是事务)。
- 然后 java.sql.SQLException: ORA-01013: 用户请求取消当前操作
- 然后原因:java.sql.SQLException: No more data to read from socket
- 然后原因:java.sql.SQLException: OALL8 处于不一致状态。
- 然后原因:java.sql.SQLException:Io异常:断管。
然后所有后续的数据库查询
原因:java.sql.SQLException:关闭连接,然后我们必须重新启动服务器以使连接活跃。