[
https://issues.apache.org/jira/browse/HTTPCLIENT-1187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Oleg Kalnichevski resolved HTTPCLIENT-1187.
-------------------------------------------
Resolution: Fixed
Fix Version/s: 4.2 Beta2
Fix committed to SVN trunk and the 4.1.x branch. Please re-test.
Oleg
> CachingHttpClient - Erroneous revalidation response date leads to a response
> not being properly consumed / connection held
> --------------------------------------------------------------------------------------------------------------------------
>
> Key: HTTPCLIENT-1187
> URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1187
> Project: HttpComponents HttpClient
> Issue Type: Bug
> Components: Cache
> Affects Versions: 4.1.3
> Reporter: James Todd
> Fix For: 4.2 Beta2
>
>
> We have experienced a problem with CachingHttpClient when we are connecting
> to a server cluster with times out of sync, and therefore providing response
> dates which are out of sync.
> This causes a problem because during cache revalidation, if it gets a
> revalidation response which is deemed "too old" it will make a second
> unconditional request (as per the spec i believe). The issue is that the
> first response isn't properly consumed so that the connection remains open.
> Its file handle remains and the connection is never released back to the
> pool, so the pool eventually fills up.
> This can be fixed by ensuring the first response is consumed, e.g. replace
> CachingHttpClient line 717 with -
> if (respDate.before(entryDate)) {
> try {
> // MUST consume the entity if this response will not be used so
> that connection is released
> EntityUtils.consume(backendResponse.getEntity());
> }
> catch (IOException e) {
> log.warn("Problem consuming old validation response");
> }
> return true;
> }
> The issue can be reproduced / tested using a HttpResponseInterceptor that
> randomly changes the Date header (and hitting a page that both allows
> revalidation and changes content)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]