hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Will Franco (JIRA)" <j...@apache.org>
Subject [jira] Created: (HTTPCLIENT-814) MultiThreadedHttpConnectionManager deadlocks when reusing socket connections
Date Fri, 09 Jan 2009 15:05:59 GMT
MultiThreadedHttpConnectionManager deadlocks when reusing socket connections

                 Key: HTTPCLIENT-814
                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-814
             Project: HttpComponents HttpClient
          Issue Type: Bug
          Components: HttpClient
    Affects Versions: 3.1 Final
         Environment: Tomcat 6.18 running on a Windows 2003 server
            Reporter: Will Franco
             Fix For: 3.1.1

During our Load Testing we encountered that the MultiThreadedHttpConnectionManager deadlocks
when reusing socket connections.   These socket connections remain in the pool in a CLOSE_WAIT
state, and the pool is unable to reuse them or create new ones because the maximum number
of connection has already been reached, thus deadlocking.

Let me explain briefly how this library is being used and the temporary work around that we
are using.  However, the correct solution would be to use the connection pool.

1) The HttPClient is being used to handle connections to another server from our Web Application.
 So far, for every request our Web Apps processes we have to make at least one request to
another server using the HttpClient.
2) Our load tester, loads our web app with thousands of request within the first 30 seconds,
and maintains such high volume of requests for at least 24 hours

Work Around:
The current work around we implemented is to have different instances of the HttpClient per
request, and we shutdown the Connection Manager once we complete the transaction with the
other server.

The next work around we will be implementing is to called the closeIdleConnections, this solution
will remove the connections that can pontentialy deadlock the connection manager allowing
it to allocate new ones.

Please email me to willfranco@gmail.com if you need any further information regarding this

Please email me at willfranco@gmail.com if you need further information.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org

View raw message