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

optimize 5 sec /getIndexStatus calls from UI

    XMLWordPrintable

Details

    • 1

    Description

      UI makes /getIndexStatus REST API call every 5 seconds to indexer. Indexer gathers index information from all indexer nodes in the cluster and responds back.

      With 1000s of indexes, this may not scale well and the CPU cost/garbage generated is expensive.

      1. This REST API seems to be called even if UI is not being used. Is this required?

      2. Is it possible to fetch the index list for a subset e.g. default scope/collection and rest could be fetched on demand?

      3. Index Status(Ready/Created etc) and Stats(items etc) together make up the summary stats for each index line item on the UI. With prometheus, the stats will be fetched every 30 seconds(not sure if there is an option to change the interval on demand). This can make the whole index summary misleading as stats and status can be out of sync for 20-25 seconds.

      4. We can discuss more sophisticated schemes e.g. /getIndexStatus can return only the list of changed indexes based on its cache, if it is feasible for UI to deal with it. UI will still have the option to fetch all, whenever required.

      Attachments

        Issue Links

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

          Activity

            People

              ajay.bhullar Ajay Bhullar
              deepkaran.salooja Deepkaran Salooja
              Votes:
              0 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty