void updateCurrBlockRef(HFileBlock block) {
      if (block != null && curBlock != null && block.getOffset() == curBlock.getOffset()) {
        return;
      }
      if (this.curBlock != null && this.curBlock.isSharedMem()) {
        prevBlocks.add(this.curBlock);
      }
      this.curBlock = block;
      this.providedCurrentBlockSize = false;
    }
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