java.sql.SQLException: 关闭的连接
来源:互联网 发布:天池大数据竞赛 肺癌 编辑:程序博客网 时间:2024/05/16 04:14
最近工作中遇到一个非常奇怪的问题,数据库没有进行补丁修复,应用没有修改过,程序也没有变动过,但是weblogic后台一直报异常,信息如下:
java.sql.SQLException: 关闭的连接
at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.ja
va:70)
at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:1
12)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java
:173)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java
:229)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java
:403)
at oracle.jdbc.driver.PhysicalConnection.createStatement(PhysicalConnect
ion.java:2925)
at oracle.jdbc.driver.PhysicalConnection.createStatement(PhysicalConnect
ion.java:2902)
at weblogic.jdbc.wrapper.Connection.createStatement(Connection.java:443)at qqbean.sm.oms.system.service.OrderTimerBO.selectProductTeam(OrderTime
rBO.java:166)
at qqbean.sm.oms.system.service.OrderReduceTimer.run(OrderReduceTimer.ja
va:38)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
当前有事业务高峰期,功能部分好用,部分异常,电话一个接一个,头脑开始肿大。根据以上异常,自我判断为以下几点并根据以下
几点进行排查;
1、服务器进行补丁修复
查看系统日志,未发现有补丁修复的记录,也没有weblogic应用异常的信息;排除该可能性;
2、数据库进行补丁修复
联系IBM运维团队,并为对数据库进行补丁修复;排除该可能性;
3、weblogic连接池配置问题
weblogic连接池进行测试连接没有问题,重启部署不能解决问题,郁闷中......
4、oracle的session超过系统最大值
查看当前用户的session没有限制排除该问题;
百感交集在查看后台日志,看到如下信息:
[ERROR] AbstractDAO:314 - java.sql.SQLException: ORA-00600: internal error code,
arguments: [kkslgbv0], [], [], [], [], [], [], []
根据这个错误得知是数据库的一个bug:
Bug 5155885 OERI[kkslgbv0] with CURSOR_SHARING=similar
This note gives a brief overview of bug 5155885.
The content was last updated on: 03-APR-2009
Click here for details of each of the sections below.
Affects:
- 10.2.0.3
Fixed:This issue is fixed in
- 10.2.0.2 Patch 6 on Windows Platforms
- 10.2.0.3 Patch 1 on Windows Platforms
- 10.2.0.3 Patch 24 on Windows Platforms
- 10.2.0.4 (Server Patch Set)
- 11.1.0.6 (Base Release)
- Internal Error May Occur (ORA-600)
- ORA-600 [kkslgbv0]
- Literal Replacement (CURSOR_SHARING)
- CURSOR_SHARING
- _OPTIM_PEEK_USER_BINDS
Description
- A ORA-600 can occur while accessing a bind value while deciding whether
to shared a cursor or not when literal replacement is enabled.
Workaround
Use CURSOR_SHARING=EXACT or set "_optim_peek_user_binds"=false so that
bind values are not peeked.
- Bug:5155885 (This link will only work for PUBLISHED bugs)
Note:245840.1 Information on the sections in this article
针对这个问题,修复bug可能会导致更严重的问题,于是准备从导致该bug的sql出手,避开该bug。功夫不负有心人,问题终于通过修改sql后得到解决。
- java.sql.SQLException: 关闭的连接
- java.sql.SQLException: 关闭的连接
- java.sql.SQLException: 关闭的连接
- java.sql.SQLException: 关闭的连接
- java.sql.SQLException: 关闭的连接 解决办法
- 【已解决】java.sql.SQLException: 关闭的连接: next
- java.sql.SQLException: 关闭的 Resultset: next
- java.sql.SQLException: Io 异常: 远程主机强迫关闭了一个现有的连接。
- java.sql.SQLException: 流已被关闭
- ,java.sql.SQLException:流已被关闭
- java.sql.SQLException: 关闭的连接问题及hibernate clob缓冲流存储的解决过程记录
- java.sql.SQLException: statement is closed语句被关闭 druid连接池报错
- java.sql.SQLRecoverableException: 关闭的连接 解决办法
- java连接sql server 2005的问题 java.sql.SQLException: No suitable driver
- 读取数据库时报java.sql.SQLException: 流已被关闭
- Cause: java.sql.SQLException: ORA-02018: 同名的数据库链接具有打开的连接
- java连接mysql数据库,出现错误:java.sql.SQLException
- java.sql.SQLException: 无效的列类型
- Android核心分析
- hdu 1242 bfs
- 根据typeName获取Type较为完备的办法
- 第17周 任务三(揭开关于你生世的秘密)
- C#操作RTF文档
- java.sql.SQLException: 关闭的连接
- 第18周报告1:指向字符的指针
- 交换机配置1
- 【Nunit入门系列讲座 6】NUnit断言- 条件断言
- 关于操作access遇到的问题以及解决办法
- 必须掌握的八个【cmd 命令行】
- Application.DoEvents
- 第18周报告2:二维数组
- asp.net网站伪静态化