-
We've had one node lose data.
Node A is the node to remove. It is offline and configured to be Watcher. When I start the RavenDB service on the server, the situation doesn't change. As usually with increased load, there is constant voting in progress, and the Term increases steadily (by one every couple of seconds). What is the best way to recover from this situation? We also see the following:
Formatted/unescaped inner exception:
|
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 8 replies
-
After further investigation, it seems that the source of the issue is that the B node has a wrong state (index/term mismatch). Because of this, it won't accept the noop RAFT message from node C, which would change C's state from LeaderElect to Leader. The suggested fix described at https://issues.hibernatingrhinos.com/issue/RavenDB-18590#focus=Comments-67-356384.0-0 is the following:
However, it's not possible to demote the node B, as only the leader node can do that, and C is not the leader yet. Is it possible to either forcefully demote a node or force a node to become the leader? Alternatively, is it possible to reach a state of the cluster to get out of this situation? The cluster is currently in the following state: The cluster diagram shows node A to be active and also the connection between C and A to be active, even though node A doesn't run. Should this be the case? |
Beta Was this translation helpful? Give feedback.
-
Hi If you are running with encryption ? if not, you can you try to stop RavenDB service on node A, rename (delete) the system database folder, and start the service ? This should replicate the system DB from scratch, then you can elect a leader and should be able to Request a snapshot by running server.serverStore.RequestSnapshot() in the JS admin console |
Beta Was this translation helpful? Give feedback.
Hi
If you are running with encryption ? if not, you can you try to stop RavenDB service on node A, rename (delete) the system database folder, and start the service ? This should replicate the system DB from scratch, then you can elect a leader and should be able to Request a snapshot by running server.serverStore.RequestSnapshot() in the JS admin console