GORM未关闭grails控制类之外的连接

GORM未关闭grails控制类之外的连接,grails,gorm,Grails,Gorm,我在Grails2.4.3上有一个方法(我删除了不重要的部分): 但是这个方法是在grails托管类之外的线程中运行的(我不太确定我在这里说的是否有意义)。关键是过了一段时间,它给了我: org.apache.tomcat.jdbc.pool.PoolExhaustedException: [http-bio-8080-exec-254] Timeout: Pool empty. 更改max接头并不能解决泄漏问题。我应该对grails做些什么来自动关闭它,还是有其他方法来解决这个问题?看看这些

我在Grails2.4.3上有一个方法(我删除了不重要的部分):

但是这个方法是在grails托管类之外的线程中运行的(我不太确定我在这里说的是否有意义)。关键是过了一段时间,它给了我:

org.apache.tomcat.jdbc.pool.PoolExhaustedException: [http-bio-8080-exec-254] Timeout: Pool empty.

更改max接头并不能解决泄漏问题。我应该对grails做些什么来自动关闭它,还是有其他方法来解决这个问题?

看看这些链接,我想它们可能会帮助您解决问题

谢谢

[更新]

问题与连接池泄漏问题有关。如果没有显式关闭连接,则在事务上下文之外使用GroovySQL会泄漏连接(GRAILS-5454修复了事务上下文中的问题,但问题仍然存在于事务之外)。 看看这些链接,我想它们可能会帮助你解决问题。这个问题已经在Grails2.4.4中得到了解决


谢谢。

看看这些链接,我想它们可能会帮助您解决问题

谢谢

[更新]

问题与连接池泄漏问题有关。如果没有显式关闭连接,则在事务上下文之外使用GroovySQL会泄漏连接(GRAILS-5454修复了事务上下文中的问题,但问题仍然存在于事务之外)。 看看这些链接,我想它们可能会帮助你解决问题。这个问题已经在Grails2.4.4中得到了解决


谢谢。

请分享您的DataSource.groovy。我想查看其中的设置。我可以@Anshul,但我认为除了maxActive=50、minIdle=5、maxIdle=25之外,这与它没有任何关系。但这不是问题所在。。。问题是连接没有关闭并且保持活动状态。请共享您的DataSource.groovy。我想查看其中的设置。我可以@Anshul,但我认为除了maxActive=50、minIdle=5、maxIdle=25之外,这与它没有任何关系。但这不是问题所在。。。问题是连接没有关闭并保持活动状态。链接已断开,这不符合answer@NoIdeaForName-链接被破坏是因为grails jira已经迁移到Git,我有一些原因更新了链接。Thankslinks已损坏,这不符合answer@NoIdeaForName-链接被破坏是因为grails jira已经迁移到Git,我有一些原因更新了链接。谢谢
org.apache.tomcat.jdbc.pool.PoolExhaustedException: [http-bio-8080-exec-254] Timeout: Pool empty.