[jboss-user] [JCA/JBoss] - Re: JBoss Connection Socket usage in error scenarios
vickyk
do-not-reply at jboss.com
Tue Apr 22 01:43:40 EDT 2008
"dkilley" wrote : >
| - Sockets to the secondary DB were just fine, but the SQL level check (like select 1) failed, due a permissions issue. The application is not database critical, so functionality could of continued, however each user would go through this same process, each time a socket would be left open, eventually a starvation of file handles happened.
|
If the match fails the Jboss Pool implementation does call the destroy() on the related ManagedConnection object , the destroy implementation basically closes the SQL connection , have a look at the code
public void destroy() throws ResourceException
| {
| synchronized (stateLock)
| {
| destroyed = true;
| }
|
| cleanup();
| try
| {
| con.close();
| }
| catch (SQLException ignored)
| {
| getLog().trace("Ignored error during close: ", ignored);
| }
| }
http://anonsvn.jboss.org/repos/jbossas/branches/Branch_4_2/connector/src/main/org/jboss/resource/adapter/jdbc/BaseWrapperManagedConnection.java
You can enable the log trace to see if the SQL connection close() in getting called if the match connection fails .
We certainly need more details/evidents to sort this out .
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4145681#4145681
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4145681
More information about the jboss-user
mailing list