[
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