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:
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.