odps-sdk-impl/odps-mapred-local/src/main/java/com/aliyun/odps/mapred/local/LocalGroupingRecordIterator.java [71:87]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  public boolean hasNext() {
    if (prefetch != null) {
      // If prefetched, it must has been compared, return compare result
      // immediately.
      return hasNext;
    } else {
      prefetch = queue.poll();
    }
    if (prefetch == null
        || keyGroupingComparator.compare(key.toWritableArray(), prefetch) != 0) {
      hasNext = false;
    } else {
      hasNext = true;
      fillKeyValue(prefetch);
    }
    return hasNext;
  }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



odps-sdk-impl/odps-mapred-bridge/src/main/java/com/aliyun/odps/mapred/bridge/GroupingRecordIterator.java [58:74]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  public boolean hasNext() {
    if (prefetch != null) {
      // If prefetched, it must has been compared, return compare result
      // immediately.
      return hasNext;
    } else {
      prefetch = queue.poll();
    }
    if (prefetch == null
        || keyGroupingComparator.compare(key.toWritableArray(), prefetch) != 0) {
      hasNext = false;
    } else {
      hasNext = true;
      fillKeyValue(prefetch);
    }
    return hasNext;
  }
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



