Hi community, I am working on RATIS-624 and my thought was:
for pause request, transit state from RUNNING to PAUSED for unpause request, transit state from PAUSED to RUNNING. However, I found in Ratis LifeCyle, there are both PAUSING and PAUSED states existing. My question is, is there any documentation on what should happen between RUNNING and PAUSING, PAUSING and PAUSED? (is this in the raft paper some where?) What was the design intention to introduce a PAUSING state? After some thinking, I am guessing PAUSING is useful for async calls. E.g. client send a pause request, state transits to PAUSING and return immediately. The client will keep checking until the server becomes PAUSED to do next steps. Is this correct? -Rui
