diff options
author | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2022-06-20 16:51:19 +0200 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2022-06-20 16:51:19 +0200 |
commit | 5be97ae54af7d49f2f8ca17f31ed15cfba694041 (patch) | |
tree | 7a9c85ccb49d1be9384418059f9aba8578d85554 /container-core/src/main/java | |
parent | 9537d76e74a7726870fde9431541cd53ab11b4a0 (diff) |
Set timeouts on request (in addition to client)
Diffstat (limited to 'container-core/src/main/java')
-rw-r--r-- | container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HealthCheckProxyHandler.java | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HealthCheckProxyHandler.java b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HealthCheckProxyHandler.java index 97ea30b3867..ae2871e266d 100644 --- a/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HealthCheckProxyHandler.java +++ b/container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HealthCheckProxyHandler.java @@ -33,6 +33,7 @@ import java.util.Map; import java.util.Optional; import java.util.concurrent.Executor; import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; @@ -182,6 +183,8 @@ class HealthCheckProxyHandler extends HandlerWrapper { private StatusResponse getStatusResponse() { try { var request = client().newRequest("https://localhost:" + port + HEALTH_CHECK_PATH); + request.timeout(timeout.toMillis(), TimeUnit.MILLISECONDS); + request.idleTimeout(timeout.toMillis(), TimeUnit.MILLISECONDS); if (proxyProtocol) { request.tag(new ProxyProtocolClientConnectionFactory.V1.Tag()); } @@ -204,18 +207,18 @@ class HealthCheckProxyHandler extends HandlerWrapper { synchronized (this) { if (client == null) { int timeoutMillis = (int) timeout.toMillis(); - SslContextFactory.Client clientSsl = new SslContextFactory.Client(); - clientSsl.setHostnameVerifier((__, ___) -> true); - clientSsl.setSslContext(getSslContext(serverSsl)); - HttpClient client = new HttpClient(clientSsl); - client.setMaxConnectionsPerDestination(4); - client.setConnectTimeout(timeoutMillis); - client.setStopTimeout(timeoutMillis); - client.setIdleTimeout(timeoutMillis); - client.setUserAgentField(new HttpField(HttpHeader.USER_AGENT, "health-check-proxy-client")); - client.start(); - this.client = client; - } + SslContextFactory.Client clientSsl = new SslContextFactory.Client(); + clientSsl.setHostnameVerifier((__, ___) -> true); + clientSsl.setSslContext(getSslContext(serverSsl)); + HttpClient client = new HttpClient(clientSsl); + client.setMaxConnectionsPerDestination(4); + client.setConnectTimeout(timeoutMillis); + client.setStopTimeout(timeoutMillis); + client.setIdleTimeout(timeoutMillis); + client.setUserAgentField(new HttpField(HttpHeader.USER_AGENT, "health-check-proxy-client")); + client.start(); + this.client = client; + } } } return client; |