Github user tillrohrmann commented on a diff in the pull request: https://github.com/apache/flink/pull/4993#discussion_r150221458 --- Diff: flink-queryable-state/flink-queryable-state-client-java/src/main/java/org/apache/flink/queryablestate/client/QueryableStateClient.java --- @@ -108,9 +110,35 @@ public QueryableStateClient(final InetAddress remoteAddress, final int remotePor new DisabledKvStateRequestStats()); } - /** Shuts down the client. */ + /** + * Shuts down the client and waits for 10 seconds + * for the shutdown to be completed. + * + * <p>If this expires, or an exception is thrown for + * any reason, then a warning is printed containing the + * exception. + */ public void shutdown() { - client.shutdown(); + try { + client.shutdown().get(10L, TimeUnit.SECONDS); + LOG.info("The Queryable State Client was shutdown successfully."); + } catch (Exception e) { + LOG.warn("The Queryable State Client shutdown failed: ", e); + } + } + + /** + * Shuts down the client and waits until shutdown is completed. + * + * <p>If an exception is thrown for any reason, then this exception + * is further propagated upwards. + */ + public void shutdownAndWait() throws Throwable { --- End diff -- We should not throw `Throwable`.
---