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-12282) Ensure Cells and its implementations work with Buffers also
Date Wed, 29 Oct 2014 12:03:34 GMT

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

ramkrishna.s.vasudevan commented on HBASE-12282:
------------------------------------------------

{code}
+    if (left.getQualifierArray() != null && right.getQualifierArray() != null) {
+      return Bytes.compareTo(left.getQualifierArray(), left.getQualifierOffset(),
+          left.getQualifierLength(), right.getQualifierArray(), right.getQualifierOffset(),
+          right.getQualifierLength());
+    } else if (((left.getQualifierArray() != null && left.getQualifierBuffer() ==
null) && right
+        .getQualifierBuffer() != null)) {
+      return ByteBufferUtils.compareTo(left.getQualifierArray(), left.getQualifierOffset(),
+          left.getQualifierLength(), right.getQualifierBuffer(), right.getQualifierOffset(),
+          right.getQualifierLength());
+    } else if (left.getQualifierBuffer() != null
+        && (right.getQualifierBuffer() == null && right.getQualifierArray()
!= null)) {
+      return ByteBufferUtils.compareTo(left.getQualifierBuffer(), left.getQualifierOffset(),
+          left.getQualifierLength(), right.getQualifierArray(), right.getQualifierOffset(),
+          right.getQualifierLength());
+    } else {
+      return ByteBufferUtils.compareTo(left.getQualifierBuffer(), left.getQualifierOffset(),
+          left.getQualifierLength(), right.getQualifierBuffer(), right.getQualifierOffset(),
+          right.getQualifierLength());
+    }
{code}
So as done here we may have to use hasArray on both the left Cell and rightCell and do the
comparison.

> Ensure Cells and its implementations work with Buffers also
> -----------------------------------------------------------
>
>                 Key: HBASE-12282
>                 URL: https://issues.apache.org/jira/browse/HBASE-12282
>             Project: HBase
>          Issue Type: Sub-task
>          Components: regionserver, Scanners
>    Affects Versions: 0.99.1
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>             Fix For: 2.0.0, 0.99.2
>
>         Attachments: HBASE-12224_2.patch
>
>
> This issue can be used to brainstorm and then do the necessary changes for the offheap
work.  All impl of cells deal with byte[] but when we change the Hfileblocks/Readers to work
purely with Buffers then the byte[] usage would mean that always the data is copied to the
onheap.  Cell may need some interface change to implement this.



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

Mime
View raw message