@Override
  public void serialize(ByteBuffer destination, boolean includeNextBlockMetadata) {
    this.bufWithoutChecksum.get(destination, 0, getSerializedLength() - BLOCK_METADATA_SPACE);
    destination = addMetaData(destination, includeNextBlockMetadata);

    // Make it ready for reading. flip sets position to zero and limit to current position which
    // is what we want if we do not want to serialize the block plus checksums if present plus
    // metadata.
    destination.flip();
  }
An additional sanity-check in case no compression or encryption is being used.
hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java