Raft consensus vice leader optimization
AssigneeOracle International Corporation
InventorsMing Zhu, David Brower, Stefan Pommerenk
Life of this patent
Estimating the term…
Abstract
Described is an improved system, method, and computer program product for performing elections in a computing system. Approaches are described for the non-leader member of a member set to self-identify to be the vice-leader. When it detects a death, rather than wait the random, bounded period, the vice-leader can immediately send its “vote for me” message to other members. This puts it ahead of the race by other members to announce their candidacies, and results in vastly more frequent conclusion of the election in the initial round.
Claims21
A computer-implemented method, comprising:
- sorting member nodes of a voting set according to a sorting criteria;
- selecting a first member node as a vice-leader node according to the sorting criteria;
- sending a first vote request from the vice-leader node without waiting for a RAFT-imposed delay period;
- and
- sending a second vote request from another node after waiting for the RAFT-imposed delay period.
A computer program product embodied on a computer readable medium, the computer readable medium having stored thereon a sequence of instructions which, when executed by a processor, executes:
- sorting member nodes of a voting set according to a sorting criteria;
- selecting a first member node as a vice-leader node according to the sorting criteria;
- sending a first vote request from the vice-leader node without waiting for a RAFT-imposed delay period;
- and
- sending a second vote request from another node after waiting for the RAFT-imposed delay period.
A system, comprising:
- a processor;
- a memory for holding programmable code;
- and
- wherein the programmable code includes instructions for sorting member nodes of a voting set according to a sorting criteria;
- selecting a first member node as a vice-leader node according to the sorting criteria;
- sending a first vote request from the vice-leader node without waiting for a RAFT-imposed delay period;
- and sending a second vote request from another node after waiting for the RAFT-imposed delay period.
Dependencies are inferred from the claim text.