Spring事务挂起iptables命令

时间:2014-10-17 03:24:08

标签: spring connection iptables pool

作为我们进程的错误处理的一部分,我们尝试使用以下iptables命令禁用进程与数据库机器侦听器端口之间的通信

 iptables -A INPUT -p tcp --destination-port <database-listener-port> -s <database-host-ip> -j DROP

然而,这导致进程陷入来自AbstractPlatformTransactionManager :: getTransaction的以下日志

 DEBUG:  Creating new transaction with name [<Transaction-Name>]: PROPAGATION_REQUIRED,ISOLATION_DEFAULT; ''

启用它,稍后使用&#39; iptables -F&#39;使交易“恢复生机”。再次,正在检索连接并成功结束。

我们最关心的事实是所有连接超时配置都没有被激活(?)因此我们就这样挂起,我们的连接池默认值(见下文)都没有这样的无限超时(我们也尝试给出一个小的默认值abandonedConnectionTimeout但它没有帮助,我们返回了我们认为应该在生产中的真正默认值)我们期望应该执行某种取消操作。

abandonedConnectionTimeout=0
acquireIncrement=5
acquireRetryAttempts=3
checkoutTimeout=5000
idleConnectionTestPeriod=60
inactivityTimeout=1800
inactivityTimeoutforNonUsedConnection=1800
validateConnection=true

感谢您对此事的任何帮助。

0 个答案:

没有答案