[
https://issues.apache.org/jira/browse/HBASE-11805?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14126739#comment-14126739
]
Anoop Sam John commented on HBASE-11805:
----------------------------------------
Reading the Phoenix code, I think I got the issue.
{code}
WALEdit edit = miniBatchOp.getWalEdit(i);
// we don't have a WALEdit for immutable index cases, which still see
this path
// we could check is indexing is enable for the mutation in prePut and
then just skip this
// after checking here, but this saves us the checking again.
if (edit != null) {
KeyValue kv = edit.getKeyValues().get(0);
if (kv == BATCH_MARKER) {
// remove batch marker from the WALEdit
edit.getKeyValues().remove(0);
}
}
{code}
BATCH_MARKER is a KV with null bytes. This removal wont happen now as we
return a new ArrayList from WALEdit#getKeyValues()
Thinking abt how we can solve.
> 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.7
>
> Attachments: HBASE-11805.patch, HBASE-11805_0.98.patch,
> HBASE-11805_0.98_V2.patch, HBASE-11805_0.99.patch, HBASE-11805_V2.patch,
> HBASE-11805_V3.patch
>
>
> 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.3.4#6332)