[
https://issues.apache.org/jira/browse/HBASE-26856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17558807#comment-17558807
]
Andrew Kyle Purtell commented on HBASE-26856:
---------------------------------------------
Done
remote: 3ed78a039b3..a9f9701b723 a9f9701b72358c129460c8c4125eeafd682e8108
-> branch-2
remote: 6884dbbe490..28a5083095c 28a5083095c017593da896d5e13fe06cbc35b2c4
-> branch-2.5
remote: d447fa01ba3..42853aae57f 42853aae57fd46634d8b8580fff3103eb532f5b7
-> master
> BufferedDataBlockEncoder.OnheapDecodedCell value can get corrupted
> ------------------------------------------------------------------
>
> Key: HBASE-26856
> URL: https://issues.apache.org/jira/browse/HBASE-26856
> Project: HBase
> Issue Type: Bug
> Reporter: Mohammad Arshad
> Assignee: Mohammad Arshad
> Priority: Major
>
> In our production cluster we observed the cell value is modified after
> successful scanner read. After analyzing we observed OnheapDecodedCell is not
> created properly.
> We create OnheapDecodedCell with complete valAndTagsBuffer underlying array.
> {code:java}
> return new OnheapDecodedCell(Bytes.copy(keyBuffer, 0, this.keyLength),
> currentKey.getRowLength(), currentKey.getFamilyOffset(),
> currentKey.getFamilyLength(),
> currentKey.getQualifierOffset(), currentKey.getQualifierLength(),
> currentKey.getTimestamp(), currentKey.getTypeByte(),
> valAndTagsBuffer.array(),
> valAndTagsBuffer.arrayOffset() + vOffset, this.valueLength,
> memstoreTS, tagsArray,
> tOffset, this.tagsLength);
> {code}
> Here we are passing valAndTagsBuffer.array() for value extraction.
> The underlying array will be modified if it is altered anywhere.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)