Hi All,

Making "transaction" like is my actual preoccupation of the moment.

My (simplified) need is :

- update data in column family #1
- insert data in column family #2

My need is to see these operations in a single "transaction" because the data is tightly coupled.

I use zookeeper/cage to make distributed lock to avoid multiple client inserting or updating on the same data.

But there is a problem there is a fail when inserting in column family 2  because i have to "rollback" updated data of the column family #1.

My reading on the subject is that to solve the fail :
- Can we really consider that "write never fail" with cassandra from the time the execution of a mutation happened on a node. What can be the cause of fail at this point?
So is it important to thinking about this potential problem? (yes in my opinion but i'm not totally sure).
- Make a retry first. Is there really a chance for the second try to succeed if the first fail?
-  keep the "transaction data" to have the possibility to rollback programmatically by deleting the inserting data. The problem is on the updated data to rollback because old values are lost. I read what "Read before write" is a bad idea to save old values before the update. the problem remains, so how to do?

Do you have any feedback on this topic?