Предположим, у нас есть кластер Cassandra со следующим кольцом: A -> B -> C -> D
(без виртуальных узлов), и мы предполагаем, что все данные хранятся в RF=2
. Теперь скажем, что B
умирает, оставив нам следующее кольцо A -> C -> D
. Которое значит что C
понадобится реплика A
основной диапазон и D
копия B
основной диапазон. (B
основной диапазон не нужно копировать в C
так как C
уже держит реплику).
У меня следующие вопросы:
nodetool repair
на C
он получит копию A
основной диапазон, но будет ли он передавать копию B
основной диапазон до D
?nodetool repair -pr
на A
будет ли он передавать свой основной диапазон на C
?nodetool repair -pr
на C
будет ли он стримить B
основной диапазон до D
?Этот вопрос был задан и дан ответ на StackOverflow, Разъяснения по поводу ремонта nodetool -pr.
Чтобы ответить на этот вопрос здесь, ответы таковы: