[ https://issues.apache.org/jira/browse/HBASE-5720?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13246952#comment-13246952 ]
Zhihong Yu commented on HBASE-5720: ----------------------------------- Looks like the issue only exists in 0.94 branch. There is no such code in trunk version of HFileDataBlockEncoderImpl.java: {code} *** 194,200 **** DataBlockEncoding algo, boolean includesMemstoreTS) { ByteBuffer compressedBuffer = encodeBufferToHFileBlockBuffer( block.getBufferWithoutHeader(), algo, includesMemstoreTS, - HFileBlock.DUMMY_HEADER); {code} > HFileDataBlockEncoderImpl uses wrong header size when reading HFiles with no > checksums > -------------------------------------------------------------------------------------- > > Key: HBASE-5720 > URL: https://issues.apache.org/jira/browse/HBASE-5720 > Project: HBase > Issue Type: Bug > Components: io, regionserver > Affects Versions: 0.94.0 > Reporter: Matt Corgan > Priority: Blocker > Fix For: 0.94.0 > > Attachments: HBASE-5720-v1.patch > > > When reading a .92 HFile without checksums, encoding it, and storing in the > block cache, the HFileDataBlockEncoderImpl always allocates a dummy header > appropriate for checksums even though there are none. This corrupts the > byte[]. > Attaching a patch that allocates a DUMMY_HEADER_NO_CHECKSUM in that case > which I think is the desired behavior. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira