Details
-
Improvement
-
Resolution: Resolved
-
Blocker
-
None
-
None
-
None
-
0
Description
A bug was reported in Couchbase Capella - provisioned clusters here - AV-38832 (Fail to rebalance in new node if existing node recovered from failover)
The scenario:
A 3 node cluster is deployed in Couchbase cloud and after a successful deployment, we failover a node from the Couchbase server UI and immediately at the same time add a new node via the Couchbase cloud UI to bring the total node count in the cluster to 4.
On doing this, the cluster rebalancing gets stuck because we set the recoveryType of the failed over node to `delta` at which point the state is `inactiveFailed` and it changes the state of the node later on to `inactiveAdded` and the new node which is getting added simultaneously to the cluster also has the same status of `inactiveAdded`
Now we cant tell the difference between a new node that was added to the cluster and the node that was failed over as both have the same state - `inactiveAdded`
Setting the node recovery type to `delta` or `full` becomes tricky because of this especially in this scenario when we get back this error from the cb server rest api on performing a `delta` recovery for the failed over node - `{*}
{"otpNode":"invalid node name or node can't be used for delta recovery"}{*}`
Can we improve the rest api for rebalancing to provide a status that differentiates between a node that was failed over and a node that was added as a part of a scaling operation?