mirror of https://github.com/apache/cassandra
This is the follow-up commit of CASSANDRA-18935 where we set RPC_READY to false when transports were shut down in runtime. The problem is that the current logic in StorageProxy.findSuitableEndpoint method, used for the selection of a leader for counter mutations, is filtering out all endpoints which do not have RPC_READY set to true. Hence, if there is a deployment of a coordinator node (not joining a ring) and storage nodes which have transports turned off (e.g. for security reasons), then a coordinator node will select no endpoint as a counter mutation leader which renders counter mutations impossible. This change just reverts the original fix which was setting RPC_READY to false when transports were shut down in runtime (e.g. by nodetool disablebinary). For trunk (to be 5.1 at time of writing this), there is already TCM in place and the correct fix yet to be implemented is to decouple from checking RCP_READY state and base it e.g. on JOINED state from TCM perspective. Please follow CASSANDRA-19103 where this will be addressed. patch by Stefan Miklosovic; reviewed by Brandon Williams for CASSANDRA-18935 |
||
|---|---|---|
| .. | ||
| anttasks/org/apache/cassandra/anttasks | ||
| burn/org/apache/cassandra | ||
| conf | ||
| data | ||
| distributed/org/apache/cassandra | ||
| long/org/apache/cassandra | ||
| microbench/org/apache/cassandra/test/microbench | ||
| resources | ||
| unit/org/apache/cassandra | ||