diff --git a/plc4j/tools/connection-cache/src/main/java/org/apache/plc4x/java/utils/cache/ConnectionContainer.java b/plc4j/tools/connection-cache/src/main/java/org/apache/plc4x/java/utils/cache/ConnectionContainer.java index a40e722699..b6abef30e0 100644 --- a/plc4j/tools/connection-cache/src/main/java/org/apache/plc4x/java/utils/cache/ConnectionContainer.java +++ b/plc4j/tools/connection-cache/src/main/java/org/apache/plc4x/java/utils/cache/ConnectionContainer.java @@ -152,6 +152,7 @@ public synchronized void returnConnection(LeasedPlcConnection returnedLeasedConn // If something goes wrong, close all waiting futures exceptionally. LOGGER.warn("Can't get connection for {} complete queue items exceptionally", connectionUrl, e); queue.forEach(future -> future.completeExceptionally(e)); + queue.clear(); connection = null; } }