5 Replies Latest reply on Jun 16, 2014 2:05 PM by jesper.pedersen

    Performance improvement to default mcp.

    whitingjr

      Hi,

      I've been looking at the default mcp with the aim of improving performance. It's the class org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool

       

      By re-jigging some code in the returnConnection method I've been able to improve response times on average by 15%. Using a jee benchmark that loads a system using the JCA (IronJacamar) to manage JMS and datastore resources.

       

      There are three changes:

       

      a) Moved the condition check on the 'kill' variable outside the synchronized block.

      b) Moved the call to ConnectionListener.used() outside the synchronized block.

      c) Removed the assignment of a ConnectionListener local variable.

       

      Running the testsuite for the core module didn't show any test failures.

       

      Which code branch should I apply the changes and then share for you to review them ?

       

      Regards,

      Jeremy