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

Avoid major compactions on region server startup

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.3.1, 0.98.24, 2.0.0
    • 1.4.0, 1.3.3, 2.0.0
    • Compaction
    • None
    • Reviewed

    Description

      The HRegionServer.CompactionChecker chore wakes up every 10s and for each store in each region mods against a chore frequency (by default slightly under 3 hours) to see if it's time to check if a major compaction is necessary for that store.

      The check to see if it needs to check for major compactions is calculated by
      if (iteration % multiplier != 0) continue;

      where iteration is the number of times the chore has woken up.

      Because 0 % anything is 0, this will always check for necessary major compactions on each store when this chore is first run after the region server starts up. This can result in compaction storms when doing a rolling restart, because, for example, the new instance of the region server might get a lower jitter value than the old one had.

      Attachments

        1. HBASE-17912.patch
          1 kB
          Geoffrey Jacoby

        Activity

          People

            gjacoby Geoffrey Jacoby
            gjacoby Geoffrey Jacoby
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: