hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "yair ogen (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HTTPCLIENT-1583) Code to release expired connections is deprecated
Date Tue, 25 Nov 2014 07:37:12 GMT
yair ogen created HTTPCLIENT-1583:

             Summary: Code to release expired connections is deprecated
                 Key: HTTPCLIENT-1583
                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1583
             Project: HttpComponents HttpClient
          Issue Type: Bug
    Affects Versions: 4.3.5
            Reporter: yair ogen

In the tutorial:
http://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html, section 2.5 Connection
eviction policy - you explain how to clean-up connections. Although I can argue against the
design as without this if server closes connections, my client gets many sockets stuck on
CLOSE_WAIT - adding this thread solves the CLOSE_WAIT issue. 

However, I don't understand why you don't do this yourself if keep-alive is set. I would expect
the library to support such a thread. In the meanwhile, it seems that if I use the default
connection manager, I can't use non-deprecated code to call :

connMgr.closeIdleConnections(30, TimeUnit.SECONDS);

This is because the only exposed API to get the default pooling connection manager is by calling:

httpClient.getConnectionManager(), which is deprecated. Javadoc suggests to go to the builder
(which I do use but not for creating connection pool as the default is good enough for me)
which is useless.

So - how should one acquire a reference to the connection manager?

This message was sent by Atlassian JIRA

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

View raw message