jemc opened a new issue, #2848:
URL: https://github.com/apache/kvrocks/issues/2848

   ### Search before asking
   
   - [x] I had searched in the 
[issues](https://github.com/apache/kvrocks/issues) and found no similar issues.
   
   
   ### Motivation
   
   Redis has a [FAILOVER](https://redis.io/docs/latest/commands/failover/) 
command which can be used to gracefully switch which node is the master node in 
a multi-node (non-cluster) setup.
   
   The details are [described in the 
documentation](https://redis.io/docs/latest/commands/failover/), but the gist 
is that it will gracefully pauses writes on the master until at least one 
replica catches up, then make that replica a master and make the old master 
into a replica of it.
   
   A command like this is necessary for doing per-node maintenance windows in a 
rolling fashion, keeping high availability without downtime.
   
   Apache KVRocks advertises that you can operate it in high availability mode 
with Redis Sentinel, so I was quite surprised to see that this feature doesn't 
exist. I can't really treat this as a high availability system without this 
feature, as there is no clean way to take down a node for maintenance without 
causing downtime for applications.
   
   ### Solution
   
   Implement a Redis-compatible `FAILOVER` command.
   
   ### Are you willing to submit a PR?
   
   - [ ] I'm willing to submit a PR!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to