diff --git a/hikaricp-java6/src/main/java/com/zaxxer/hikari/pool/HikariPool.java b/hikaricp-java6/src/main/java/com/zaxxer/hikari/pool/HikariPool.java index 3e852dc9..89ec6778 100644 --- a/hikaricp-java6/src/main/java/com/zaxxer/hikari/pool/HikariPool.java +++ b/hikaricp-java6/src/main/java/com/zaxxer/hikari/pool/HikariPool.java @@ -170,7 +170,7 @@ public final class HikariPool implements HikariPoolMBean, IBagStateListener if (now > connection.getExpirationTime() || (now - connection.getLastAccess() > 1000L && !isConnectionAlive(connection, timeout))) { closeConnection(connection); // Throw away the dead connection and try again - timeout -= elapsedTimeMs(start); + timeout = connectionTimeout - elapsedTimeMs(start); continue; } else if (leakDetectionThreshold != 0) { diff --git a/hikaricp/src/main/java/com/zaxxer/hikari/pool/HikariPool.java b/hikaricp/src/main/java/com/zaxxer/hikari/pool/HikariPool.java index a3243297..ed283015 100644 --- a/hikaricp/src/main/java/com/zaxxer/hikari/pool/HikariPool.java +++ b/hikaricp/src/main/java/com/zaxxer/hikari/pool/HikariPool.java @@ -169,7 +169,7 @@ public final class HikariPool implements HikariPoolMBean, IBagStateListener if (now > connection.getExpirationTime() || (now - connection.getLastAccess() > 1000L && !isConnectionAlive(connection, timeout))) { closeConnection(connection); // Throw away the dead connection and try again - timeout -= elapsedTimeMs(start); + timeout = connectionTimeout - elapsedTimeMs(start); continue; } else if (leakDetectionThreshold != 0) {