我有一个 Grails 应用程序通过域类与 ingres 数据库通信。当数据库崩溃或我在应用程序运行时重新启动它时,我得到一个异常:
| Error Caused by: java.sql.SQLTransactionRollbackException: Connection failed.
然后,当我访问数据库时,这个异常每次都会永远出现,尽管数据库从重新启动/崩溃中再次返回。
如何强制 Grails / Hibernate 重新创建连接或将其设置为自动重新创建。
这是我的配置:
dataSource {
dbCreate = 'validate'
url = "jdbc:ingres://xxx.xxx.xxx.xxx:II7/test"
driverClassName = "com.ingres.jdbc.IngresDriver"
username = "ingres"
password = "ingres"
jmxEnabled = true
initialSize = 5
maxActive = 50
minIdle = 5
maxIdle = 25
maxWait = 10000
maxAge = 10 * 60000
timeBetweenEvictionRunsMillis = 5000
minEvictableIdleTimeMillis = 60000
validationQuery = "SELECT 1"
validationQueryTimeout = 3
validationInterval = 15000
testOnBorrow = true
testWhileIdle = true
testOnReturn = true
jdbcInterceptors = "ConnectionState"
defaultTransactionIsolation = java.sql.Connection.TRANSACTION_READ_COMMITTED
}