Buggy code:
public abstract class ConnectionProxy implements IHikariConnectionProxy { private static final Logger LOGGER ; private static final Set < String > SQL_ERRORS ; protected Connection delegate ; private final LeakTask leakTask ; private final HikariPool parentPool ; private final PoolBagEntry bagEntry ; private final FastList < Statement > openStatements ; private boolean isCommitStateDirty ; private boolean isConnectionStateDirty ; private boolean isAutoCommitDirty ; private boolean isCatalogDirty ; private boolean isReadOnlyDirty ; private boolean isTransactionIsolationDirty ; protected ConnectionProxy ( final HikariPool pool , final PoolBagEntry bagEntry , final LeakTask leakTask ) { } @ Override public String toString ( ) { } @ Override public final PoolBagEntry getPoolBagEntry ( ) { } @ Override public final SQLException checkException ( final SQLException sqle ) { String sqlState = sqle . getSQLState ( ) ; <START_BUG> if ( ( sqlState != null ) && ( ! ( bagEntry . evicted ) ) ) { <END_BUG> boolean isForceClose = ( sqlState . startsWith ( "08" ) ) | ( ConnectionProxy . SQL_ERRORS . contains ( sqlState ) ) ; if ( isForceClose ) { bagEntry . evicted = true ; ConnectionProxy . LOGGER . warn ( String . format ( "Connection<seq2seq4repair_space>%s<seq2seq4repair_space>(%s)<seq2seq4repair_space>marked<seq2seq4repair_space>as<seq2seq4repair_space>broken<seq2seq4repair_space>because<seq2seq4repair_space>of<seq2seq4repair_space>SQLSTATE(%s),<seq2seq4repair_space>ErrorCode(%d)." , delegate . toString ( ) , parentPool . toString ( ) , sqlState , sqle . getErrorCode ( ) ) , sqle ) ; } else if ( ( sqle . getNextException ( ) ) instanceof SQLException ) { checkException ( sqle . getNextException ( ) ) ; } } return sqle ; } @ Override public final void untrackStatement ( final Statement statement ) { } @ Override public final void markCommitStateDirty ( ) { } private final < T extends Statement > T trackStatement ( final T statement ) { } private final void resetConnectionState ( ) throws SQLException { } @ Override public final void close ( ) throws SQLException { } @ Override public Statement createStatement ( ) throws SQLException { } @ Override public Statement createStatement ( int resultSetType , int concurrency ) throws SQLException { } @ Override public Statement createStatement ( int resultSetType , int concurrency , int holdability ) throws SQLException { } @ Override public CallableStatement prepareCall ( String sql ) throws SQLException { } @ Override public CallableStatement prepareCall ( String sql , int resultSetType , int concurrency ) throws SQLException { } @ Override public CallableStatement prepareCall ( String sql , int resultSetType , int concurrency , int holdability ) throws SQLException { } @ Override public PreparedStatement prepareStatement ( String sql ) throws SQLException { } @ Override public PreparedStatement prepareStatement ( String sql , int autoGeneratedKeys ) throws SQLException { } @ Override public PreparedStatement prepareStatement ( String sql , int resultSetType , int concurrency ) throws SQLException { } @ Override public PreparedStatement prepareStatement ( String sql , int resultSetType , int concurrency , int holdability ) throws SQLException { } @ Override public PreparedStatement prepareStatement ( String sql , int [ ] columnIndexes ) throws SQLException { } @ Override public PreparedStatement prepareStatement ( String sql , String [ ] columnNames ) throws SQLException { } @ Override public void commit ( ) throws SQLException { } @ Override public void rollback ( ) throws SQLException { } @ Override public void rollback ( Savepoint savepoint ) throws SQLException { } @ Override public void setAutoCommit ( boolean autoCommit ) throws SQLException { } @ Override public void setReadOnly ( boolean readOnly ) throws SQLException { } @ Override public void setTransactionIsolation ( int level ) throws SQLException { } @ Override public void setCatalog ( String catalog ) throws SQLException { } @ Override public final boolean isWrapperFor ( Class < ? > iface ) throws SQLException { } @ Override @ SuppressWarnings ( "unchecked" ) public final < T > T unwrap ( Class < T > iface ) throws SQLException { } }

Fix:
if ( sqlState != null ) {