Peter Schuller <peter.schul...@infidyne.com> wrote:

>> i have RF=3, my row/column lives on 3 nodes right?  if (for some reason, eg
>> a timed-out write at quorum) node 1 has a 'new' version of the row/column
>> (eg clock = 10), but node 2 and 3 have 'old' versions (clock = 5), when i
>> try to read my row/column at quorum, what do i get back?
>
>You either get back the new version or the old version, depending on
>whether node 1 was participated in the read. In your scenario, the
>prevoius write at quorum failed (since it only made it to one node),
>so this is not a violation of the contract.
>
>Once node 2 and/or 3 return their response, read repair (if it is
>active) will cause re-read and re-conciliation followed by a row
>mutation being send to the nodes to correct the column.
>
>> do i get the clock 5 version because that is what the quorum agrees on, and
>
>No; a quorum of node is waited for, and the newest column wins. This
>accomplish the reads-see-write invariant.
>
>-- 
>/ Peter Schuller (@scode, http://worldmodscode.wordpress.com)

Reply via email to