private void resetBlocks() {
        List<Block> blocks = new ArrayList<>(blocksMap.values());
        // The Block#markRead will immediately invoke after the Block is removed.
        blocksMap.clear();
        blocks.forEach(Block::markReadCompleted);
        lastBlock = null;
        loadedBlockIndexEndOffset = 0L;
        blocksEpoch++;
        BLOCKS_RESET_LOG_SUPPRESSOR.info("The stream reader's blocks are reset, cause of the object compaction");
    }
Load more block indexes

@return whether load more blocks
s3stream/src/main/java/com/automq/stream/s3/cache/blockcache/StreamReader.java