On 4/9/2011 7:52 PM, aaron morton wrote:
My understanding of what they did with locking (based on the examples)
was to achieve a level of transaction isolation
http://en.wikipedia.org/wiki/Isolation_(database_systems)
<http://en.wikipedia.org/wiki/Isolation_%28database_systems%29>
I think the issue here is more about atomicity
http://wiki.apache.org/cassandra/FAQ#batch_mutate_atomic
We cannot guarantee that all or none of the mutations in your batch
are completed. There is some work in this area though
https://issues.apache.org/jira/browse/CASSANDRA-1684
Just to be clear, you are speaking in the general sense, right? The
batch mutate link you provide says that in the case that ALL the mutates
of the batch are for the SAME key (row), then the whole batch is atomic:
"As a special case, mutations against a single key are atomic but
not isolated."
So, is it true that if I want to update multiple columns for one key,
then it will be an all or nothing update for the whole batch if using
batch update? But, if your batch mutate containts mutates for more than
one key, then all the updates for one key will be atomic, followed by
all the updates for the next key will be atomic, and so on. Correct?
Thanks!