hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-10771) Primitive type put/get APIs in ByteRange
Date Mon, 31 Mar 2014 21:15:16 GMT

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

stack commented on HBASE-10771:
-------------------------------

Thanks [~ndimiduk]

And I like how you put it.  My comments are of the same class as yours (to be clear).

We have ByteBuffers coming in the front door currently.   We give the socket a nioBB to read
into.  Keeping position in another object, BR for instance seems fine (so we avoid #1 and
#2 in @apurtell list above).

Reading in from HDFS, we allocate a BB and read into it.

Looking at ByteBuf, it has range checking (checkIndex) but the getBytes and the checkIndex
are subclasseable so perhaps it could be 'turned off' if we wanted it to be.   ByteBuf has
nice features like allocations from pools but if we are talking tight loops (no range check)
and reuse, then neither nioBB nor nettyBB will do.




> Primitive type put/get APIs in ByteRange 
> -----------------------------------------
>
>                 Key: HBASE-10771
>                 URL: https://issues.apache.org/jira/browse/HBASE-10771
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Anoop Sam John
>            Assignee: Anoop Sam John
>             Fix For: 0.99.0
>
>         Attachments: HBASE-10771.patch, HBASE-10771_V2.patch
>
>
> While doing HBASE-10713 I came across the need to write int/long (and read also) from
a ByteRange.  CellBlocks are backed by ByteRange. So we can add such APIs.
> Also as per HBASE-10750  we return a ByteRange from MSLAB and also discussion under HBASE-10191
suggest we can have BR backed HFileBlocks etc.  



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message