从昨天开始,我在WSO2数据服务服务器中遇到了DB2数据源问题。每天晚上我都有一个调度shell脚本脚本,它在数据库中进行维护,但是在某些时候我必须删除DB2上的所有连接然后我希望WSO2必须再次绑定连接池,但是当这样做时我得到了这个错误:
嵌套异常: - com.ibm.db2.jcc.c.DisconnectException:[ibm] [db2] [jcc] [t4] [2030] [11211]检测到通信错误。使用的通信协议:TCP / IP。 正在使用的通信API:SOCKETS。检测到错误的位置:T4Agent.sendRequest()。 检测错误的通信功能:OutputStream.flush()。协议特定错误代码断开管道,*,0。消息:管道损坏
引起:javax.xml.stream.XMLStreamException:DS错误消息:'SQLQuery.processNormalQuery'中的错误
在连接断开后,我错误地认为或自然会出现此错误吗?
感谢。
答案 0 :(得分:0)
是的,您可能会遇到错误,因为当DB2断开连接时,连接池中的数据库连接将变为无效。因此,第一个进入数据服务的请求将失败。要处理此问题,请使用数据源中的“validationQuery”选项来克服此问题。您可以使用诸如“从sysibm.sysdummy1中选择1”之类的查询作为验证查询,每次在从连接池使用连接之前都会调用此查询。
干杯, 长香。