[
https://issues.apache.org/jira/browse/HBASE-9807?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13800083#comment-13800083
]
stack commented on HBASE-9807:
------------------------------
You have this still
+ ByteBuffer bb = getKey();
+ return reader.getComparator().compare(key, offset,
+ length, bb.array(), bb.arrayOffset(), bb.limit());
Does that mean we are still doing deep copy, what you would avoid?
Good on you Lars.
> scanning with block encoding unnecessarily copies the key for each reseek
> -------------------------------------------------------------------------
>
> Key: HBASE-9807
> URL: https://issues.apache.org/jira/browse/HBASE-9807
> Project: HBase
> Issue Type: Bug
> Reporter: Lars Hofhansl
> Attachments: 9807-0.94.txt
>
>
> In HFileReaderV2.AbstractScannerV2.reseekTo(...) we have this:
> {code}
> ByteBuffer bb = getKey();
> compared = reader.getComparator().compare(key, offset,
> length, bb.array(), bb.arrayOffset(), bb.limit());
> {code}
> {{getKey()}} creates to ByteBuffers in ScannerV2 and makes a deep copy of the
> key in EncodedScannerV2.
--
This message was sent by Atlassian JIRA
(v6.1#6144)