hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-13977) Convert getKey and related APIs to Cell
Date Tue, 30 Jun 2015 16:28:04 GMT

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

Anoop Sam John commented on HBASE-13977:
----------------------------------------

{code}
@Override
    public byte[] getValueArray() {
      throw new IllegalArgumentException("KeyOnlyKeyValue does not work with values.");
    }
{code}
Do we need to change it now? If we miss below kind of checks in some places we will land in
issues
bq.if (!(cell instanceof KeyValue.KeyOnlyKeyValue)) {

BufferedDataBlockEncoder
{code}
public Cell getKeyAsCell() {
  ByteBuffer keyBuffer = ByteBuffer.allocate(current.keyLength);
  keyBuffer.put(current.keyBuffer, 0, current.keyLength);
  keyBuffer.rewind();
  return new KeyValue.KeyOnlyKeyValue(keyBuffer.array());
}
{code}
No need to go with BB create now..  Directly make the Cell out of current.keyBuffer?  Do we
need to clone that (if so also byte[] copy and create KV)?

Cell getLastKey -> to be named as getLastKeyAsCell?
I am ok to continue with old name also.. But then we have to have uniform naming... Some other
APIs we have changed name

{code}
KeyValue kv = KeyValueUtil.ensureKeyValue(scanner.getCell());
halfWriter.append(kv);
{code}
We can avoid the call to ensureKeyValue()

bq.firstOnRow = new KeyValue(CellUtil.cloneRow(lastKV), HConstants.LATEST_TIMESTAMP);
Instead of cloneRow can pass lastKV.getRowArray, offset and length and make KV?

Same here also
bq.firstOnRow = new KeyValue(CellUtil.cloneRow(kv), HConstants.LATEST_TIMESTAMP);


> Convert getKey and related APIs to Cell
> ---------------------------------------
>
>                 Key: HBASE-13977
>                 URL: https://issues.apache.org/jira/browse/HBASE-13977
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>         Attachments: HBASE-13977.patch, HBASE-13977_1.patch, HBASE-13977_2.patch
>
>
> During the course of changes for HBASE-11425 felt that more APIs can be converted to
return Cell instead of BB like getKey, getLastKey. 
> We can also rename the getKeyValue to getCell.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message