Correct. https://issues.apache.org/jira/browse/CASSANDRA-1830 is open to fix that. If you'd like to review the patch there, that would be very helpful. :)
On Tue, Dec 14, 2010 at 1:55 PM, Daniel Doubleday <daniel.double...@gmx.net>wrote: > Hi > > I'm sorry - don't want to be a pain in the neck with source questions. So > please just ignore me if this is stupid: > > Isn't org.apache.cassandra.service.ReadResponseResolver suposed to throw a > DigestMismatchException if it receives a digest wich does not match the > digest of a read message? > > If messages contains multiple digest responses it will drop all but one. So > if any of the dropped digest are a mismatch to the version that mismatch is > simply ignored. > It can cope with multiple reads (versions) but not with multiple digests > and that's what it gets from quorum reads. > > It might be an edge case, but I think that would break quorum promise with > rf > 3 because you could have 1 broken data message, 1 broken digest message > and 2 good digest messages. If the 2 good messages were dropped than the > quorum read that should have triggered repair and conflict resolution would > return old data. > > I just can't see what I'm not seeing here. > > Cheers, > Daniel > > > -- Jonathan Ellis Project Chair, Apache Cassandra co-founder of Riptano, the source for professional Cassandra support http://riptano.com