jiayfer
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(1)
给我留言
查看公开留言
查看私人留言
随笔档案
2008年6月 (1)
搜索
最新评论
1. re: 程序运行一定时间后,在执行executeQuery()时,就停这不动了
应该是在等待sql语句执行返回。使用connection pool应该可以解决你这个问题,如proxool。
--ldd600
2. re: 程序运行一定时间后,在执行executeQuery()时,就停这不动了
评论内容较长,点击标题查看
--jiayfer
3. re: 程序运行一定时间后,在执行executeQuery()时,就停这不动了[未登录]
应该不是,因为重启一下就有可以正常运行了,再过个两三天又这样了。
--jiayfer
4. re: 程序运行一定时间后,在执行executeQuery()时,就停这不动了
看看数据库的链接吧 恐怕被占满了
--hucq
Powered by:
博客园
模板提供:
沪江博客
BlogJava
|
首页
|
发新随笔
|
发新文章
|
联系
|
聚合
|
管理
程序运行一定时间后,在执行executeQuery()时,就停这不动了
程序运行
一定时间后(一般为二三天),阻塞在executeQuery(),就停这不动了。很奇怪,也没任何异常,请各位帮帮忙,看怎么解决呀。
发表于 2008-06-24 11:00
jiayfer
阅读(2387)
评论(4)
编辑
收藏
评论
#
re: 程序运行一定时间后,在执行executeQuery()时,就停这不动了
回复
更多评论
看看数据库的链接吧 恐怕被占满了
#
re: 程序运行一定时间后,在执行executeQuery()时,就停这不动了[未登录]
回复
更多评论
应该不是,因为重启一下就有可以正常运行了,再过个两三天又这样了。
#
re: 程序运行一定时间后,在执行executeQuery()时,就停这不动了
回复
更多评论
初步发现原因了,写下来希望对大家有帮助。
我的数据库是oracle10.2.0.2,从一张表里轮询取数据,该捕获的异常都捕获了,但是当网络出现中断的情况下,就停在executeQuery(sql)这句不动了,程序不退出,日志里也没任何异常。我重新搭建了个测试环境,造出网络中断和数据库停止的情况,发现可以捕获异常,并且程序能够自动重新连接数据库,是没有问题的。
后来比较测试环境和运行环境,发现jdbc的驱动包有点老,是2005年的,于是换了比较新的驱动,问题解决了。
估计是由于在高版本数据库上使用低版本的jdbc驱动包,导致在出现网络中断异常时,oracle的jdbc驱动没抛出异常,程序也就没有可捕获的,于是就停住不动了。
在此写出来问题的解决方法,希望对别人有点帮助吧。
#
re: 程序运行一定时间后,在执行executeQuery()时,就停这不动了
回复
更多评论
应该是在等待sql语句执行返回。使用connection pool应该可以解决你这个问题,如proxool。
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
Chat2DB
C++博客
博问
管理