Details
-
Improvement
-
Resolution: Unresolved
-
Major
-
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
- relates to
-
MB-52881 [System Test][CBM] backup task failed with error - failed to create gocbcore agent: agent failed to connect to the cluster: authentication failure
- Resolved
Gerrit Reviews
For Gerrit Dashboard: GOCBC-1324 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
180603,6 | GOCBC-1324: WaitUntilReady should check all pipelines when no config seen | master | gocbcore | Status: ABANDONED | -2 | 0 |