@Override
    public T next() {
      T next = currentIterator.next();
      GenericRecord rec = (GenericRecord) next;
      IcebergAcidUtil.copyFields(rec, FILE_READ_META_COLS.size(), current.size(), current);
      PositionDeleteInfo.setIntoConf(conf,
          IcebergAcidUtil.parseSpecId(rec),
          IcebergAcidUtil.computePartitionHash(rec),
          IcebergAcidUtil.parseFilePath(rec),
          IcebergAcidUtil.parseFilePosition(rec),
          StringUtils.EMPTY);
      return (T) current;
    }
Get the new record from the updated record. Populate the `newRecord` with the filed values from `rec`.
@param rec The record read by the file scan task, which contains both the metadata fields and the row data fields
@param newRecord The record object to populate. The end result is the new record after the update.
iceberg/iceberg-handler/src/main/java/org/apache/iceberg/mr/hive/IcebergAcidUtil.java