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

Utilize the lowest seek value when all Filters in MUST_PASS_ONE FilterList return SEEK_NEXT_USING_HINT

VotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 1.4.0, 2.0.0
    • None
    • None
    • Reviewed
    • When all filters in a MUST_PASS_ONE FilterList return a SEEK_USING_NEXT_HINT code, we return SEEK_NEXT_USING_HINT from the FilterList#filterKeyValue() to utilize the lowest seek value.

    Description

      As Preston Koprivica pointed out at the tail of HBASE-4394, when all filters in a MUST_PASS_ONE FilterList return a SEEK_USING_NEXT_HINT code, we should return SEEK_NEXT_USING_HINT from the FilterList to utilize the lowest seek value.

      This would save unnecessary accesses to blocks which are not in scan result.

      A unit test has been added which shows the reduction in the number of blocks accessed when this optimization takes effect.

      Attachments

        1. HBASE-15243-v1.txt
          1 kB
          Ted Yu
        2. HBASE-15243-v2.txt
          2 kB
          Ted Yu
        3. HBASE-15243-v3.txt
          2 kB
          Ted Yu
        4. HBASE-15243-v4.txt
          8 kB
          Ted Yu
        5. HBASE-15243-v5.txt
          8 kB
          Ted Yu
        6. HBASE-15243-v6.txt
          8 kB
          Ted Yu
        7. HBASE-15243-v7.txt
          9 kB
          Ted Yu

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            yuzhihong@gmail.com Ted Yu
            yuzhihong@gmail.com Ted Yu
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment