> I am making some cassandra presentations in Kyiv and would like to check that > I am telling people truth :) Thanks for spreading the word :)
> 1) Failed (from client-side view) operation may still be applied to cluster Yes. If you fail with UnavailableException it's because from the coordinators view of the cluster there is less than CL nodes available. So retry. Somewhat similar story with TimedOutException. > 2) Coordinator does not try anything to "roll-back" operation that failed > because it was processed by less then consitency level number of nodes. Correct. > 3) Hinted handoff works only for successfull operations. HH will be stored if the coordinator proceeds with the request. In 1.X HH is stored on the coordinator if a replica is down when the request starts and if the node does not reply in rpc_timeout. > 4) Counters are not reliable because of (1) If you get a TimedOutException when writing a counter you should not re-send the request. > 5) Read-repair may help to propagate operation that was failed it's > consistency level, but was persisted to some nodes. Yes. It works in the background, by default is only enabled on 10% of requests. Note that RR is not the same as the Consistent Level for read. If you work as a CL > ONE the results from CL nodes are always compared and differences resolved. RR is concerned with the replicas not involved in the CL read. > 6) Manual repair is still needed because of (2) and (3) Manual repair is *the* was to achieve consistency of data on disk. HH and RR are optimisations designed to reduce the chance of a Digest Mismatch during a read with CL > ONE. It is also essential for distributing Tombstones before they are purged by compaction. > P.S. If some points apply only to some cassandra versions, I will be happy to > know this too. Assume everyone for version 1.X Thanks ----------------- Aaron Morton Freelance Developer @aaronmorton http://www.thelastpickle.com On 8/06/2012, at 1:20 AM, Віталій Тимчишин wrote: > Hello. > > I am making some cassandra presentations in Kyiv and would like to check that > I am telling people truth :) > Could community tell me if next points are true: > 1) Failed (from client-side view) operation may still be applied to cluster > 2) Coordinator does not try anything to "roll-back" operation that failed > because it was processed by less then consitency level number of nodes. > 3) Hinted handoff works only for successfull operations. > 4) Counters are not reliable because of (1) > 5) Read-repair may help to propagate operation that was failed it's > consistency level, but was persisted to some nodes. > 6) Manual repair is still needed because of (2) and (3) > > P.S. If some points apply only to some cassandra versions, I will be happy to > know this too. > -- > Best regards, > Vitalii Tymchyshyn