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

Eventing Service should honor the CPU & Memory limits set in cgroups

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Critical
    • Morpheus
    • 7.1.1
    • eventing
    • None
    • Untriaged
    • 1
    • Unknown

    Description

      As part of addressing MB-47591 in 7.1.1, the services need to respect the value of the GOMAXPROCS env var if specified. FTS does this in a simple way here, though it seems a bit unnecessary as according to https://pkg.go.dev/runtime#GOMAXPROCS, the GOMAXPROCS default is runtime.NumCPU anyway. Query does it in a slightly more complicated fashion here, but it looks like it also works.

      On first look at the code, it appears eventing-producer process already honors whatever is set in GOMAXPROCS. The part that's not very clear is how CPU utilisation of eventing-consumer processes (as many as number of deployed functions) can be controlled. It appears, linux cgroup itself should take care of it. But we should analyse if there are any implications. Finally, eventing memory quota should be set as MIN(eventing-quota, cgroup_mem_limit)

      Attachments

        Issue Links

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

          Activity

            People

              sujay.gad Sujay Gad
              jeelan.poola Jeelan Poola
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty