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

stack commented on HBASE-17644:
-------------------------------

Patch is a nice cleanup. +1. Only beef is my usual... see below..... Hopefully 
we can get rid of these one day.

{code}
3191        if (tagsLen == 0) {
3192          // When tagsLen is 0, make a NoTagsByteBufferKeyValue version. 
This is an optimized class
3193          // which directly return tagsLen as 0. So we avoid parsing many 
length components in
3194          // reading the tagLength stored in the backing buffer. The 
Memstore addition of every Cell
3195          // call getTagsLength().
3196          return new NoTagsByteBufferKeyValue(buf, offset, len, 
cell.getSequenceId());
3197        } else {
3198          return new ByteBufferKeyValue(buf, offset, len, 
cell.getSequenceId());
3204        }   3199        }
{code}



> Always create ByteBufferCells after copying to MSLAB
> ----------------------------------------------------
>
>                 Key: HBASE-17644
>                 URL: https://issues.apache.org/jira/browse/HBASE-17644
>             Project: HBase
>          Issue Type: Sub-task
>          Components: regionserver
>    Affects Versions: 2.0.0
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: Anoop Sam John
>             Fix For: 2.0.0
>
>         Attachments: HBASE-17644.patch
>
>
> We create a cell out of the Bytebuffer that is returned by MSLAB. This BB can 
> be offheap or onheap type. If MSLAB is full we return onheap byte buffer. So 
> the place where we create a cell by copying data to this buffer we either 
> create KeyValue or OffheapKV based on the buffer type. So what we saw in 
> tests is that since we have a combination of Cells the comparisons that 
> happens when adding to memstore happens millions of times and that has an 
> impact on the performance of write path. In read path this is not significant 
> enougth (though we have plans to just create one type of cells every where in 
> Server side). 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to