diff --git a/curator-client/src/main/java/org/apache/curator/utils/CloseableExecutorService.java b/curator-client/src/main/java/org/apache/curator/utils/CloseableExecutorService.java index 5e51449ca8..e9d25472c9 100644 --- a/curator-client/src/main/java/org/apache/curator/utils/CloseableExecutorService.java +++ b/curator-client/src/main/java/org/apache/curator/utils/CloseableExecutorService.java @@ -148,7 +148,7 @@ public void close() { Future future = iterator.next(); iterator.remove(); - if ( !future.cancel(true) ) + if ( !future.isDone() && !future.isCancelled() && !future.cancel(true) ) { log.warn("Could not cancel " + future); }