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

Compaction parameter minCompactSize should be configurable

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 0.90.0, 0.92.0
    • 0.90.0
    • None
    • None
    • Reviewed

    Description

      In the new compaction algorithm, there is a minCompactSize parameter which is used to include files in selection if they are under this size.

      Currently this is:

          this.minCompactSize = this.region.memstoreFlushSize * 3 / 2; // +50% pad
      

      In a cluster, we had high setting of flush size but were doing frequent small flushes because of HLog eviction. This led to pathological cases in compaction file selection that this algorithm is trying to avoid in the first place.

      Should make this configurable but the existing value should be fine for default in most applications.

      Attachments

        1. HBASE-3320-v1.patch
          0.8 kB
          Jonathan Gray
        2. HBASE-3320-v2.patch
          0.8 kB
          Jonathan Gray

        Issue Links

          Activity

            People

              streamy Jonathan Gray
              streamy Jonathan Gray
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: