On Thu, Feb 28, 2013 at 11:39 PM, Hiller, Dean <Dean=
.Hiller@nrel.gov> wrote:

--047d7b5da89105d1f004d6db6be5--

Isn't it true if I have 6 nodes, I could= run nodetool repair on just 2 nodes(RF=3D3) instead of using nodetool repa= ir =96pr???

Yes, it is true.

And to precise further, in your case you have 2 options:<=
/div>

=A01) doing repair *without* -pr on 2 nodes (assuming you p=
ick the correct 2 nodes, it's *not* any 2 nodes)

=A02) doing a repair *with* -pr on the 6 nodes

<=
br>

Both of those cases would 1) repair the full ring and 2=
) do the same amount of work.

=A0

What is the advantage of =96pr then?

=
As it happens, your case is a special case. You have a number of node that =
is a multiple of your replication factor. Now if that wasn't the case (=
say 5, 7 or 8 nodes with RF=3D3), then there is *no way* you can repair *wi=
thout* -pr the whole cluster without doing *more* work than by doing a repa=
ir *with* -pr on all nodes.

So the advantages of --pr (which btw, shoul=
d be use for repair the whole cluster, not when you want to rebuild a speci=
fic node) are:

=A01) it always do the minimum of work, whil=
e repair without --pr is wasteful if the number of nodes is not a multiple =
of the replication factor (no matter how smart you are at scheduling the re=
pairs).

=A02) even if your number of nodes is a multiple of the replicat=
ion factor, you still have to make sure you pick the right N/RF nodes to re=
pair if you don't use -pr. If you don't pick the correct ones, you =
will not repair the full ring. Using -pr is much more shoot-footing free: y=
ou have to run it on every node, period.

--

Sylvain