Hello,

  The fact that things can always change immediately is not an obstacle to 
linearizability. The lack of linearizability  manifests in inconsistency, i.e. 
you read from multiple nodes and get different results.

  What does Cassandra do in the case of inconsistent reads? Wait or report 
failure? I could not find that one in the docs. Thanks!

     Best, Oliver

From: DuyHai Doan [mailto:[email protected]]
Sent: Thursday, October 16, 2014 1:59 AM
To: [email protected]
Subject: Re: Why is Quorum not sufficient for Linearization?

Hello Timmy

 Even when you write and read using quorum, you still don't have isolation. 
Example:

 Client A write "John Doe" to 3 replicas. Since CL = Quorum, the coordinator 
waits  for 2 acks from the replicas before telling client A that the write is 
successful.

 Now suppose that between the first ack and second ack, another client B writes 
"Helen Sue" at quorum.

 If client A reads the data immediately after the 2nd ack, it would see "Helen 
Sue" and not "John Doe".

 Since you don't have isolation, linearization is not possible. The only way to 
achieve it is to rely on Paxos using lightweight transaction. But even then, 
you only have linearization on 1 partition only.

On Thu, Oct 16, 2014 at 1:45 AM, Timmy Turner 
<[email protected]<mailto:[email protected]>> wrote:
Cassandra in general can't provide guarantee any ordering of the executed 
queries, since nodes may fail or rejoin the in arbitrary points in time.

But why can't it provide ordering for queries run at at least the quorum level? 
Given that none of the updates get lost, why would order still an issue?

Can you maybe illustrate a scenario which shows how/where the order would get 
lost if writes and reads always occurred with quorum consistency?

***********************************************************************************************************************

This email message and any attachments are intended solely for the use of the 
addressee. If you are not the intended recipient, you are prohibited from 
reading, disclosing, reproducing, distributing, disseminating or otherwise 
using this transmission. If you have received this message in error, please 
promptly notify the sender by reply email and immediately delete this message 
from your system. This message and any attachments may contain information that 
is confidential, privileged or exempt from disclosure. Delivery of this message 
to any person other than the intended recipient is not intended to waive any 
right or privilege. Message transmission is not guaranteed to be secure or free 
of software viruses.
***********************************************************************************************************************

Reply via email to