1. Geronimo
  2. GERONIMO-4993

Requests for db pool resources will exceed Max Pool Size when EJBNetworkService beans are all busy


    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.1.3, 2.2
    • Fix Version/s: 2.1.5
    • Component/s: None
    • Security Level: public (Regular issues)
    • Labels:
    • Environment:

      Linux and Windows XP


      In production, I have 100 EJBNetworkService threads. It works OK until there's a spike in traffic and all the threads are being used, and the 40 "max pool size" is ignored, and Geronimo makes 100's of DB connections.

      In production, I am using an Oracle DB pool, so the DBAs aren't happy when my servers use up all the available server connections.

      To recreate:

      1. Change config.xml and start Geronimo:
      <module name="org.apache.geronimo.configs/openejb/2.2-SNAPSHOT/car">
      <gbean name="EJBNetworkService">
      <attribute name="port">$

      {OpenEJBPort + PortOffset}

      <attribute name="host">$


      <attribute name="multicastHost">$


      <attribute name="multicastPort">$


      <attribute name="clusterName">$


      <attribute name="threads">5</attribute>

      2. Reconfigure the jdbc/ArchiveDS DB Pool:
      Max Pool Size: 3
      Blocking Timeout: 1000
      Idle Timeout: 1

      3. Install WAR
      4. In web browser, go to http://localhost:8080/PoolTest/PoolTest. Reload it 5 times. Take your time It should be fine, and will give you an error when the pool is maxed.
      5. In JMX Viewer, go to Geronimo MBeans, JCAConnectionManager, and pull up jdbc/ArchiveDS. Note the connection count. Looks good.
      6. Wait for the connection count to return to 0.
      7. In your browser, hold down F5 so the page reloads many times.
      8. Observe the connection count again. It will be over connections.
      9. If you repeat 6-9 you can easily get > 20 connections. I just held F5 for 6 seconds and there are 60 connections.

      I will attach WAR (I don't see an option on this screen).

      1. _PoolTest.war
        4 kB
        Eric Phetteplace
      2. screenshot-1.jpg
        696 kB
        Eric Phetteplace

        Issue Links


          Gavin made changes -
          Link This issue depends upon GERONIMO-5150 [ GERONIMO-5150 ]
          Gavin made changes -
          Link This issue depends on GERONIMO-5150 [ GERONIMO-5150 ]
          Rex Wang made changes -
          Status Open [ 1 ] Closed [ 6 ]
          Resolution Fixed [ 1 ]
          Rex Wang made changes -
          Fix Version/s 2.1.5 [ 12313729 ]
          David Jencks made changes -
          Link This issue depends on GERONIMO-5150 [ GERONIMO-5150 ]
          David Jencks made changes -
          Assignee David Jencks [ djencks ]
          Eric Phetteplace made changes -
          Attachment screenshot-1.jpg [ 12428539 ]
          Eric Phetteplace made changes -
          Field Original Value New Value
          Attachment _PoolTest.war [ 12428538 ]
          Eric Phetteplace created issue -


            • Assignee:
              David Jencks
              Eric Phetteplace
            • Votes:
              0 Vote for this issue
              0 Start watching this issue


              • Created: