Details
-
Bug
-
Status: Resolved
-
Low
-
Resolution: Won't Fix
-
None
-
None
-
None
-
Low
Description
During bootstrap with replicate-on-write disabled, our previous approach of widening the replica set via TokenMetadata.getWriteEndpoints is not the correct approach. Instead, since a write is not immediately bound for all replicas, it needs to be sent to a replica that isn't joining or leaving the replica set due to bootstrap.
Example: with rf=3, 4 nodes are active in a particular replica set: 1 is joining the set, 1 is leaving the set, and 2 are stable in the set (not affected by the bootstrap). The 2 stable nodes are the ones to which it is "safe" to send un-replicated writes during the bootstrap.
Note that running without replicate-on-write enabled is never recommended, but while the setting exists, we should do the right thing.
Attachments
Attachments
Issue Links
- is related to
-
CASSANDRA-2397 Improve or remove replicate-on-write setting
- Resolved