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

Idle WALs can consume significant memory

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.7.0
    • 1.12.0
    • log, tserver
    • None

    Description

      I grabbed a heap sample of a tserver which has been running a write workload for a little while and found that 750MB of memory is used by faststring allocations inside WritableLogSegment::WriteEntryBatch. It seems like this is the 'compress_buf_' member. This buffer always resizes up during a log write but never shrinks back down, even when the WAL is idle. We should consider clearing the buffer after each append, or perhaps after a short timeout like 100ms after a WAL becomes idle.

      Attachments

        1. heap.svg
          111 kB
          Todd Lipcon

        Activity

          People

            awong Andrew Wong
            tlipcon Todd Lipcon
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: