You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Aparna Naik (Jira)" <ji...@apache.org> on 2026/01/15 23:42:00 UTC
[jira] [Updated] (CASSANDRA-21098) CEP-45: Incremental repair for mutation tracking
[ https://issues.apache.org/jira/browse/CASSANDRA-21098?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aparna Naik updated CASSANDRA-21098:
------------------------------------
Description:
Incremental repair should block until all writes issued before the repair start are fully replicated. Although mutation tracking propagates this asynchronously, we need a mechanism to wait for completion.
In this ticket we build a SyncMechanism that would be collecting mutation offsets from all replicas for relevant shards, compute their union and wait until all these replicas report having received them. The repair command will be extended to support this for keyspaces using mutation tracking. During shard migrations in either direction, incremental repair should perform both mutation-tracking and data repairs.
was:
Incremental repair syncs all data written before the point the repair was started across all replicas. Although this process is baked into mutation tracking as an async process, we do need a facility for blocking on the full replication of all writes before some point in time.
We need a process that collects offsets from all nodes replicating shards in a given range, calculates a union of the offsets, and then waits for all replicas involved in the repair to signal that they've received them. This can likely be achieved by just listening to the offset broadcasting mechanism.
This then also needs to be wired into the repair command so that an incremental repair against a keyspace using mutation tracking .
One detail here is migration handling. For migration in both directions, incremental repair should perform both a mutation tracking incremental repair as well as a data repair.
> CEP-45: Incremental repair for mutation tracking
> ------------------------------------------------
>
> Key: CASSANDRA-21098
> URL: https://issues.apache.org/jira/browse/CASSANDRA-21098
> Project: Apache Cassandra
> Issue Type: Improvement
> Components: Consistency/Repair
> Reporter: Blake Eggleston
> Assignee: Aparna Naik
> Priority: Normal
>
> Incremental repair should block until all writes issued before the repair start are fully replicated. Although mutation tracking propagates this asynchronously, we need a mechanism to wait for completion.
> In this ticket we build a SyncMechanism that would be collecting mutation offsets from all replicas for relevant shards, compute their union and wait until all these replicas report having received them. The repair command will be extended to support this for keyspaces using mutation tracking. During shard migrations in either direction, incremental repair should perform both mutation-tracking and data repairs.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org