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

Recovery of BucketCache and Prefetched data after RS Crash

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 2.6.0, 3.0.0-beta-1
    • BucketCache
    • None
    • Hide
      This adds a background thread into the RS process, that periodically checks if there were updates in the bucket cache. If the bucket cache has been updated since the last check, it saves the bucket cache index to the file path defined by "hbase.bucketcache.persistent.path", as well as the list of completed prefetched files into the path defined by "hbase.prefetch.file.list.path" property. The thread is named as "bucket-cache-persister", and the check interval is defined by the "hbase.bucketcache.persist.intervalinmillis" property, and it defaults to 1000 (1 second). This thread is only enabled if "hbase.bucketcache.persistent.path" is set in the configuration.
      Show
      This adds a background thread into the RS process, that periodically checks if there were updates in the bucket cache. If the bucket cache has been updated since the last check, it saves the bucket cache index to the file path defined by "hbase.bucketcache.persistent.path", as well as the list of completed prefetched files into the path defined by "hbase.prefetch.file.list.path" property. The thread is named as "bucket-cache-persister", and the check interval is defined by the "hbase.bucketcache.persist.intervalinmillis" property, and it defaults to 1000 (1 second). This thread is only enabled if "hbase.bucketcache.persistent.path" is set in the configuration.

    Description

      HBASE-27313 introduced the ability to persist a list of hfiles for which prefetch has already been completed, so the we can avoid prefetching those files again in the event of a graceful restart, but it doesn't cover crash scenarios, as if the RS is killed or abnormally stopped, the list wouldn't be saved.

      This change aims to persist the list of already prefetched from a background thread that periodically checks cache state and persists the list if updates have happened.

      Attachments

        Issue Links

          Activity

            People

              skota@cloudera.com Shanmukha Haripriya Kota
              skota@cloudera.com Shanmukha Haripriya Kota
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: