You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Caleb Rackliffe (Jira)" <ji...@apache.org> on 2021/08/25 17:52:00 UTC
[jira] [Created] (CASSANDRA-16883) Weak visibility guarantees of
Accumulator can lead to failure to recognize digest mismatches
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: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org