Details
-
Improvement
-
Resolution: Fixed
-
Major
-
None
-
None
-
None
-
2.6.0 - Hopefully Done?, 2.6.0 Documentation - Cleanup, 2.6.0 -> 2.4.3 & 2.5.1, 2.6.1 -> 2.4.3 & 2.5.1, Pre-Christmas Completions, Christmas and Beyond
-
5
Description
Base Information: https://review.couchbase.org/c/ns_server/+/192124
During Bucket reconciliation, we should allow the modification of a bucket between Couchstore and Magma (in either direction), only for Couchbase Server 7.6
During Pod reconciliation, if the cluster version is greater than 7.6, a check should be made to each bucket to ensure that the storageBackend of each node found at
curl -u Administrator:asdasd
|
http://127.0.0.1:9000/pools/default/buckets/foo | jq
|
'.nodes[].storageBackend' "couchstore" "couchstore"
|
matches the storage backend for the bucket found at
curl -u Administrator:asdasd
|
http://127.0.0.1:9000/pools/default/buckets/foo | jq '.storageBackend'
|
"magma"
|
If these values do not match, the pod should be swap rebalanced out of the cluster and replaced with a new pod.
This step should occur after Pod changes but before API changes in the Reconciliation Loop. (We don't want to double work if pod changes result in a swap rebalance anyway)
This should check all buckets in the system, not just K8S managed buckets. You can use
GET /pools/default/buckets |
to retrieve the list of buckets to check.