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

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

1.  Pls see ValueAndTagRewriteCell and how this write is handled
2. All these individual component byte[]s are independent byte[]s.  And we 
consider  java array object overhead in heapSize(). This is actually overhead 
only..So we better consider it in overhead. In case of KV#heapOverhead() we 
don't consider Array size because mostly many KVs share same byte[].  Atleast 
in server side when we have it.  So this was removed to avoid we overestimate 
heap size and overhead.  This was fixed recently.  But for this new Cell impl, 
we must consider the array overheads as part of heapOverhead()
3. Hmm..  align() is ideally required..   Our bad.. missed some places// May be 
another issue u can raise to fix all possible places?  Am sure many a places it 
might be missing!


> Provide a Put API that adds the provided family, qualifier, value without 
> copying
> ---------------------------------------------------------------------------------
>
>                 Key: HBASE-14882
>                 URL: https://issues.apache.org/jira/browse/HBASE-14882
>             Project: HBase
>          Issue Type: Improvement
>    Affects Versions: 1.2.0
>            Reporter: Jerry He
>            Assignee: Xiang Li
>             Fix For: 2.0.0
>
>         Attachments: HBASE-14882.master.000.patch, 
> HBASE-14882.master.001.patch, HBASE-14882.master.002.patch, 
> HBASE-14882.master.003.patch, HBASE-14882.master.004.patch
>
>
> In the Put API, we have addImmutable()
> {code}
>  /**
>    * See {@link #addColumn(byte[], byte[], byte[])}. This version expects
>    * that the underlying arrays won't change. It's intended
>    * for usage internal HBase to and for advanced client applications.
>    */
>   public Put addImmutable(byte [] family, byte [] qualifier, byte [] value)
> {code}
> But in the implementation, the family, qualifier and value are still being 
> copied locally to create kv.
> Hopefully we should provide an API that truly uses immutable family, 
> qualifier and value.



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

Reply via email to