diff --git a/src/main/java/com/zaxxer/hikari/pool/ProxyConnection.java b/src/main/java/com/zaxxer/hikari/pool/ProxyConnection.java index ec10e4bf..57046eaa 100644 --- a/src/main/java/com/zaxxer/hikari/pool/ProxyConnection.java +++ b/src/main/java/com/zaxxer/hikari/pool/ProxyConnection.java @@ -143,9 +143,9 @@ public abstract class ProxyConnection implements Connection final SQLException checkException(final SQLException sqle) { - final String sqlState = sqle.getSQLState(); - if (sqlState != null && delegate != ClosedConnection.CLOSED_CONNECTION) { - if (sqlState.startsWith("08") || SQL_ERRORS.contains(sqlState)) { + if (delegate != ClosedConnection.CLOSED_CONNECTION) { + final String sqlState = sqle.getSQLState(); + if (sqlState != null && (sqlState.startsWith("08") || SQL_ERRORS.contains(sqlState))) { LOGGER.warn("{} - Connection {} marked as broken because of SQLSTATE({}), ErrorCode({})", poolEntry.getPoolName(), delegate, sqlState, sqle.getErrorCode(), sqle); leakTask.cancel();