2 Replies Latest reply on Apr 30, 2007 2:15 AM by mandarjboss

    Is it a JBoss Bug ...?

    mandarjboss

      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?