This is an automated email from the ASF dual-hosted git repository.
cbickel pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-openwhisk.git
The following commit(s) were added to refs/heads/master by this push:
new fc5798b Revert hardening of HttpUtils. (#3842)
fc5798b is described below
commit fc5798bb299e1f993449472cecbb55ffce1ebe62
Author: Markus Thömmes <[email protected]>
AuthorDate: Wed Jul 4 16:43:10 2018 +0200
Revert hardening of HttpUtils. (#3842)
The changes introduced here are subject so latency and stability problems
in larger environments. Especially the impact of consuming the whole entity
needs to be carefully asserted and verified before getting it back in.
---
.../src/main/scala/whisk/core/containerpool/HttpUtils.scala | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git
a/common/scala/src/main/scala/whisk/core/containerpool/HttpUtils.scala
b/common/scala/src/main/scala/whisk/core/containerpool/HttpUtils.scala
index c5faab4..bf95441 100644
--- a/common/scala/src/main/scala/whisk/core/containerpool/HttpUtils.scala
+++ b/common/scala/src/main/scala/whisk/core/containerpool/HttpUtils.scala
@@ -34,7 +34,7 @@ import org.apache.http.HttpHeaders
import org.apache.http.client.config.RequestConfig
import org.apache.http.client.methods.HttpPost
import org.apache.http.client.methods.HttpRequestBase
-import org.apache.http.client.utils.{HttpClientUtils, URIBuilder}
+import org.apache.http.client.utils.URIBuilder
import org.apache.http.conn.HttpHostConnectException
import org.apache.http.entity.StringEntity
import org.apache.http.impl.client.HttpClientBuilder
@@ -121,8 +121,7 @@ protected class HttpUtils(hostname: String, timeout:
FiniteDuration, maxResponse
Left(NoResponseReceived())
}
- // Fully consumes the entity and closes the response
- HttpClientUtils.closeQuietly(response)
+ response.close()
containerResponse
} recoverWith {
// The route to target socket as well as the target socket itself may
need some time to be available -
@@ -165,7 +164,7 @@ protected class HttpUtils(hostname: String, timeout:
FiniteDuration, maxResponse
private val connection = HttpClientBuilder.create
.setDefaultRequestConfig(httpconfig)
- .setConnectionManager({
+ .setConnectionManager(if (maxConcurrent > 1) {
// A PoolingHttpClientConnectionManager is the default when not
specifying any ConnectionManager.
// The PoolingHttpClientConnectionManager has the benefit of actively
checking if a connection has become stale,
// which is very important because pausing/resuming containers can cause
a connection to become silently broken.
@@ -179,7 +178,7 @@ protected class HttpUtils(hostname: String, timeout:
FiniteDuration, maxResponse
cm.setDefaultMaxPerRoute(maxConcurrent)
cm.setMaxTotal(maxConcurrent)
cm
- })
+ } else null)
.useSystemProperties()
.disableAutomaticRetries()
.build