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

stack commented on HBASE-11805:
-------------------------------

bq. WALEdit implements HeapSize, and as Cell is not having heapSize() we will 
ending up in issue.

CellUtil does heap size?  CellUtil#estimateSizeOf

bq. Also will have to have the setSeqId() which is there only in KeyValue

Man. Its a pity.  Cell is all getters.  Would be shame adding in this one 
setter.  So, let implementations implement Cell and SequenceNumber (add 
setSequenceNumber to the SequenceNumber Interface) on the server side?

bq. KeyValue#length() is the other one which is used by/from WALEdit.

Is that because WALEdit is doing it wrong?  Is this how it preallocates and 
copies over KV?

This is low-priority [~anoopsamjohn] (as per Ram) because we are working on 
read-path first?







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

Reply via email to