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

Anoop Sam John commented on HBASE-15202:
----------------------------------------

{code}
for (int i = 0; i <= 3; i++) {
969           // Instead of iterating store in 4 vars and write as RawByte?
970           cos.writeRawByte(b[i]);
971         }
{code}
Can we do that comment what you wrote? So can avoid a byte[] creation.  +1 for 
Enis suggestion to move it out of Bytes.java



> Reduce garbage while setting response
> -------------------------------------
>
>                 Key: HBASE-15202
>                 URL: https://issues.apache.org/jira/browse/HBASE-15202
>             Project: HBase
>          Issue Type: Sub-task
>          Components: regionserver
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>            Priority: Minor
>             Fix For: 2.0.0
>
>         Attachments: HBASE-15202.patch, HBASE-15202_1.patch
>
>
> Probably this can move under HBASE-15177.  During RpcServer#setResponse we do 
> IPCUtil.getDelimitedMessageAsByteBuffer for the header and result. This 
> internally creates a byte[], CodedOutputStream and a BB. Then the totalSize 
> is also wrapped in a BB. 
> Finally all these BB are passed to BufferChain along with the Cellblock.
> This JIRA is to reduce the number of objects that we create here and allow 
> one BB from this header, result and total Size along with one 
> CodedOutputStream and pass this BB along with the Cellblocks to the 
> Bufferchain. From the JMC tool can observe around 2% lesser object allocation 
> arising out of these objects. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to