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

Allow INCLUDE_AND_NEXT_COL in filters and use it in ColumnPaginationFilter

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.94.3, 0.95.0
    • Filters, Performance
    • None
    • Reviewed

    Description

      There are various usecases and filter types where evaluating the filter before version are handled either do not make sense, or make filter handling more complicated.

      Also see this comment in ScanQueryMatcher:

          /**
           * Filters should be checked before checking column trackers. If we do
           * otherwise, as was previously being done, ColumnTracker may increment its
           * counter for even that KV which may be discarded later on by Filter. This
           * would lead to incorrect results in certain cases.
           */
      

      So we had Filters after the column trackers (which do the version checking), and then moved it.
      Should be at the discretion of the Filter.
      Could either add a new method to FilterBase (maybe excludeVersions() or something). Or have a new Filter wrapper (like WhileMatchFilter), that should only be used as outmost filter and indicates the same (maybe ExcludeVersionsFilter).

      See latest comments on HBASE-5229 for motivation.

      Attachments

        1. HBASE-5257-0.94.txt
          10 kB
          Varun Sharma
        2. HBASE-5257-0.92.txt
          10 kB
          Varun Sharma
        3. 5257-trunk-v2.txt
          9 kB
          Ted Yu
        4. 5257-trunk.txt
          8 kB
          Ted Yu
        5. 5257-0.92.addendum
          0.6 kB
          Ted Yu

        Issue Links

          Activity

            People

              varunsharma Varun Sharma
              larsh Lars Hofhansl
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: