假设我们有一个具有以下环的Cassandra集群: A -> B -> C -> D (没有虚拟节点),我们假设所有的数据存储在RF=2 。 现在让我们说, B死了,留给我们下面的环A -> C -> D 这意味着C将需要A的主要范围的复制品, D是B的主要范围的复制品。 ( B的主要范围不需要复制到C因为C已经拥有一个副本)。
我的问题如下:
C上运行nodetool repair ,它会得到A的主要范围的副本,但它会将B的主要范围的副本stream到D ? nodetool repair -pr在A会将它的主要范围streamC ? nodetool repair -pr在C会将B的主要范围stream到D ? 这个问题被问到,并在StackOverflow上回答, 有关nodetool修复的说明-pr 。
为了回答这个问题,答案是: