Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-57777

[7.2.1 BP] - Reduce memory overhead from TsVbuuid

    XMLWordPrintable

Details

    Description

      When mutations get queued up in indexer, there is a corresponding tsVbuuid generated every 5ms for bookkeeping and it gets queued up as well.

      The size of each TsVbuuid will be atleast 40KB for 1024 vbuckets. TsVbuuid can easily grow to 10k-20k, the memory allocated just for TsVbuuid comes to 400MB-800MB for a single bucket. Indexer allocates 90% of quota for storage and tries to limit the overheads to 10%. But with high memory allocation for TsVbuuid, storage needs to release some of its quota.

      Overhead of TsVbuuid data structure can be reduced by merging the queued up tsVbuuid when it goes beyond a threshold.

      This is specially helpful in small node configs.

       

      Issue Resolution
      When the indexer was unable to keep up with KV mutations, and there was a queue of mutations within the indexer, there was a large memory overhead from the bookkeeping of queued up mutations. Indexer has been improved to optimize memory usage so that the bookkeeping overhead is reduced for queued up mutations.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              deepkaran.salooja Deepkaran Salooja
              deepkaran.salooja Deepkaran Salooja
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty