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

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

Thanks for the tests..
1. Ya ideally those interfaces are not required to be used at client end. Here 
it seems like Put#addImmutable() API is being used by some WAL replay path.  On 
those cells coming in for replay, we tend to set the seqId.  Ya this is fully 
server end code path only.  The client API is used by server also..  So  we 
need to be careful here..  Can u see all usage of these affected Put APIs.. 
(addImmutable)
2. Streamable is not a must any way.  If this is implemented, then the Codec 
can do an optimized way of serializing this Cell on to wire IN KV FORMAT.   So 
the serialization to wire is always KV format way..  Because of that, the 
deserialization by codec is simple. It just deserialize into KV.  So there are 
no confusion as u mentioned above

> 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
>
>
> 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