If you have run Apache Cassandra in production, you already know the ritual. Repair must happen regularly, or your cluster will drift. Anti-entropy repair keeps replicas consistent across nodes. Without it, deleted data can resurrect, stale reads multiply, and compaction efficiency degrades.
The problem was never that Cassandra could not repair. The problem was that repair lived entirely outside the database. Teams stitched together cron jobs, Reaper instances, custom scripts, and third-party tooling, and those solutions kept breaking during upgrades, topology changes, or on-call incidents.
Cassandra 6 changes this with CEP-37: Automated Repair Inside Cassandra. For the first time, repair is a first-class, natively scheduled, operationally observable process inside the database engine itself.
At Ksolves, we manage Cassandra clusters across banking, telecom, and enterprise clients. This is one of the most operationally impactful changes we have seen in years. This blog explains exactly why.
Key insight: CEP-37 is not just a convenience feature. It fundamentally changes who is responsible for repair. Responsibility shifts from your ops team and external tooling to the database itself.
The Repair Problem in Production: What Teams Actually Face
Repair has always been a deceptively simple concept. In practice, it is one of the most operationally challenging aspects of running Cassandra at scale. Here is what production teams deal with:
Challenge
What Goes Wrong Without Repair
Tombstone accumulation
Deleted data is not physically removed until compaction and repair run. Missed repair cycles cause unbounded tombstone growth, read amplification, and GC pressure.
Data resurrection
If a node was down during a write and repair is not run, that node serves stale data after it recovers, including data that was supposed to be deleted.
Replica drift
Over time, replicas diverge. Without repair, queries at LOCAL_QUORUM can return inconsistent results across different read requests.
Compaction inefficiency
SSTables accumulate duplicate or outdated data. Without repair, compaction works harder across larger data sets and produces worse results.
Operational fragility
External repair tools, such as Reaper or cron scripts, require their own uptime, monitoring, configuration, and maintenance. In effect, they become a cluster within your cluster.
The result: teams that ran repair well had dedicated Cassandra expertise on staff. Everyone else was operating with silent drift, hoping nothing surfaced at scale.
What CEP-37 Actually Does: Inside the Database
CEP-37 introduces a native repair scheduler that runs as a background process inside Cassandra, with full awareness of cluster topology, workload, and repair state. Here is what that means in practice:
Repair Is Now a Background Service, Not an External Job
In Cassandra 6, repair scheduling is embedded in the database process. You configure it once, setting repair frequency, parallelism, and priority. From there, the cluster handles execution automatically, with no external processes to maintain.
Full and Incremental Repair Both Supported
CEP-37 supports both full repair (reconciling entire token ranges across replicas) and incremental repair (tracking which SSTables have already been repaired and skipping them). For large clusters, incremental repair dramatically reduces repair duration and I/O cost.
Safeguards and Scheduling Controls
The automated repair engine includes built-in safeguards to protect cluster performance:
Rate limiting: repair is throttled to avoid impacting foreground read/write workloads
Backpressure: if nodes are under stress, repair automatically backs off
Topology awareness: repair scheduling respects DC boundaries and rack placement, avoiding cross-DC repair floods
Priority configuration: operators can tune whether repair runs aggressively or passively based on cluster criticality
Observable and Auditable
One of the most underrated aspects of CEP-37 is observability. Because repair now lives inside the database, its state is queryable via system views. You can inspect what is being repaired, what has already been repaired, and when. This replaces guesswork and log-diving with direct operational visibility.
Already Backported to Cassandra 5.0.8
Notably, the Apache project backported CEP-37 to Cassandra 5.0.8 in April 2026. Production clusters on the 5.x branch can therefore benefit from automated repair without waiting for a full Cassandra 6 upgrade, a strong signal of the feature’s maturity and community confidence.
Operational parallel: CEP-37 for repair is the same shift that Unified Compaction Strategy (UCS) made for compaction in Cassandra 5.0, a background process that previously required external management is now owned and orchestrated by the database itself.
How This Changes Upgrade Planning for Your Cluster
If you are currently running repair with Reaper or cron-based scripts, your upgrade path to Cassandra 6 (or even 5.0.8) will include a transition from external repair orchestration to native repair. Here is how Ksolves approaches this transition with clients:
Phase
Action
Notes
Baseline audit
Profile existing repair intervals, coverage, and duration
Establish current repair health before migrating
5.0.8 migration (optional early path)
Upgrade to 5.0.8 and enable native repair
CEP-37 backport lets you adopt this before Cassandra 6 GA
Configuration design
Define repair frequency, parallelism, and priority per keyspace
Keyspaces with higher write rates need more frequent repair cycles
Reaper decommission
Migrate repair ownership from Reaper/cron to native scheduler
Run in parallel for one cycle before cutting over
Observability integration
Integrate repair state metrics into your existing dashboards
What This Means for Teams Running Cassandra Without Dedicated Expertise
The teams that benefit most from CEP-37 are those running Cassandra without full-time Cassandra engineers on staff. For these teams, automated repair is not a convenience. It is a safety net.
Previously, a team that let repair slide for three to four weeks could see:
Tombstone floods degrading read latency
Data resurrection after node recovery
Compaction storms triggered by unresolved replica drift
With native automated repair, the database enforces a repair cadence regardless of team capacity. This is the same principle that makes automatic compaction valuable: core maintenance tasks should not require manual intervention.
Ksolves Recommendation: Enable Automated Repair Early
We recommend treating CEP-37 as a high-priority upgrade driver. Specifically:
Cassandra 5.x clusters: Upgrade to 5.0.8 and test automated repair in a non-production environment immediately. This is a low-risk path to a significant operational improvement.
Cassandra 4.x clusters: Add CEP-37 enablement to your Cassandra 6 migration planning. Treat it as a first-day configuration task, not an afterthought.
Clusters currently using Reaper: Do not decommission Reaper immediately. Run both in parallel through at least one full repair cycle before cutting over to validate coverage.
High-write keyspaces: Configure more aggressive repair intervals for keyspaces with heavy delete or TTL workloads. The default settings are conservative.
Bottom line: Repair has always been Cassandra’s most operationally demanding maintenance task. CEP-37 does not make it easier; it makes it automatic. For production clusters, those two things are very different.
Ready to Upgrade to Apache Cassandra 6?
Navigating a Cassandra 6 migration, or deciding whether to take the 5.0.8 early path, involves real tradeoffs around cluster topology, keyspace design, and repair configuration. Ksolves’ Big Data team has hands-on experience running and upgrading Cassandra clusters for banking, telecom, and enterprise clients, and we bring that experience to every engagement.
Our Cassandra services include:
Migration planning and execution: end-to-end guidance from Cassandra 4.x or 5.x to Cassandra 6, including CEP-37 enablement and Reaper decommissioning
Cluster health audits: baseline assessments of repair coverage, compaction behavior, and replica consistency before you migrate
Performance tuning: repair scheduling, compaction strategy, and keyspace-level configuration tailored to your workload
24/7 managed operations: ongoing monitoring, incident response, and proactive maintenance for production Cassandra clusters
Proof-of-concept support: safe, sandboxed testing of new Cassandra 6 features, including automated repair, before production rollout
Whether you are running a handful of nodes or a multi-datacenter deployment at scale, Ksolves can help you plan, test, and execute your Cassandra 6 migration with confidence.
Ready to Automate Repair in Your Cassandra Cluster?
Anil Kushwaha, Technology Head at Ksolves, is an expert in Big Data. With over 11 years at Ksolves, he has been pivotal in driving innovative, high-volume data solutions with technologies like Nifi, Cassandra, Spark, Hadoop, etc. Passionate about advancing tech, he ensures smooth data warehousing for client success through tailored, cutting-edge strategies.
Fill out the form below to gain instant access to our exclusive webinar. Learn from industry experts, discover the latest trends, and gain actionable insights—all at your convenience.
AUTHOR
Apache Cassandra
Anil Kushwaha, Technology Head at Ksolves, is an expert in Big Data. With over 11 years at Ksolves, he has been pivotal in driving innovative, high-volume data solutions with technologies like Nifi, Cassandra, Spark, Hadoop, etc. Passionate about advancing tech, he ensures smooth data warehousing for client success through tailored, cutting-edge strategies.
Share with