[
https://issues.apache.org/jira/browse/HBASE-11805?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14108974#comment-14108974
]
Anoop Sam John commented on HBASE-11805:
----------------------------------------
WALEdit implements HeapSize, and as Cell is not having heapSize() we will
ending up in issue.
Also will have to have the setSeqId() which is there only in KeyValue
KeyValue#length() is the other one which is used by/from WALEdit.
The background of this is, we need different type of Tag which only has to go
into WAL, then if the WALEdit add takes KV only, we have to recreate a KV which
needs byte copying for entire KV key, value etc. If we have WALEdit#add(Cell)
we can create a new Cell impl where the Key and Value part refer to the same
byte[] and tags part only needs a byte[] copy and recreation.
Any ideas for the extension of Cell? [~stack], [~ram_krish]
> KeyValue to Cell Convert in WALEdit APIs
> ----------------------------------------
>
> Key: HBASE-11805
> URL: https://issues.apache.org/jira/browse/HBASE-11805
> Project: HBase
> Issue Type: Improvement
> Components: wal
> Reporter: Anoop Sam John
> Assignee: Anoop Sam John
> Fix For: 0.99.0, 2.0.0, 0.98.6
>
>
> In almost all other main interface class/APIs we have changed KeyValue to
> Cell. But missing in WALEdit. This is public marked for Replication (Well it
> should be for CP also)
> These 2 APIs deal with KVs
> add(KeyValue kv)
> ArrayList<KeyValue> getKeyValues()
> Suggest deprecate them and add for 0.98
> add(Cell kv)
> List<Cell> getCells()
> And just replace from 1.0
--
This message was sent by Atlassian JIRA
(v6.2#6252)