Hi Pranay,

I'll try to answer the more precisely as I can.

Note that what I'm going to explain is valid only for reads, write requests
work differently.
I'm assuming you have only one DC.

   1. The coordinator gets a list of sorted live replicas. Replicas are
   sorted by proximity.
   (I'm not sure enough how it works to explain it here, by snitch I guess).

   2. By default *the coordinator keeps the exact list of nodes necessary*
   to ensure the desired consistency (2 nodes for RF=3),
   but, according the read repair chance provided on each column family
   (10% of the requests by default), *it might keep all the replicas* (if
   one DC).

   3. The coordinator checks if enough nodes are alive before trying any
   request. If not, no need to go further.
   You'll have a slightly different error message :

*Live nodes <list> do not satisfy ConsistencyLevel (2 required) *
   4. And in substance the coordinator waits for the exact number of
   responses to achieve the consistency.
   To be more specific, the coordinator is not requesting the same to each
   involved replicas (to one or two, the closest, a full data read, and for
   the others only a digest), and is waiting for the exact number of responses
   to achieve the consistency with at least one full data present.
   (There is of course more to explain, if the digests do not match for
   example ...)

   So you're right when you talk about the fastest responses, but only
   under certain conditions and if additional replicas are requested.


I'm certainly missing some points.
Is that clear enough?

--
Nicolas



Le lun. 19 sept. 2016 à 22:16, Pranay akula <pranay.akula2...@gmail.com> a
écrit :

>
>
> i always have this doubt when a cassandra node got a read request for
> local quorum consistency does coordinator node asks all nodes with replicas
> in that DC for response or just the fastest responding nodes to it who's
> count satisfy the local quorum.
>
> In this case RF is 3 Cassandra timeout during read query at consistency
> LOCAL_QUORUM (2 responses were required but only 1 replica responded)....
> does this mean coordinator asked only two replicas with fastest response
> for data and 1 out of 2 timed out  or  coordinator asked all nodes with
> replicas which means all three (3)  and 2 out of 3 timed out as i only got
> single response back.
>
>
>
> Thanks
>
> Pranay
>

Reply via email to