Dynamic JOIN
r sends ADD_ME request to an existing replica s.
s initiates PERSISTENT_JOIN(r) action.
When PERSISTENT_JOIN(r) is green
- If (r is not in the system already) then add data structures for r and consider r part of the system.
- If (self = s) then start updating r up to the ordinal of the PERSISTENT_JOIN action.
When (r is updated) r joins the replica group.
If connection between r and s is lost during the process, r can connect to another server s’ and restart the joining process.
When the new replica joins the system a configuration change will be triggered and the Exchange phase will take place.