Uploaded image for project: 'Axis2'
  1. Axis2
  2. AXIS2-5811

org.apache.axis2.AxisFault: Timeout waiting for connection from pool

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Duplicate
    • 1.7.3
    • None
    • TCP transport
    • None

    Description

      Using Axis library 1.7.3 with HttpClient 4.4.1, after 200 request the library throw a TimeoutException from connection pool:

      Caused by: org.apache.axis2.AxisFault: Timeout waiting for connection from pool
      at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430) ~[axis2-kernel-1.7.3.jar:1.7.3]
      at org.apache.axis2.transport.http.impl.httpclient4.HTTPSenderImpl.sendViaPost(HTTPSenderImpl.java:242) ~[axis2-transport-http-1.7.3.jar:1.7.3]
      at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:121) ~[axis2-transport-http-1.7.3.jar:1.7.3]
      at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:403) ~[axis2-transport-http-1.7.3.jar:1.7.3]
      at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:234) ~[axis2-transport-http-1.7.3.jar:1.7.3]
      at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:431) ~[axis2-kernel-1.7.3.jar:1.7.3]
      at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:399) ~[axis2-kernel-1.7.3.jar:1.7.3]
      at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:225) ~[axis2-kernel-1.7.3.jar:1.7.3]
      at org.apache.axis2.client.OperationClient.execute(OperationClient.java:150) ~[axis2-kernel-1.7.3.jar:1.7.3]
      ....
      Caused by: org.apache.http.conn.ConnectionPoolTimeoutException: Timeout waiting for connection from pool
      at org.apache.http.impl.conn.PoolingClientConnectionManager.leaseConnection(PoolingClientConnectionManager.java:226) ~[httpclient-4.4.1.jar:4.4.1]
      at org.apache.http.impl.conn.PoolingClientConnectionManager$1.getConnection(PoolingClientConnectionManager.java:195) ~[httpclient-4.4.1.jar:4.4.1]
      at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:423) ~[httpclient-4.4.1.jar:4.4.1]
      at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:882) ~[httpclient-4.4.1.jar:4.4.1]
      at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:71) ~[httpclient-4.4.1.jar:4.4.1]
      at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55) ~[httpclient-4.4.1.jar:4.4.1]
      at org.apache.axis2.transport.http.impl.httpclient4.HTTPSenderImpl.executeMethod(HTTPSenderImpl.java:873) ~[axis2-transport-http-1.7.3.jar:1.7.3]
      at org.apache.axis2.transport.http.impl.httpclient4.HTTPSenderImpl.sendViaPost(HTTPSenderImpl.java:238) ~[axis2-transport-http-1.7.3.jar:1.7.3]
      ... 15 common frames omitted

      I think che connection pool used by library don't work correctly, stuck the connections to 200 ???

      Steps To reproduce:

      1 Generate client for windows web service like (http://www.webservicex.com/globalweather.asmx)
      2 Configure axis2 to use HTTPClient4TransportSender
      3 Make 200 web service request

      Attachments

        1. axis2_HttpClient4.xml
          15 kB
          Claudio Degioanni
        2. clean_log.log
          66 kB
          Claudio Degioanni

        Issue Links

          Activity

            People

              Unassigned Unassigned
              claudiodegio Claudio Degioanni
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: