Caleb Rackliffe created CASSANDRA-16883:
-------------------------------------------
Summary: Weak visibility guarantees of Accumulator can lead to
failure to recognize digest mismatches
Key: CASSANDRA-16883
URL: https://issues.apache.org/jira/browse/CASSANDRA-16883
Project: Cassandra
Issue Type: Bug
Components: Consistency/Coordination
Reporter: Caleb Rackliffe
Assignee: Caleb Rackliffe
The context for this problem is largely the same as CASSANDRA-16807. The
difference is that for 4.0+, CASSANDRA-16097 added an assertion to
{{DigestResolver#responseMatch()}} that ensures the responses snapshot has at
least one visible element (although of course only one element trivially cannot
generate a mismatch and short-circuits immediately). In 3.0 and 3.11, this
assertion does not exist, and when the underlying problem occurs (i.e. zero
responses are visible on {{Accumulator}} when there should be 2), we can
silently avoid the digest matching entirely. This seems like it would make it
both impossible to do a potentially necessary full data read to resolve the
correct response and prevent repair.
The fix here should be similar to the one in CASSANDRA-16807, although there
might be some test infrastructure that needs porting in order to make that work.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]