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

Optimize flushing of the Store cache for max versions and (new) min versions

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

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.92.0
    • 0.92.0
    • regionserver
    • None
    • Reviewed

    Description

      As discussed with with Jon, there is room for improvement in how the memstore is flushed to disk.
      Currently only expired KVs are pruned before flushing, but we can also prune versions if we find at least maxVersions versions in the memstore.
      The same holds for the new minversion feature: If we find at least minVersion versions in the store we can remove all further versions that are expired.

      Generally we should use the same mechanism here that is used for Compaction. I.e. StoreScanner. We only need to add a scanner to Memstore that can scan along the current snapshot.

      Attachments

        1. 4241.txt
          12 kB
          Lars Hofhansl
        2. 4241-v2.txt
          13 kB
          Lars Hofhansl
        3. 4241-v8.txt
          15 kB
          Lars Hofhansl

        Issue Links

        Activity

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

          People

            larsh Lars Hofhansl
            larsh Lars Hofhansl
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment