[
https://issues.apache.org/jira/browse/HBASE-11777?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14114120#comment-14114120
]
Anoop Sam John commented on HBASE-11777:
----------------------------------------
bq.You know, servers-side, we have to be able to set the sequence id on the
Cell/KV when writing at least (we set the sequenceid after we've written the
WAL in ringbuffer event handler... see stampRegionSequenceId. Its stamping a
KV, not a Cell. So its another place where we need to be able to set seqid on a
Cell.
Yes, we late bind the seqId to the ref to the added Cells in MemStore. Till
MemStore it takes Cells as param and in HLog level it is KV. And we use
KeyValueUtil.ensureKeyValue(Cell) to convert this to a KV. But this is
dangerous. If the passed in Cell is not an instance of KV, we recreate a new KV
and this is no longer a reference to the original Cell added to MemStore!!
I am trying out with this and changing some places from KV to Cell as this
blocks HBASE-11805
> Find a way to use KV.setSequenceId() on Cells on the server-side read path
> --------------------------------------------------------------------------
>
> Key: HBASE-11777
> URL: https://issues.apache.org/jira/browse/HBASE-11777
> Project: HBase
> Issue Type: Improvement
> Affects Versions: 0.99.0
> Reporter: ramkrishna.s.vasudevan
> Assignee: ramkrishna.s.vasudevan
> Attachments: CellWithSequenceNumber.java
>
>
> Over in HBASE-11591 there was a need to set the sequenceId of the HFile to
> the bulk loaded KVs. Since we are trying to use the concept of Cells in the
> read path if we need to use setSequenceId(), then the Cell has to be
> converted to KV and only KeyValue impl has the accessor setSequenceId().
> [~anoop.hbase] suggested if we can use a Server side impl of Cell and have
> these accessors in them.
> This JIRA aims to solve this and see the related code changes that needs to
> be carried out for this.
--
This message was sent by Atlassian JIRA
(v6.2#6252)