HTTPCLIENT-2170: Classic protocol layer no longer releases the underlying connection back to the pool prematurely while the NTLM handshake is still ongoing

This commit is contained in:
Oleg Kalnichevski 2021-08-19 15:29:39 +02:00
parent e518d8db9c
commit 5164a4e7b4
2 changed files with 2 additions and 3 deletions

View File

@ -102,8 +102,6 @@ public final class MainClientExec implements ExecChainHandler {
LOG.debug("{} executing {}", exchangeId, new RequestLine(request));
}
try {
RequestEntityProxy.enhance(request);
final ClassicHttpResponse response = execRuntime.execute(exchangeId, request, context);
Object userToken = context.getUserToken();
@ -136,7 +134,6 @@ public final class MainClientExec implements ExecChainHandler {
execRuntime.releaseEndpoint();
return new CloseableHttpResponse(response, null);
}
ResponseEntityProxy.enhance(response, execRuntime);
return new CloseableHttpResponse(response, execRuntime);
} catch (final ConnectionShutdownException ex) {
final InterruptedIOException ioex = new InterruptedIOException(

View File

@ -140,6 +140,7 @@ public final class ProtocolExec implements ExecChainHandler {
}
}
RequestEntityProxy.enhance(request);
for (;;) {
@ -207,6 +208,7 @@ public final class ProtocolExec implements ExecChainHandler {
request.addHeader(it.next());
}
} else {
ResponseEntityProxy.enhance(response, execRuntime);
return response;
}
}