hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-16205) When Cells are not copied to MSLAB, deep clone it while adding to Memstore
Date Tue, 26 Jul 2016 10:11:20 GMT

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

Anoop Sam John commented on HBASE-16205:

Missed handling TagRewriteCell here as part of this jira.  This will come into pic when say
there are visibility labels in coming Mutation.  At RPC codec layer, a ShareableMemory version
of KeyValue will be created. Later on in VC, we will add tags to the incoming Cell and that
in turn will make TagRewriteCell. The underlying cell here refers to big memory chunk where
we read request in RPC layer. I will handle that as part of another jira as the patch is bit
big and dont want to do that much big change as an addendum. You ok with that [~ram_krish],

> When Cells are not copied to MSLAB, deep clone it while adding to Memstore
> --------------------------------------------------------------------------
>                 Key: HBASE-16205
>                 URL: https://issues.apache.org/jira/browse/HBASE-16205
>             Project: HBase
>          Issue Type: Sub-task
>          Components: regionserver
>    Affects Versions: 2.0.0
>            Reporter: Anoop Sam John
>            Assignee: Anoop Sam John
>            Priority: Critical
>             Fix For: 2.0.0
>         Attachments: HBASE-16205.patch, HBASE-16205_V2.patch, HBASE-16205_V3.patch, HBASE-16205_V3.patch
> This is imp after HBASE-15180 optimization. After that we the cells flowing in write
path will be backed by the same byte[] where the RPC read the request into. By default we
have MSLAB On and so we have a copy operation while adding Cells to memstore.  This copy might
not be there if
> 1. MSLAB is turned OFF
> 2. Cell size is more than a configurable max size. This defaults to 256 KB
> 3. If the operation is Append/Increment. 
> In such cases, we should just clone the Cell into a new byte[] and then add to memstore.
 Or else we keep referring to the bigger byte[] chunk for longer time.

This message was sent by Atlassian JIRA

View raw message