-
Feature Request
-
Resolution: Done
-
Major
-
2.2.8, 2.2.9, 2.2.9.1, 2.2.9.2, 2.3
-
None
-
Medium
Add an additional connect(String group_name, boolean fetch_state, String state_id) method to Channel, so that we can combine joining and state transfer into 1 operation. This also requires only 1 FLUSH phase.
The state would be returned either via pulling with Channel.receive() or pushing the setState() method in a registered Receiver/MessageListener.
- The JOIN_REQ contains the boolean
- The algorithm in GMS is the same as the two described above, except that before multicasting the new view and sending
the JOIN_RSPs and LEAVE_RSPs, we ask the application for its state (GET_APPLSTATE) and when received (GET_APPLSTATE_OK),
we send it back to the joining member(s), and the RESUME sending messages