Saturday, April 25, 2009

weblogic.jdbc.extensions.ConnectionDeadSQLException: weblogic.common.resourcepool.ResourceDeadException

weblogic.jdbc.extensions.ConnectionDeadSQLException: weblogic.common.resourcepool.ResourceDeadException


MisfireHandler: Error handling misfires: Failed to obtain DB connection
from data source 'soaNonManagedDS': java.sql.SQLException: 
Could notretrieve datasource via JNDI url 'jdbc/SOALocalTxDataSource' 
weblogic.jdbc.extensions.ConnectionDeadSQLException: 
weblogic.common.resourcepool.ResourceDeadException: 
0:weblogic.common.ResourceException: Could not create pool connection. 
The DBMS driver exception was: Socket read timed out[[org.quartz.JobPersistenceException: 
Failed to obtain DB connection from data source 'soaNonManagedDS': 
java.sql.SQLException: Could not retrieve datasource via JNDI url 
'jdbc/SOALocalTxDataSource' weblogic.jdbc.extensions.ConnectionDeadSQLException: 
weblogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.ResourceException: 
Could not create pool connection. The DBMS driver exception was: Socket read timed out 
[See nested exception: java.sql.SQLException: Could not retrieve datasource via JNDI 
url 'jdbc/SOALocalTxDataSource' weblogic.jdbc.extensions.ConnectionDeadSQLException: 
weblogic.common.resourcepool.ResourceDeadException: 0:weblogic.common.ResourceException: 
Could not create pool connection. The DBMS driver exception was: Socket read timed out] 
at org.quartz.impl.jdbcjobstore.JobStoreCMT.getNonManagedTXConnection(JobStoreCMT.java:167) 
at org.quartz.impl.jdbcjobstore.JobStoreSupport.doRecoverMisfires(JobStoreSupport.java:3011) 
at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.manage(JobStoreSupport.java:3789) 
at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.run(JobStoreSupport.java:3809)


The above exception comes while reserved connection test started by application server while all connections are used by application. In general, we can stop the Application server test on connection, if we are running heavy load application. In Application console, we have to set Connection Pool param "test-connections-on-reserve" as false


Sample:

<jdbc-connection-pool-params> 
 <initial-capacity>0</initial-capacity>
 <max-capacity>50</max-capacity>    
 <capacity-increment>1</capacity-increment>    
 <connection-creation-retry-frequency-seconds>10</connection-creation-retry-frequency-seconds>    
 <test-frequency-seconds>300</test-frequency-seconds>    
 <strong><test-connections-on-reserve>false</test-connections-on-reserve> </strong>   
 <test-table-name>SQL SELECT 1 FROM DUAL</test-table-name>    
 <seconds-to-trust-an-idle-pool-connection>0</seconds-to-trust-an-idle-pool-connection>
</jdbc-connection-pool-params>
Read more about unexpected exception while enlisting

No comments:

Post a Comment

Recent Posts

Unix Commands | List all My Posts

Texts

This blog intended to share the knowledge and contribute to JAVA Community such a way that by providing samples and pointing right documents/webpages. We try to give our knowledege level best and no guarantee can be claimed on truth. Copyright and Terms of Policy refer blogspot.com