PooledConnection已被多个数据源关闭错误

时间:2016-08-04 15:10:41

标签: grails tomcat7 connection-pooling

我们正在使用Grails 2.5.3针对MySQL数据库运行,并且最近引入了第二个数据源定义。我们在调用多个事务服务的非事务性服务中获得以下异常。尝试启动第二个事务时发生异常:

» 3 Aug 2016 16:49:44.119  PooledConnection has already been closed.. Stacktrace follows: 
» 3 Aug 2016 16:49:44.119  java.sql.SQLException: PooledConnection has already been closed. 

似乎Grails在第一个事务结束后正在关闭与第二个数据源的连接,并且正在尝试重用该连接。我想知道是否有人看过这个和/或解决过它。

1 个答案:

答案 0 :(得分:0)

我们遇到过同样的问题但不是两个不同的数据源。我们的应用程序使用的是Hibernate和iBatis,虽然hibernate部分集成在grails中并且工作正常,但是当调用第二个连续事务时,iBatis代码给出了上述问题。

为了解决这个问题,我们在resources.groovy中创建了另一个数据源,并使用iBatis代码和这个新的数据源。您可以参考Grails Pooled Connection Exception了解我们解决方案的配置详情。