Commons Dbcp
  1. Commons Dbcp
  2. DBCP-205

Intermittently getting "Could not retrieve connection info from pool" when under load

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.2.2
    • Fix Version/s: 1.3
    • Labels:
      None
    • Environment:

      JRE 1.4.2_03, commons_dbcp20061206, commons-pool-1.2, Microsoft SQL Server 2005 JDBC Driver (sqljdbc_1.0.809.102)

      Description

      I have a Tomcat servlet that uses a connection pool with the following settings:

      MaxActive=30
      MaxIdle=3
      MaxWait=50000 milliseconds
      IdleTimeOut=3600 seconds
      LoginTimeOut=100 seconds
      TimeBetweenEvictionRunsMills=-1

      Under load, I get the following exception:

      org.apache.commons.dbcp.SQLNestedException: Could not retrieve connection info from pool
      at org.apache.commons.dbcp.datasources.SharedPoolDataSource.getPooledConnectionAndInfo(SharedPoolDataSource.java:171)
      at org.apache.commons.dbcp.datasources.InstanceKeyDataSource.getConnection(InstanceKeyDataSource.java:662)
      at org.apache.commons.dbcp.datasources.InstanceKeyDataSource.getConnection(InstanceKeyDataSource.java:646)

      Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host has failed. java.net.BindException: Address already in use: connect
      at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(Unknown Source)
      at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(Unknown Source)
      at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(Unknown Source)
      at java.sql.DriverManager.getConnection(Unknown Source)
      at java.sql.DriverManager.getConnection(Unknown Source)
      at org.apache.commons.dbcp.cpdsadapter.DriverAdapterCPDS.getPooledConnection(DriverAdapterCPDS.java:177)
      at org.apache.commons.dbcp.cpdsadapter.DriverAdapterCPDS.getPooledConnection(DriverAdapterCPDS.java:132)
      at org.apache.commons.dbcp.datasources.KeyedCPDSConnectionFactory.makeObject(KeyedCPDSConnectionFactory.java:158)
      at org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:747)
      at org.apache.commons.dbcp.datasources.SharedPoolDataSource.getPooledConnectionAndInfo(SharedPoolDataSource.java:167)

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Unassigned
              Reporter:
              Rida Ligurs
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development