@Override
  public RecordIdIterator createRecordIdIterator() throws IOException {
    return new RecordIdIterator() {
      private final int count = getRecordsCount();
      private int recordId = 1;

      @Override
      public boolean hasNextId() {
        return recordId <= count;
      }

      @Override
      public int nextId() {
        assert hasNextId();
        return recordId++;
      }

      @Override
      public boolean validId() throws IOException {
        assert hasNextId();
        return isSizeOfLiveRecord(getSize(recordId));
      }
    };
  }
@Override
  public RecordIdIterator createRecordIdIterator()