On Tue, Jul 18, 2023 at 02:38:26AM -0700, Han Zhou wrote: > When a server becomes unstable due to system overloading or intermittent > partitioning, it may miss some heartbeats and then starts election with > a new term, which would disrupt the otherwise healthy cluster formed by > the rest of the healthy nodes. Such situation may exist for a long time > until the "flapping" server is shutdown or recovered completely, which > can severely impact the availability of the cluster. The pre-vote > mechanism introduced in the raft paper section 9.6 can prevent such > problems. This patch implements the pre-vote mechanism. > > Note: during the upgrade, since the old version doesn't recognize the > new optional field in the vote rpc (and the ovsdb_parse_finish validates > that all fields in the jsonrpc are parsed), an error log may be noticed > on old nodes if an upgraded node happens to become candidate first and > vote for itself, and the vote request will be discarded. If this happens > before enough nodes complete the upgrade, the vote from the upgraded > node may not reach the quorum. This results in re-election, and any old > nodes should be able to vote and get elected as leader. So, in unlucky > cases there can be more leader elections happening during the upgrade. > > Signed-off-by: Han Zhou <[email protected]>
Reviewed-by: Simon Horman <[email protected]> _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
