S2JDBCでコネクションプーリング死活監視&再接続を行う方法
PostgresqlでDB再起動時にコネクションが残る現象が発生したので、死活監視して再接続を試みる方法を検証。
jdbc.diconのvalidationQuery、validationIntervalを使用することで良い感じで回避できた。
監視クエリはとりあえず「select 1」としている。
●jdbc.dicon
<component name="connectionPool" class="org.seasar.extension.dbcp.impl.ConnectionPoolImpl"> <property name="timeout">600</property> <property name="maxPoolSize">20</property> <property name="allowLocalTx">true</property> <property name="validationQuery">"select 1"</property> <property name="validationInterval">10000</property> <destroyMethod name="close"/> </component>