Dear All,

I tried to create a new BasicDataSource and encountered such error

java.sql.SQLException: Cannot create PoolableConnectionFactory (isValid()
returned false)

this is caused by this method in the PoolableConnection

  public void  
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>validate(String
<http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7u40-b43/java/lang/String.java#String>
sql, int timeout) throws SQLException
<http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7u40-b43/java/sql/SQLException.java#SQLException>
{

275 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#275>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

        if (_fastFailValidation
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#PoolableConnection.0_fastFailValidation>
&& _fatalSqlExceptionThrown
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#PoolableConnection.0_fatalSqlExceptionThrown>)
{

276 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#276>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

            throw new SQLException
<http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7u40-b43/java/sql/SQLException.java#SQLException>(Utils.getMessage
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/Utils.java#Utils.getMessage%28java.lang.String%29>("poolableConnection.validate.fastFail"));

277 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#277>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

        }

278 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#278>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

279 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#279>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

        if (sql == null || sql.length
<http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7u40-b43/java/lang/String.java#String.length%28%29>()
== 0) {

280 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#280>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

            if (timeout < 0) {

281 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#281>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

                timeout = 0;

282 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#282>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

            }

283 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#283>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

            if (!isValid
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/DelegatingConnection.java#DelegatingConnection.isValid%28int%29>(timeout))
{

284 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#284>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

                throw new SQLException
<http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7u40-b43/java/sql/SQLException.java#SQLException>("isValid()
returned false");

285 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#285>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

            }

286 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#286>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

            return;

287 
<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#287>

<http://grepcode.com/file/repo1.maven.org/maven2/org.apache.commons/commons-dbcp2/2.1/org/apache/commons/dbcp2/PoolableConnection.java#>

        }


problem here is : i have not set any timeout with the
setValidationQueryTimeout, but the error appears.


I also do not encounter such error in my tomcat 7 runtime.


Could you guys give some hints? the expectation is of course to
eliminate such error


Thank You beforehand.


Roy

Reply via email to