我在版本 2.2.4 的 grails 应用程序上使用了 jdbcpool 7.0.47。当我检查线程转储时,它显示许多“MySQL 语句取消计时器”处于等待状态。我也尝试将 jdbc 连接器移动到 tomcat/lib,但它开始给 mysql 带来一些日期问题。所以任何其他方式来杀死这些线程
问问题
3013 次
2 回答
1
好的,评估连接池的所有参数, validationQueryTimeOut似乎导致了所有这些问题。删除该参数后一切正常。现在我的工作连接池属性是这样的
properties {
initialSize=5
maxActive=50
minIdle=5
maxIdle=25
maxWait = 10000
maxAge = 10 * 60000
timeBetweenEvictionRunsMillis=5000
minEvictableIdleTimeMillis=60000
validationQuery="SELECT 1"
validationInterval=15000
testWhileIdle=true
testOnBorrow=true
testOnReturn=false
jdbcInterceptors = "ConnectionState"
defaultTransactionIsolation = java.sql.Connection.TRANSACTION_READ_COMMITTED
}
于 2014-08-16T07:29:11.833 回答
-1
我的程序不使用池,我也遇到过这个问题。
我的解决方法是将 MySQL 连接器从 5.1.6 更新到 5.1.35,并在程序结束时关闭 SessionFactory,我没有这样做。
于 2015-04-26T08:27:37.137 回答