@Override
    public void close() {
      if (!pread) {
        // For seek + pread stream socket should be closed when the scanner is closed. HBASE-9393
        reader.unbufferStream();
      }
      this.returnBlocks(true);
    }
The next indexed key is to keep track of the indexed key of the next data block. If the
nextIndexedKey is HConstants.NO_NEXT_INDEXED_KEY, it means that the current data block is the
last data block. If the nextIndexedKey is null, it means the nextIndexedKey has not been
loaded yet.
hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java