Thanks. What about this situation:

* Change RF 2 => 3
* Start repair
* Roll back RF 3 => 2
* repair is still running

I'm wondering what the repair is trying to do? The repair is trying to fix
as RF=2 or still trying to fix like RF=3?

On Thu, Sep 8, 2016 at 2:53 PM, Hannu Kröger <hkro...@gmail.com> wrote:

> Yep, you can fix it by running repair or even faster by changing the
> consistency level to local_quorum and deploying the new version of the app.
>
> Hannu
>
> On 8 Sep 2016, at 17:51, Benyi Wang <bewang.t...@gmail.com> wrote:
>
> Thanks Hannu,
>
> Unfortunately, we started changing RF from 2 to 3, and did see the empty
> result rate is going higher. I assume that  "If the LOCAL_ONE read hit the
> new replica which is not there yet, the CQL query will return nothing." Is
> my assumption correct?
>
> On Thu, Sep 8, 2016 at 11:49 AM, Hannu Kröger <hkro...@gmail.com> wrote:
>
>> Hi,
>>
>> If you change RF=2 -> 3 first, the LOCAL_ONE reads might hit the new
>> replica which is not there yet. So I would change LOCAL_ONE -> LOCAL_QUORUM
>> first and then change the RF and then run the repair. LOCAL_QUORUM is
>> effectively ALL in your case (RF=2) if you have just one DC, so you can
>> change the batch CL later.
>>
>> Cheers,
>> Hannu
>>
>> > On 8 Sep 2016, at 14:42, Benyi Wang <bewang.t...@gmail.com> wrote:
>> >
>> > * I have a keyspace with RF=2;
>> > * The client read the table using LOCAL_ONE;
>> > * There is a batch job loading data into the tables using ALL.
>> >
>> > I want to change RF to 3 and both the client and the batch job use
>> LOCAL_QUORUM.
>> >
>> > My question is "Will the client still read the correct data when the
>> repair is running at the time my batch job loading is running too?"
>> >
>> > Or should I change to LOCAL_QUORUM first?
>> >
>> > Thanks.
>>
>>
>
>

Reply via email to