Hi All:
This is quoted from the document:retry policy:
"During reads, Cassandra doesn’t request data from every replica to minimize internal network traffic; instead, some replicas are only asked for a checksum of the data. A read timeout may occur even if enough replicas responded to fulfill the consistency level, but only checksum responses were received (the method’s dataPresent
parameter allow you to check if you’re in that situation)."
I don't get it. If a read time out occurs, there should not be enough replicas responded to fulfill the consistency level, because for read operations, the coordinator generally only issues read commands to enough replicas to satisfy the consistency level. So if one replica time out ,the consistency level could not be satisfied. Is there anything I miss?
For example,In a single data center cluster with a replication factor of 3, and a read consistency level of QUORUM, only 2 of the 3 replicas will be requested for a read request, one for full data request, the other for digest request? If one of them times out ,the coordinator return read time out exception to the client?
Thanks a lot!