code: private boolean closeStatements() {
  
        // JDBC API says...
        // Calling the method close on a Statement object that is already closed has no effect.
        // Note: When a Statement object is closed, its current ResultSet object, if one exists, is also closed.
  
        boolean hasUnclosed = false;
  
        if(openStatements.size() > 0) {
           for(Statement stmt : openStatements) {
              try {
                 if(!stmt.isClosed()) {
                    stmt.close();
                    hasUnclosed = true;
                 }
              } catch(SQLException e) {
                 hasUnclosed = true;
                 setLogicalCloseException(e);
              } catch(Throwable t) {
                 hasUnclosed = true;
                 if(logicalCloseException == null) {
                    if(Util.isRuntimeError(t)) {
                       setLogicalCloseException(t);
                    } else {
                       setLogicalCloseException(new SQLException(t));
                    }
                 }
              }
           }
  
           openStatements.clear();
        }
  
        return hasUnclosed;
     }
docs: Check for unclosed statements.
  @return Were any statements unclosed?