Understand simple mechanics first, decide how to act later.


Without –PR there’s no difference from which host to run repair, it runs for the whole 100% range, from start to end, the whole cluster, all nodes, at once.


With –PR it runs only for a primary range of a node you are running a repair.

Let say you have simple ring of 3 nodes with RF=2 and ranges (per node) N1=C-A, N2=A-B, N3=B-C (node tokens are N1=A, N2=B, N3=C). No rack, no DC aware.

So running repair with –PR on node N2 will only repair a range A-B, for which node N2 is a primary and N3 is a backup. N2 and N3 will synchronize A-B range one with other. For other ranges you need to run on other nodes.


Without –PR running on any node will repair all ranges, A-B, B-C, C-A. A node you run a repair without –PR is just a repair coordinator, so no difference, which one will be next time.



Best regards / Pagarbiai
Viktor Jevdokimov
Senior Developer

Phone: +370 5 212 3063, Fax +370 5 261 0453
J. Jasinskio 16C, LT-01112 Vilnius, Lithuania
Follow us on Twitter: @adforminsider

Disclaimer: The information contained in this message and attachments is intended solely for the attention and use of the named addressee and may be confidential. If you are not the intended recipient, you are reminded that the information remains the property of the sender. You must not use, disclose, distribute, copy, print or rely on this e-mail. If you have received this message in error, please contact the sender immediately and irrevocably delete this message and any copies.

From: David Daeschler [mailto:david.daeschler@gmail.com]
Sent: Tuesday, June 05, 2012 08:59
To: user@cassandra.apache.org
Subject: nodetool repair -pr enough in this scenario?




Currently I have a 4 node cassandra cluster on CentOS64. I have been running nodetool repair (no -pr option) on a weekly schedule like:


Host1: Tue, Host2: Wed, Host3: Thu, Host4: Fri


In this scenario, if I were to add the -pr option, would this still be sufficient to prevent forgotten deletes and properly maintain consistency?


Thank you,
- David