XMLWordPrintableJSON

    Details

    • Type: Sub-task
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.0.0
    • Component/s: regionserver, Scanners
    • Labels:
      None
    • Hadoop Flags:
      Incompatible change, Reviewed
    • Release Note:
      Hide
      Change to support offheaping.

      Incompatible change for filters ColumnPrefixFilter and MultipleColumnPrefixFilter

      Changes parameters to filterColumn so takes a Cell rather than a byte [].

      hbase-client-1.2.7-SNAPSHOT.jar, ColumnPrefixFilter.class
      package org.apache.hadoop.hbase.filter
      ColumnPrefixFilter.filterColumn ( byte[ ] buffer, int qualifierOffset, int qualifierLength ) : Filter.ReturnCode
      org/apache/hadoop/hbase/filter/ColumnPrefixFilter.filterColumn:([BII)Lorg/apache/hadoop/hbase/filter/Filter$ReturnCode;

      Ditto for filterColumnValue in SingleColumnValueFilter. Takes a Cell instead of byte array.

      Show
      Change to support offheaping. Incompatible change for filters ColumnPrefixFilter and MultipleColumnPrefixFilter Changes parameters to filterColumn so takes a Cell rather than a byte []. hbase-client-1.2.7-SNAPSHOT.jar, ColumnPrefixFilter.class package org.apache.hadoop.hbase.filter ColumnPrefixFilter.filterColumn ( byte[ ] buffer, int qualifierOffset, int qualifierLength ) : Filter.ReturnCode org/apache/hadoop/hbase/filter/ColumnPrefixFilter.filterColumn:([BII)Lorg/apache/hadoop/hbase/filter/Filter$ReturnCode; Ditto for filterColumnValue in SingleColumnValueFilter. Takes a Cell instead of byte array.

      Description

      Now we have added an extension for Cell in server side, ByteBufferedCell, where Cells are backed by BB (on heap or off heap). When the Cell is backed by off heap buffer, the getXXXArray() APIs has to create temp byte[] and do data copy and return that. This will be bit costly. We have avoided this in areas like CellComparator/SQM etc. Filter area was not touched in that patch. This Jira aims at doing it in Filter area.
      Eg : SCVF checking the cell value for the given value condition. It uses getValueArray() to get cell value bytes. When the cell is BB backed, it has to use getValueByteBuffer() API instead.

        Attachments

        1. HBASE-12296_v1.patch
          67 kB
          Anoop Sam John
        2. HBASE-12296_v1.patch
          67 kB
          Anoop Sam John

          Activity

            People

            • Assignee:
              anoop.hbase Anoop Sam John
              Reporter:
              ram_krish ramkrishna.s.vasudevan
            • Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: