hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oleg Kalnichevski (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HTTPCLIENT-814) MultiThreadedHttpConnectionManager deadlocks when reusing socket connections
Date Thu, 10 Sep 2009 08:03:57 GMT

    [ https://issues.apache.org/jira/browse/HTTPCLIENT-814?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12753488#action_12753488
] 

Oleg Kalnichevski commented on HTTPCLIENT-814:
----------------------------------------------

There has been only one confirmed case of HttpClient leaking connections [1]. The bug affects
tunneled (proxied) SSL connections only. This bug has been fixed in the 3.x branch [2], but
the fix has never been released with an official release. You can get the latest code snapshot
from the SVN repository, build it and see if that fixes the issue for you. Please note there
will be NO new releases off the 3.x branch. Users are strongly advised to upgrade to 4.0

Oleg

[1] https://issues.apache.org/jira/browse/HTTPCLIENT-848
[2] http://svn.apache.org/repos/asf/httpcomponents/oac.hc3x/trunk/

> 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: Future
>
>
> 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.
> Usage:
> 1) The HttPClient is being used to handle connections to another server from our Web
Application.  So far, for every request our Web App 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 requests 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 HttpClient instances per
request, and we shutdown the Connection Manager once we complete the transaction with the
other server.
> The next work around we will be trying is to call the closeIdleConnections, this solution
will remove the connections that can potentially 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 issue.

-- 
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


Mime
View raw message