Repair scheduling tools
The question of the best way to schedule repairs came up on CASSANDRA-14346, and I thought it would be good to bring up the idea of an external tool on the dev list.
Cassandra lacks any sort of tools for automating routine tasks that are required for running clusters, specifically repair. Regular repair is a must for most clusters, like compaction. This means that, especially as far as eventual consistency is concerned, Cassandra isn’t totally functional out of the box. Operators either need to find a 3rd party solution or implement one themselves. Adding this to Cassandra would make it easier to use.
Is this something we should be doing? If so, what should it look like?
Personally, I feel like this is a pretty big gap in the project and would like to see an out of process tool offered. Ideally, Cassandra would just take care of itself, but writing a distributed repair scheduler that you trust to run in production is a lot harder than writing a single process management application that can failover.
Any thoughts on this?