private void returnAndEvictBlock(BlockCache cache, BlockCacheKey cacheKey, Cacheable block) {
    block.release();
    cache.evictBlock(cacheKey);
  }
Retrieve block from cache. Validates the retrieved block's type vs {@code expectedBlockType}
and its encoding vs. {@code expectedDataBlockEncoding}. Unpacks the block as necessary.
hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java