code: protected Connection getReadConnection() throws CpoException {
      Connection connection;
  
      try {
        if (!(invalidReadConnection_)) {
          connection = getReadDataSource().getConnection();
        } else {
          connection = getWriteDataSource().getConnection();
        }
        connection.setAutoCommit(false);
      } catch (Exception e) {
        invalidReadConnection_ = true;
  
        String msg = "getReadConnection(): failed";
        logger.error(msg, e);
  
        try {
          connection = getWriteDataSource().getConnection();
          connection.setAutoCommit(false);
        } catch (SQLException e2) {
          msg = "getWriteConnection(): failed";
          logger.error(msg, e2);
          throw new CpoException(msg, e2);
        }
      }
  
      return connection;
    }
docs: DOCUMENT ME!
  
  @return DOCUMENT ME!
  @throws CpoException DOCUMENT ME!