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

stack commented on HBASE-20710:
-------------------------------

I tried the patch. Here is before... [^2.0621.2.12782.alloc.svg]  and here is 
with the patch applied  [^2.0623.111354.alloc.svg] You can see the two clone 
families in the first graph above the CallRunner#run hump. Hard to find the 
single clone family in second graph... its really small.

> extra cloneFamily() in Mutation.add(Cell)
> -----------------------------------------
>
>                 Key: HBASE-20710
>                 URL: https://issues.apache.org/jira/browse/HBASE-20710
>             Project: HBase
>          Issue Type: Sub-task
>          Components: regionserver
>    Affects Versions: 2.0.1
>            Reporter: huaxiang sun
>            Assignee: huaxiang sun
>            Priority: Minor
>             Fix For: 2.0.2
>
>         Attachments: 2.0621.2.12782.alloc.svg, 2.0623.111354.alloc.svg, 
> HBASE-20710-master-v001.patch, HBASE-20710-master-v002.patch, 
> HBASE-20710-master-v002.patch, HBASE-20710.master.001.patch, 
> alloc-put-fix.svg, alloc-put-orig.svg
>
>
> The cpu profiling shows that during PE randomWrite testing, about 1 percent 
> of time is spent in cloneFamily. Reviewing code found that when a cell is DBB 
> backed ByteBuffKeyValueCell (which is default with Netty Rpc), 
> cell.getFamilyArray() will call cloneFamily() and there is again a 
> cloneFamily() in the following line of the code. since this is the critical 
> write path processing, this needs to be optimized.
> https://github.com/apache/hbase/blob/master/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Mutation.java#L791
> https://github.com/apache/hbase/blob/master/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Mutation.java#L795



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to