Couchbase operator issue

Viewed 142

Couchbase operator (enterprise 1.2) helm chart having an issue

With new couchbase cluster following issue is happening always

couchbase-operator couchbase-operator-0.1.2 1.2

time="2019-06-25T04:22:14Z" level=error msg="failed to reconcile: unable to get buckets from cluster: [Client error `unmarshal json response`: json: cannot unmarsh
al number 897.8978978978979 into Go struct field BucketBasicStats.diskFetches of type int], [Client error `unmarshal json response`: json: cannot unmarshal number
897.8978978978979 into Go struct field BucketBasicStats.diskFetches of type int], [Client error `unmarshal json response`: json: cannot unmarshal number 897.897897
8978979 into Go struct field BucketBasicStats.diskFetches of type int]" cluster-name=couchbase-cluster-couchbase-cluster module=cluster
time="2019-06-25T04:22:22Z" level=error msg="failed to reconcile: unable to get buckets from cluster: [Client error `unmarshal json response`: json: cannot unmarsh
al number 575.7622377622378 into Go struct field BucketBasicStats.diskFetches of type int], [Client error `unmarshal json response`: json: cannot unmarshal number
575.7622377622378 into Go struct field BucketBasicStats.diskFetches of type int], [Client error `unmarshal json response`: json: cannot unmarshal number 575.762237
7622378 into Go struct field BucketBasicStats.diskFetches of type int]" cluster-name=couchbase-cluster-couchbase-cluster module=cluster
1 Answers

Update: This is now fixed as of release 1.2.1

Oh that's a good one! Yes it appears diskFetches is actually a rate per second and not an integer counter as assumed by the client code.

Nothing we can do at the moment, but I have flagged as a critical fix and will be in 1.2.1 shortly. For your information, the operator ensures the cluster is correctly sized, balanced and healthy before doing any bucket manipulations (where it fails), so your data is safe.

What I can suggest is you set spec.disableBucketManagement to true in your cluster definition and create buckets either with the UI or a client SDK, this will avoid the condition completely until we can get a hot-fix out.

Related