0
votes

We have 3 Node Cassandra cluster with replication of 3 . some time back Cassandra (1 Node) is down for 2 days.

Now We are Unable to Read data from Cassandra cluster

some time we are getting not frequently

Caused by: com.datastax.driver.core.exceptions.ReadFailureException: Cassandra failure during read query at consistency ONE (1 responses were required but only 0 replica responded, 1 failed) at com.datastax.driver.core.exceptions.ReadFailureException.copy(ReadFailureException.java:95) at com.datastax.driver.core.Responses$Error.asException(Responses.java:128) at com.datastax.driver.core.DefaultResultSetFuture.onSet(DefaultResultSetFuture.java:179) at com.datastax.driver.core.RequestHandler.setFinalResult(RequestHandler.java:184) at com.datastax.driver.core.RequestHandler.access$2500(RequestHandler.java:43) at com.datastax.driver.core.RequestHandler$SpeculativeExecution.setFinalResult(RequestHandler.java:798)

We have fired node >nodetool repair

How we check whether all data replicated all node ? What should be consistency level for read/write? .Currently consistency level is default(One).

Is there any schema level changes required.

Any Administration Comment required?

1
Do you know what exact request fails? Can you try to run the same request with cqlsh and tracing on? Also you should try this request with consistency level ONE (several times) and consistency level ALL. What happens then ? - Thomas Arnaud

1 Answers

0
votes

What I think is to set the write consistency to all. In this way all the nodes will acknowledge that they received the write request and set the read to one and in this way you the coordinator node will always be responding with the most recent data. As you mentioned about Node tool repair it's a good practice to have it handy specially in case of node failure.

Other than that I would recommend you to check the logs because this is a failure and you may find something on there.