Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Cassandra Wiki" for 
change notification.

The "API" page has been changed by jeremyhanna.
The comment on this change is: Updating the read/write consistency tables to be 
current for 0.7.
http://wiki.apache.org/cassandra/API?action=diff&rev1=12&rev2=13

--------------------------------------------------

  
  ==== Write ====
  ||'''Level''' ||'''Behavior''' ||
- ||`ZERO` ||Ensure nothing. A write happens asynchronously in background ||
+ ||`ZERO` ||Ensure nothing. A write happens asynchronously in background. 
Until [[https://issues.apache.org/jira/browse/CASSANDRA-685|CASSANDRA-685]] is 
fixed: If too many of these queue up, buffers will explode and bad things will 
happen. ||
- ||`ANY` ||Ensure that the write has been written to at least 1 node, 
including hinted recipients. ||
+ ||`ANY` ||(Requires 0.6) Ensure that the write has been written to at least 1 
node, including HintedHandoff recipients. ||
- ||`ONE` ||Ensure that the write has been written to at least 1 node's commit 
log and memory table before responding to the client. ||
+ ||`ONE` ||Ensure that the write has been written to at least 1 replica's 
commit log and memory table before responding to the client. ||
- ||`QUORUM` ||Ensure that the write has been written to `<ReplicationFactor> / 
2 + 1` nodes before responding to the client. ||
+ ||`QUORUM` ||Ensure that the write has been written to `N / 2 + 1` replicas 
before responding to the client. ||
+ ||`LOCAL_QUORUM` ||Ensure that the write has been written to 
<ReplicationFactor> / 2 + 1 nodes, within the local datacenter (requires 
NetworkTopologyStrategy) ||
+ ||`EACH_QUORUM` ||Ensure that the write has been written to 
<ReplicationFactor> / 2 + 1 nodes in each datacenter (requires 
NetworkTopologyStrategy) ||
- ||`ALL` ||Ensure that the write is written to all `<ReplicationFactor>` nodes 
before responding to the client.  Any unresponsive nodes will fail the 
operation. ||
+ ||`ALL` ||Ensure that the write is written to all `N` replicas before 
responding to the client.  Any unresponsive replicas will fail the operation. ||
  
  
  ==== Read ====
  ||'''Level''' ||'''Behavior''' ||
  ||`ZERO` ||Not supported, because it doesn't make sense. ||
  ||`ANY` ||Not supported. You probably want ONE instead. ||
- ||`ONE` ||Will return the record returned by the first node to respond. A 
consistency check is always done in a background thread to fix any consistency 
issues when `ConsistencyLevel.ONE` is used. This means subsequent calls will 
have correct data even if the initial read gets an older value.  (This is 
called `read repair`.) ||
+ ||`ONE` ||Will return the record returned by the first replica to respond. A 
consistency check is always done in a background thread to fix any consistency 
issues when `ConsistencyLevel.ONE` is used. This means subsequent calls will 
have correct data even if the initial read gets an older value.  (This is 
called ReadRepair) ||
- ||`QUORUM` ||Will query all nodes and return the record with the most recent 
timestamp once it has at least a majority of replicas reported.  Again, the 
remaining replicas will be checked in the background. ||
+ ||`QUORUM` ||Will query all replicas and return the record with the most 
recent timestamp once it has at least a majority of replicas (`N / 2 + 1`) 
reported.  Again, the remaining replicas will be checked in the background. ||
+ ||`LOCAL_QUORUM` ||Returns the record with the most recent timestamp once a 
majority of replicas within the local datacenter have replied. ||
+ ||`EACH_QUORUM` ||Returns the record with the most recent timestamp once a 
majority of replicas within each datacenter have replied. ||
- ||`ALL` ||Will query all nodes and return the record with the most recent 
timestamp once all nodes have replied.  Any unresponsive nodes will fail the 
operation. ||
+ ||`ALL` ||Will query all replicas and return the record with the most recent 
timestamp once all replicas have replied.  Any unresponsive replicas will fail 
the operation. ||
- 
  
  '''Note: '''Different language toolkits may have their own Consistency Level 
defaults as well. To ensure the desired Consistency Level, you should always 
explicitly set the Consistency Level.
  

Reply via email to