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-14882) Provide a Put API that adds the provided family, qualifier, value without copying
Date Mon, 05 Sep 2016 02:03:21 GMT

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

Anoop Sam John commented on HBASE-14882:

InputsImmutableCell  -> I dont think this reflect the actual thing.  It is not that this
cell is made of Immutable bytes is the key..  Even when we create KV also (passing a byte[])
we assume it is immutable.  Just refer that..  But there we assume the entire key, value etc
are in single contiguous byte[].   Here each component (RK, CF, value etc) of the Cell is
separate byte[]..  And this class is implementing Cell this way.  I believe we need a name
in that way. Sorry am not good in naming. :-(
Do we need CellUtil API?  I guess no.  U can keep the new Class (implementing Cell) in same
place as of KeyValue.  Just create new instance of that within Put#addImmutable.

> 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

View raw message