Hi,

I have more questions on Cassandra ACID properties.
Say, I have a row that has 3 columns already: colA, colB and colC

And, if two *concurrent* clients perform a different insert(...) into the
same row,
one insert is for colD and the other insert is for colE.
Then, Cassandra would guarantee both columns will be added to the same row.

Is that correct?

That is, insert(...) of a column does NOT involving reading and rewriting
other existing columns of the same row?
That is, we do not face the following situation:
client X: read colA, colB and colC; then write: colA, colB, colC and colD
client Y: read colA, colB and colC; then write: colA, colB, colC and colE


BTW, it seems to me that insert() API as described in the wiki page:
http://wiki.apache.org/cassandra/API
should handle updating an existing column as well by the replacing the
existing column value.

If that is the case, I guess we should change the wording from "insert" to
"insert or update" in the wiki doc
And, ideally, insert(...) API operation name would be adapted
to update_or_insert(...)


Looking forward to replies that may confirm my understanding.
Thanks!


Regards,
Alex Yiu

Reply via email to