I am using tomcat connection pool (tomcat 7) in my application (java application) to connect to a remote Oracle DB on an Azure machine. My connection pool configuration is as follow:
PoolProperties p = new PoolProperties(); p.setUrl(connString); p.setUsername(user); p.setPassword(password); p.setDriverClassName("oracle.jdbc.OracleDriver"); p.setValidationQuery("SELECT 1 from dual"); p.setValidationInterval(1 * 60000/2); p.setTimeBetweenEvictionRunsMillis(1 * 60000/2); p.setTestOnBorrow(true); p.setTestWhileIdle(true); p.setMinIdle(10); p.setInitialSize(10); However looking at the capture file, I see that the connections are not checked every 30 seconds as I expected. One connection is checked correctly, the others are checked after 3 times the configuration (180 second). then again only some of the connections are checked and after a while it seems to stable on twice the configuration period (every 60 seconds). I tested it with different configured time and different pool size, all had a instability period in which each time only part of the connections were checked and eventually it stabled on checks of all the connections every twice the configured time. What am I missing? Thanks, Nir