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

Lock contention in WatchMetadata and findWatcherByIndexerId

    XMLWordPrintable

Details

    • Triaged
    • 0
    • No

    Description

      There is a lock contention in WatchMetadata and findWatcherByIndexerId when WatchMetadata gets triggered to updateIndexerList due to poolChangeNotification and findWatcherByIndexerId gets triggered in query plan phase i.e. from Refresh -> safeUpdate -> updateTopology -> FindServiceForIndexer

      Steps to repro like in the Customer's environment

      • Create a 4 node cluster kv+n1ql, index, index index
      • Create 4 or more indexes with one replica each
      • Failover an indexer node
      • Add delay in handleClientStats of lifecycle manager so that watcher addition gets delayed.
      • Add back the indexer node and rebalance
      • Now scan any index
      • While the watcher is being added back scan must be triggered resulting in long plan phase timings.

      Attachments

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

        Activity

          People

            yash.dodderi Yash Dodderi
            sai.teja Sai Krishna Teja
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty