This is with respect to the code at https://github.com/searchbox-io/Jest/blob/master/jest/src/main/java/io/searchbox/client/http/JestHttpClient.java
In this code snippet
public <T extends JestResult> T execute(Action<T> clientRequest) throws IOException {
HttpUriRequest request = prepareRequest(clientRequest);
HttpResponse response = httpClient.execute(request);
return deserializeResponse(response, request, clientRequest);
}
private <T extends JestResult> T deserializeResponse(HttpResponse response, Action<T> clientRequest) throws IOException {
StatusLine statusLine = response.getStatusLine();
return clientRequest.createNewElasticSearchResult(
response.getEntity() == null ? null : EntityUtils.toString(response.getEntity()),
statusLine.getStatusCode(),
statusLine.getReasonPhrase(),
gson
);
}
After we receive the response should we not be doing something like
response.close()
This particular stack overflow thread HttpClient 4.0.1 - how to release connection? mentions about consuming the response entity using
EntityUtils.consume(HttpEntity)
Would just doing EntityUtils.toString(response.getEntity())
suffice ?