diff options
author | Bjørn Christian Seime <bjorncs@yahooinc.com> | 2022-06-30 17:10:38 +0200 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@yahooinc.com> | 2022-06-30 17:10:38 +0200 |
commit | 70b1a91a7346a23a35545b44d3a9d5928a8e5464 (patch) | |
tree | 440d0769903411499350b9a28ae39871cc9555d0 /container-core | |
parent | b2de969114c654efe9d2dbf24c0e59a89cc37f89 (diff) |
Shutdown executor on doStop()
Diffstat (limited to 'container-core')
-rw-r--r-- | container-core/src/main/java/com/yahoo/jdisc/http/server/jetty/HealthCheckProxyHandler.java | 8 |
1 files changed, 6 insertions, 2 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 fe0d4c80743..9f3a70e3ec5 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,7 +33,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Optional; -import java.util.concurrent.Executor; +import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; @@ -53,7 +53,7 @@ class HealthCheckProxyHandler extends HandlerWrapper { private static final String HEALTH_CHECK_PATH = "/status.html"; - private final Executor executor = Executors.newSingleThreadExecutor(new DaemonThreadFactory("health-check-proxy-client-")); + private final ExecutorService executor = Executors.newSingleThreadExecutor(new DaemonThreadFactory("health-check-proxy-client-")); private final Map<Integer, ProxyTarget> portToProxyTargetMapping; HealthCheckProxyHandler(List<JDiscServerConnector> connectors) { @@ -127,6 +127,10 @@ class HealthCheckProxyHandler extends HandlerWrapper { @Override protected void doStop() throws Exception { + executor.shutdown(); + if (!executor.awaitTermination(10, TimeUnit.SECONDS)) { + log.warning("Failed to shutdown executor in time"); + } for (ProxyTarget target : portToProxyTargetMapping.values()) { target.close(); } |