[
https://issues.apache.org/jira/browse/HBASE-14186?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14659618#comment-14659618
]
Hudson commented on HBASE-14186:
--------------------------------
FAILURE: Integrated in HBase-TRUNK #6699 (See
[https://builds.apache.org/job/HBase-TRUNK/6699/])
HBASE-14186 Read mvcc vlong optimization. (anoopsamjohn: rev
5d2708f628d4718f6267e9da6c8cbafeda66f4fb)
*
hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileReaderImpl.java
> Read mvcc vlong optimization
> ----------------------------
>
> Key: HBASE-14186
> URL: https://issues.apache.org/jira/browse/HBASE-14186
> Project: HBase
> Issue Type: Sub-task
> Components: Performance, Scanners
> Reporter: Anoop Sam John
> Assignee: Anoop Sam John
> Fix For: 2.0.0
>
> Attachments: HBASE-14186.patch
>
>
> {code}
> for (int idx = 0; idx < remaining; idx++) {
> byte b = blockBuffer.getByteAfterPosition(offsetFromPos + idx);
> i = i << 8;
> i = i | (b & 0xFF);
> }
> {code}
> Doing the read as in case of BIG_ENDIAN.
> After HBASE-12600, we tend to keep the mvcc and so byte by byte read looks
> eating up lot of CPU time. (In my test HFileReaderImpl#_readMvccVersion comes
> on top in terms of hot methods). We can optimize here by reading 4 or 2 bytes
> in one shot when the length of the vlong is more than 4 bytes. We will in
> turn use UnsafeAccess methods which handles ENDIAN.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)