In the Bully algorithm, a recovering process starts an election, and will become the new coordinator if it has a higher identifier than the current coordinator. Is this a necessary feature of the algorithm?
Remember that if there is no benefit in using a method with higher numbers, this is an undesirable function, the re-election is unnecessary. Process numeration can reflect its relative advantage. The advantage in this case may be worth the cost of re-election. Re-election costs include the rounds of messages required to implement the election. This may also include a request-specific transition of the state from the old coordinator to the new coordinator.
The algorithm can then work as before, if the newly restored process finds the coordinator lost, or if it receives an election request, it sends a message from the coordinator to the remaining processes. To prevent a re-election, a recovery process might simply send a requestStatus message to successive lower-numbered processes to find out if another process is already selected, and choose only if it receives a negative response.
Get Answers For Free
Most questions answered within 1 hours.