After watching Cassandra DS220 videos, I was passing a quiz and I met a statement that is actually true about Cassandra writes:
Writes that do not meet the consistency requirements are not rolled back
This is not what I actually expected, so I have some questions:
1) Can such writes even happen? I think they can if a node or two failed in the middle. Otherwise C* would need a two-phase commit
2) What will happen to the written value later? I know from C* documentation how hinted handoff will work:
When the cluster cannot meet the consistency level specified by the client, Cassandra does not store a hint.
But what will read repair do? For example if the old value is A and the new value is B, will read repair discard B, or will A be overwritten with B?
3) What will reads return if I read with QUORUM level and one of the nodes contains B (which was not completely written to meet the consistency level) ?