1 Reply Latest reply on Jul 8, 2002 1:54 PM by Matt Cliff

    JBoss 2.4.6 Connection Pool

    Iulian Radulescu Newbie

      I am using 2.4.6 version of JBoss and I encountered the following problem : When a client does a serie of processings over the DB, the app server opens a JDBC connection almost for every function call : every finder, every create or update function. So, after a while, the connection pool is filled, and the server crashes.I used the same configuration from JBoss 2.4.4, where I did not experienced this problem. If you have any idea ...
      Thanks in advance.

      PS: This is the configuration for connecion pool. I use an Oracle DB.


        • 1. Re: JBoss 2.4.6 Connection Pool
          Matt Cliff Newbie

          I am having a similar problem, we are using MySQL (3.23) with JBoss 2.4.4 everything worked ok.

          It does not look like there are any additional connections being established at the database.

          I have a similar application where a typical page load will constitute 10 or more DB connections being established. There reaches a point (about 100 connections having been made overall) when the server machine hits a very high processor load, then eventually the server process dies.

          There do not seem to be any additional connections made to the database. Below is the DataSource MBean configuration, which was not modified in the 2.4.4 to 2.4.6 upgrade.

          Any help would be appreciated. (I am hypothesizing that the connection pool in the JVM "thinks" that it is running out but there does not seem to be the call to the DBMS).

          <mbean code="org.jboss.jdbc.XADataSourceLoader" name="DefaultDomain:service=XADataSource,name=MySqlDS">
          <attribute name="PoolName">MySqlDS</attribute>
          <attribute name="DataSourceClass">org.jboss.pool.jdbc.xa.wrapper.XADataSourceImpl</attribute>
          <attribute name="Properties"></attribute>
          <attribute name="URL">jdbc:mysql://lisa:3306/dcbs</attribute>
          <attribute name="JDBCUser">cyb</attribute>
          <attribute name="Password">cyb</attribute>
          <attribute name="MinSize">4</attribute>
          <attribute name="MaxSize">20</attribute>
          <attribute name="GCMinIdleTime">1200000</attribute> <!-- 20 minutes -->
          <attribute name="GCEnabled">true</attribute>
          <attribute name="GCInterval">1200000</attribute> <!-- 20 minutes -->
          <attribute name="InvalidateOnError">false</attribute> <!-- if true then SQL errors will invalidate the connection -->
          <attribute name="TimestampUsed">true</attribute> <!-- important for garbage collection -->
          <attribute name="Blocking">true</attribute>
          <attribute name="BlockingTimeout">300000</attribute> <!-- wait for 5 minutes to obtain a free connection -->
          <attribute name="IdleTimeout">1800000</attribute> <!-- connection idle timout at 30 minutes -->
          <attribute name="IdleTimeoutEnabled">true</attribute> <!-- shrinks the connection pool -->
          <attribute name="MaxIdleTimeoutPercent">1.0</attribute>
          <attribute name="LoggingEnabled">false</attribute>