docs: protected SQLException executeExceptionEpilogue(SQLException sqle) {
      //if has a failover, closing the statement
      if (sqle.getSQLState() != null && sqle.getSQLState().startsWith("08")) {
        try {
          close();
        } catch (SQLException sqlee) {
          //eat exception
        }
      }
  
      if (isTimedout) {
        return new SQLTimeoutException("(conn:" + getServerThreadId() + ") Query timed out", "JZ0002",
            1317, sqle);
      }
      SQLException sqlException = ExceptionMapper
          .getException(sqle, connection, this, queryTimeout != 0);
      logger.error("error executing query", sqlException);
      return sqlException;
    }