hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ramkrishna.s.vasudevan (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-14398) Create the fake keys required in the scan path to avoid copy to byte[]
Date Thu, 08 Oct 2015 05:22:26 GMT

    [ https://issues.apache.org/jira/browse/HBASE-14398?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14948092#comment-14948092

ramkrishna.s.vasudevan commented on HBASE-14398:

bq.Would getRow, getFamily without the BB be too radical? The fact that we are doing these
invocations on a class called BBC provides enough 'context' – its a getRow against a BBC?
I would still feel having BB in the API is more convincing.
bq.If they use it against an array returned from getXXXArray, then let it mess up... break....
IllegalArrayAccessException or whatever. getXXXOffset if BBC should be for the BB... Let it
break in CP and Filters, etc.. What you think?
So once we start doing it we will break in the write path of compaction itself because the
compaction and flushes both follow same write path. So currenlty it is using getXXXArray()
with getXXXOffset() and for a BB cell we are copying in case of compactions.  So CPs and filters
have to be broken then. After a big discussion internally here when we defined APIs we thought
copying is better than breaking and clear javadoc on BBCell should suffice. Because our earlier
patches were trying to throw Exceptions and it made the patch much bigger. So still feel copying
is better. 

> Create the fake keys required in the scan path to avoid copy to byte[]
> ----------------------------------------------------------------------
>                 Key: HBASE-14398
>                 URL: https://issues.apache.org/jira/browse/HBASE-14398
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>             Fix For: 2.0.0
>         Attachments: HBASE-14398.patch, HBASE-14398_1.patch
> Already we have created some fake keys for the ByteBufferedCells so that we can avoid
the copy requried to create fake keys. This JIRA aims to fill up all such places so that the
Offheap BBs are not copied to onheap byte[].

This message was sent by Atlassian JIRA

View raw message