Index: src/main/java/org/apache/http/impl/client/cache/CachingHttpClient.java =================================================================== --- src/main/java/org/apache/http/impl/client/cache/CachingHttpClient.java (revision 1195774) +++ src/main/java/org/apache/http/impl/client/cache/CachingHttpClient.java (working copy) @@ -63,6 +63,7 @@ import org.apache.http.message.BasicHttpResponse; import org.apache.http.params.HttpParams; import org.apache.http.protocol.HttpContext; +import org.apache.http.util.EntityUtils; import org.apache.http.util.VersionInfo; /** @@ -821,6 +822,8 @@ && validityPolicy.mayReturnStaleIfError(request, cacheEntry, responseDate)) { final HttpResponse cachedResponse = responseGenerator.generateResponse(cacheEntry); cachedResponse.addHeader(HeaderConstants.WARNING, "110 localhost \"Response is stale\""); + //consume backendResponse to close open connection + EntityUtils.consume(backendResponse.getEntity()); return cachedResponse; }