in hadoop-api-shim/src/main/java/org/apache/hadoop/fs/shim/impl/VectoredRangeReadImpl.java [123:138]
public static List<? extends VectorFileRange> validateNonOverlappingAndReturnSortedRanges(
List<? extends VectorFileRange> input) throws EOFException {
validateVectoredReadRanges(input);
if (input.size() <= 1) {
return input;
}
VectorFileRange[] sortedRanges = sortRanges(input);
VectorFileRange prev = sortedRanges[0];
for (int i = 1; i < sortedRanges.length; i++) {
if (sortedRanges[i].getOffset() < prev.getOffset() + prev.getLength()) {
throw new UnsupportedOperationException("Overlapping ranges are not supported");
}
prev = sortedRanges[i];
}
return Arrays.asList(sortedRanges);
}