Open kos-team opened 2 months ago
num_tokens modification is not allowed by Cassandra itself, so this feature is not about cass-operator.
The proper way to modify num_tokens would be to create separate datacenter as having different number on different nodes is not really recommended.
Automated decommission on config change is not currently on our radar as a feature as that could cause unintended data loss and availability issue.
What happened?
We tried to change the configuration of an existing Cassandra cluster, by changing the
cassandra-yaml.num_tokens
from16
to8
. The operator proceeds to update the StatefulSets of the racks, by changing the arguments of the Cassandra Pods. However, the restarted Pods are stuck atUnready
state. The readiness probe keeps returning 500 errors.What did you expect to happen?
The operator should be able to update the Cassandra configuration correctly. A restart of the Pod is not the right procedure for changing the num_tokens of Cassandra. To properly change the
num_tokens
, the operator needs to decommission the node and let the node to rejoin the cluster with the updatednum_tokens
configuration.How can we reproduce it (as minimally and precisely as possible)?
cassandra-yaml.num_tokens
from16
to8
in config:cass-operator version
1.22.0
Kubernetes version
1.29.1
Method of installation
Helm
Anything else we need to know?
No response
┆Issue is synchronized with this Jira Story by Unito ┆Issue Number: CASS-2