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

XDCR CCR - Prevent unnecessary V8 GC runs

    XMLWordPrintable

Details

    • Untriaged
    • 1
    • Unknown

    Description

      With the V8 upgraded to v10.7.21 , am empty js-evaluator worker (no code loaded and no traffic) takes up around 1.54 MB heap memory.

      XDCR CCR for some reason has chosen to set the heap quota as 1.50 MB. Heap Quota dictates how frequently should the js-evaluator's GC run to contain it's memory usage.

      However, keeping the heap quota to as low as 1.5 MB is a misconfiguration which causes GC to be triggered unnecessarily on an empty js-evaluator worker. These uneccesary GC runs might eat up precious CPU resources and may impact XDCR's performance.

      Solution:

      1. Either increase the heap quota to a respectable limit such as 150 MB (an empty jsevaluator's worker will never hit 150 MB).

      2. Another option, which the XDCR team is best equipped to make a decision on, is to set number of js-evaluator's workers to 0. No workers, means no V8 isolates, no heap, no GC.

      Attachments

        For Gerrit Dashboard: MB-54317
        # Subject Branch Project Status CR V

        Activity

          Build couchbase-server-7.0.5-7634 contains goxdcr commit c81ec68 with commit message:
          MB-54317: Increase js evaluator quota

          build-team Couchbase Build Team added a comment - Build couchbase-server-7.0.5-7634 contains goxdcr commit c81ec68 with commit message: MB-54317 : Increase js evaluator quota

          Build couchbase-server-7.0.5-7634 contains goxdcr commit 4f28172 with commit message:
          MB-54317: prevent CCR replication from created if JSEngine is disabled

          build-team Couchbase Build Team added a comment - Build couchbase-server-7.0.5-7634 contains goxdcr commit 4f28172 with commit message: MB-54317 : prevent CCR replication from created if JSEngine is disabled

          Build couchbase-server-7.0.5-7634 contains goxdcr commit 91e59b7 with commit message:
          MB-54317: set JSEngineWorkers to 0 by default

          build-team Couchbase Build Team added a comment - Build couchbase-server-7.0.5-7634 contains goxdcr commit 91e59b7 with commit message: MB-54317 : set JSEngineWorkers to 0 by default

          Ayush Nayyar  can you run  basic XDCR sanity test to close this ticket?

          chanabasappa.ghali Chanabasappa Ghali added a comment - Ayush Nayyar   can you run  basic XDCR sanity test to close this ticket?
          ayush.nayyar Ayush Nayyar added a comment -

          Sanity tests pass.

          ayush.nayyar Ayush Nayyar added a comment - Sanity tests pass.

          People

            ayush.nayyar Ayush Nayyar
            abhishek.jindal Abhishek Jindal
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty