Uploaded image for project: 'Couchbase Go SDK'
  1. Couchbase Go SDK
  2. GOCBC-1324

WaitUntilReady should check all pipelines are errored when no config seen

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Unresolved
    • Major
    • .future
    • None
    • None
    • None
    • 2
    • SDK41

    Description

      At the moment the diagnostics component listens for bootstrap failures and sets an internal error when they occur. When WaitUntilReady is used and no config has been seen yet then we check to see if this error is set and if so we'll report CONNECTION_ERROR. In the case that desired state is degraded we should actually check on all of the pipelines somehow because one pipeline client failing bootstrap doesn't mean none of them can connect. Maybe maintain a map of pipelines to error and only fail once the map length == number of pipelines? (This isn't quite so simple as there can be n pipeline clients for a pipeline).

      We also need to consider the case where we've tried to cccp against that erroring node as we check the poller for errors too, I'm unsure how we can handle this part. Possibly check which node the poller error has been reported from?

      Code that is concerned here: https://github.com/couchbase/gocbcore/blob/master/diagnosticscomponent.go#L502-L522

      Attachments

        Issue Links

          For Gerrit Dashboard: GOCBC-1324
          # Subject Branch Project Status CR V

          Activity

            People

              charles.dixon Charles Dixon
              charles.dixon Charles Dixon
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty