>
> If a READ triggers a READ REPAIR, and then if we do an additional READ
> would then that BLOCK until the “first” READ REPAIR would be done ?
>
> -Tobias
>

Not all read repairs are blocking RRs (aka foreground RRs). There are also
background RRs which by definition are non-blocking because they happen in
the background.

In response to your question, the "additional read" is not blocked. In a
blocking RR, if there is a mismatch in the data returned to the coordinator
from the replicas involved in the query (determined by the read consistency
level) then the coordinator sends a repair to the out-of-sync replica in
the foreground before sending the result back to the client so the read is
blocked until the RR is completed. To reiterate, only the read involved in
the RR is blocked -- not subsequent reads for other data unrelated to the
read being repaired. Cheers!

Reply via email to