Hi
I am using a custom JCA Resource Adapter for Siebel.We are running our application on
JBoss 4.0.5(Production Release).
We are experiencing a Strange problem of connection pooling.Here is the simulation of the
problem
1) We have written a servlet that obtains a "valid" Siebel connection from the
pool.
2) It performs "n" number of queries with the same connection object(in a for
loop).
3) Suddenly a "NullpointerException" is thrown during the execution.Going to
the root cause of the exception we have analysed that the
"ManagedConnection(SiebelManagedConnection)" object associated with the
connection(SiebelConnection) handle becomes null.
4) Digging into the JCA code we found that such an even can take place only if you call a
"close" method on the connection object.
5) However the "for loop" or the code that is called from the for loop does not
give any evidence of "close" method being called on the connection object.
6) So we are quite sure that our application code is not closing the connection in
between of the execution.
7) Is JBoss's connection pooling mechanism responsible for this ?
8) To make the problem more strange the "NullPointerException" is thrown only
when we give 20 concurrent requests to the servlet.
The "max-pool-size" is set to "18".But the blocking time-out is set
to 30Sec.The for loop will not take more than 10Sec to execute.
Even if the connections in the pool gets exhausted, we should get the exception message
like "No ManagedConnection Available" in the beginning of the execution.JBoss
does throw an exception in the situation like this.
But the server should not do anything with the connection object that is already held by
the calling thread.
Can anyone help me in resolving the issue?
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4041615#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...