[
https://issues.apache.org/jira/browse/CASSANDRA-21066?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Caleb Rackliffe updated CASSANDRA-21066:
----------------------------------------
Reviewers: Caleb Rackliffe
> Support Full Repair for tracked keyspaces
> -----------------------------------------
>
> Key: CASSANDRA-21066
> URL: https://issues.apache.org/jira/browse/CASSANDRA-21066
> Project: Apache Cassandra
> Issue Type: New Feature
> Reporter: Abe Ratnofsky
> Assignee: Abe Ratnofsky
> Priority: Normal
>
> Tracked keyspaces will not support incremental and preview repair as they
> exist today, but will support full repair with hooks to integrate with
> tracking metadata.
> Full repair does not synchronize completion of repair streams across
> replicas, so one replica may receive a completed repair stream and make the
> new SSTables live while the remaining repair streams are in progress. In this
> case, a data read from the completed stream will break read monotonicity,
> since the newly-streamed repaired SSTables are not reflected in any tracking
> summaries:
> - Repair 1 completes on Replica A, adds SSTables to live set, visible to reads
> - Repair 1 still in-progress on Replica B, no new live SSTables yet
> - Coordination executes data read on Replica A, reads from newly-streamed
> SSTables. Mutation summaries are empty on Replica A and Replica B, so read
> response to client is from repaired SSTables.
> - Subsequent query coordination executes data read on Replica B, receives
> empty response as repair stream session is still incomplete. Monotonicity
> violation, because prior query returned data from Replica A.
> In order to safely execute repair streams, the repair needs to be coordinated
> as a bulk transfer (see CASSANDRA-20383). We also need to disable incremental
> and preview repair for tracked keyspaces.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]