code: @Override
  	public OUT nextRecord(OUT tuple) throws IOException {
  		try {
  			resultSet.next();
  			if (columnTypes == null) {
  				extractTypes(tuple);
  			}
  			addValue(tuple);
  			return tuple;
  		} catch (SQLException se) {
  			close();
  			throw new IOException("Couldn't read data - " + se.getMessage(), se);
  		} catch (NullPointerException npe) {
  			close();
  			throw new IOException("Couldn't access resultSet", npe);
  		}
  	}
docs: Stores the next resultSet row in a tuple
  
  @param tuple
  @return tuple containing next row
  @throws java.io.IOException