Author: rmannibucau
Date: Mon Mar 25 15:00:29 2013
New Revision: 1460697
URL: http://svn.apache.org/r1460697
Log:
avoiding to set testXXX attribute on tomcat jdbc pool if no validation query is
set
Modified:
tomee/tomee/branches/tomee-1.6.0/tomee/tomee-jdbc/src/main/java/org/apache/tomee/jdbc/TomEEDataSourceCreator.java
Modified:
tomee/tomee/branches/tomee-1.6.0/tomee/tomee-jdbc/src/main/java/org/apache/tomee/jdbc/TomEEDataSourceCreator.java
URL:
http://svn.apache.org/viewvc/tomee/tomee/branches/tomee-1.6.0/tomee/tomee-jdbc/src/main/java/org/apache/tomee/jdbc/TomEEDataSourceCreator.java?rev=1460697&r1=1460696&r2=1460697&view=diff
==============================================================================
---
tomee/tomee/branches/tomee-1.6.0/tomee/tomee-jdbc/src/main/java/org/apache/tomee/jdbc/TomEEDataSourceCreator.java
(original)
+++
tomee/tomee/branches/tomee-1.6.0/tomee/tomee-jdbc/src/main/java/org/apache/tomee/jdbc/TomEEDataSourceCreator.java
Mon Mar 25 15:00:29 2013
@@ -231,6 +231,27 @@ public class TomEEDataSourceCreator exte
}
private static PoolConfiguration readOnly(final PoolConfiguration
pool) {
+ // if validationQuery is not filled disable testXXX
+ if (pool.getValidationQuery() == null ||
pool.getValidationQuery().isEmpty()) {
+ if (pool.isTestOnBorrow()) {
+ LOGGER.info("Disabling testOnBorrow since no validation
query is provided");
+ pool.setTestOnBorrow(false);
+ }
+ if (pool.isTestOnConnect()) {
+ LOGGER.info("Disabling testOnConnect since no validation
query is provided");
+ pool.setTestOnConnect(false);
+ }
+ if (pool.isTestOnReturn()) {
+ LOGGER.info("Disabling testOnReturn since no validation
query is provided");
+ pool.setTestOnReturn(false);
+ }
+ if (pool.isTestWhileIdle()) {
+ LOGGER.info("Disabling testWhileIdle since no validation
query is provided");
+ pool.setTestWhileIdle(false);
+ }
+ }
+
+ // prevent overriding of the configuration
return (PoolConfiguration)
Proxy.newProxyInstance(Thread.currentThread().getContextClassLoader(),
CONNECTION_POOL_CLASS, new ReadOnlyConnectionpool(pool));
}