public void addOrMerge(long offset, long end, boolean doMerge, boolean doLogNew) {
      if (doMerge && tail != null && tail.merge(offset, end)) return;
      if (doLogNew) {
        LOG.debug("Creating new range; last range (which can include some previous adds) was "
            + tail);
      }
      DiskRangeList node = new DiskRangeList(offset, end);
      if (tail == null) {
        head = tail = node;
      } else {
        tail = tail.insertAfter(node);
      }
    }
This class provides just a simplistic iterator interface (check {@link DiskRangeList}).
Thus, for equality/hashcode just check the actual DiskRange content.
@return hashcode
storage-api/src/java/org/apache/hadoop/hive/common/io/DiskRangeList.java