hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HBASE-11934) Support KeyValueCodec to encode non KeyValue cells.
Date Wed, 10 Sep 2014 16:21:33 GMT
Anoop Sam John created HBASE-11934:
--------------------------------------

             Summary: Support KeyValueCodec to encode non KeyValue cells.
                 Key: HBASE-11934
                 URL: https://issues.apache.org/jira/browse/HBASE-11934
             Project: HBase
          Issue Type: Sub-task
    Affects Versions: 0.99.0
            Reporter: Anoop Sam John
            Assignee: Anoop Sam John
             Fix For: 2.0.0, 0.99.1


We have KeyValueCodec as the default RPC codec now. This can only encode KeyValue types and
need to convert any non KV cell to KeyValue format. This is a expensive op. 
{code}
  // This is crass and will not work when KV changes. Also if passed a non-kv Cell, it will
  // make expensive copy.
  // Do not write tags over RPC
  KeyValue.oswrite((KeyValue) KeyValueUtil.ensureKeyValue(cell), this.out, false);
{code}
Now we want Cell to be in entire read path and don't want any copy until we write the cell
to client. 
The optimization done in the DBE of avoiding copying of value bytes was also not getting real
advantage bacause of this ensureKeyValue() call at the Codec.

We can encode and write non KeyValue cells with KV serialization format and avoid the recreate.




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

Mime
View raw message