Uploaded image for project: 'Kudu'
  1. Kudu
  2. KUDU-2929

Don't starve compactions under memory pressure

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.12.0
    • Component/s: perf, tablet
    • Labels:
      None

      Description

      When a server is under memory pressure, the maintenance manager exclusively will look for the maintenance op that frees up the most memory. Some operations, like compactions, do not register any amount of "anchored memory" and effectively don't qualify for consideration.

      This means that when a tablet server is under memory pressure, compactions will never be scheduled, even though compacting may actually end up reducing memory (e.g. combining many rowsets-worth of CFileReaders into a single rowset). While it makes sense to prefer flushes to compactions, it probably doesn't make sense to do nothing vs compact.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                awong Andrew Wong
                Reporter:
                awong Andrew Wong
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: