I am inserting to Cassandra by a simple insert query and an update counter query for every input record. input rate is so high. I've configured the update query with idempotent = true (no config for insert query, default is false IMHO) I've seen multiple records having rows in counter table (idempotent one) while not having any row in the table with simple insert! I'm using executeAsync and in catch i will retry the insert/uodate for whole batch of statements (while-true so retry until all satements been inserted) and using this i was sure that everything would be persisted in Cassandra. If a non idempotent insert timed out, wouldn't it should throw exception and be retried in my java code?