Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-3191

FilterList with MUST_PASS_ONE and SCVF isn't working

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 0.89.20100924, 0.90.0
    • 0.90.0
    • Filters
    • None
    • Reviewed

    Description

      In a special case the FilterList with MUST_PASS_ONE operator doesn't work correctly:

      • a filter in the list is a SingleColumValueFilter with filterIfMissing=true
      • FilterList.filterKeyValue(KeyValue) is called
      • SingleColumValueFilter.filterKeyValue(KeyValue) is called
      • SingleColumValueFilter.filterKeyValue(KeyValue) returns ReturnCode.INCLUDE if the KeyValue doesn't match a column (to support filterIfMissing)
      • FilterList.filterKeyValue(KeyValue) immediately returns ReturnCode.INCLUDE, remaining filters in the list aren't evaluated.

      However it is required to evaluate remaining filters, otherwise filterRow() filters out rows in case the filter's filterKeyValue() saves state that is used by filterRow(). (SingleColumValueFilter, SkipFilter, WhileMatchFilter do so)

      Attachments

        1. HBASE-3191.patch
          6 kB
          Stefan Seelmann

        Activity

          People

            Unassigned Unassigned
            seelmann Stefan Seelmann
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: