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

Protect KV-Engine from unresponsive DCP clients

    XMLWordPrintable

Details

    • Triaged
    • No

    Description

      Not all DCP clients implement NOOP support. This means KV engine has a hard time detecting if such clients are hung / unresponsive. We take a conservative approach and don't forcibly disconnect anyone. But this can lead to various problems if clients misbehave. e.g.

      • MB-23161 - client has failed to drain our send buffer and we fail to delete a bucket.
      • MB-22488 - several hung backup clients caused view indexing to hang.

      This ticket is to find a way to make KV Engine more resilient to such client behaviour. Some potentials include:

      1. Make DCP NOOP mandatory (might be too much effort for clients / horse may have already bolted on this one)
      2. Force clients to support NOOP as they adopt new features (e.g XATTRS / Collections) so the situation improves over time.
      3. Have our own internal watchdog that monitors and aggressively disconnects unresponsive non-NOOP clients.

      Attachments

        Issue Links

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

          Activity

            People

              dhaikney David Haikney (Inactive)
              dhaikney David Haikney (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              16 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty