hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ramkrishna.s.vasudevan (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-11805) KeyValue to Cell Convert in WALEdit APIs
Date Mon, 25 Aug 2014 10:56:57 GMT

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

ramkrishna.s.vasudevan commented on HBASE-11805:

bq.In almost all other main interface class/APIs we have changed KeyValue to Cell.
Still not in write path and in Memstores.  Some of the problems mentioned in the comment above
are applicable for those areas also.  But in write path doing it would not be necessary. until
we end up in a new format of hfileblock.
bq. we need different type of Tag which only has to go into WAL
But in one way having WALEdit having KV is right becuase there is no seperated byte array
for each of the row key components and so KeyValue would be the best fit here, but  if Cell
atleast the copying of tags/values could be done (as in this requirement). Cells would be
of use when we have to do some copying but still reduce the copy that happens.
We had a similar argument over in HBASE-7320 where there was a need to strip the tags without
rewriting them. We still want that behaviour in places where the tags should not be sent to
the client (atleast the tags of security related things should be stripped). We had exact
same discussion there.

> 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

View raw message