summaryrefslogtreecommitdiffstats
path: root/container-core
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2022-06-20 16:51:19 +0200
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2022-06-20 16:51:19 +0200
commit5be97ae54af7d49f2f8ca17f31ed15cfba694041 (patch)
tree7a9c85ccb49d1be9384418059f9aba8578d85554 /container-core
parent9537d76e74a7726870fde9431541cd53ab11b4a0 (diff)
Set timeouts on request (in addition to client)
Diffstat (limited to 'container-core')
-rw-r--r--container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HealthCheckProxyHandler.java27
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;