szetszwo commented on PR #5288: URL: https://github.com/apache/ozone/pull/5288#issuecomment-1722323158
> ... For this Ratis write to succeed, must it make it onto the other 2 OM nodes and into their Ratis log or just into a majority of the Ratis logs? Only one Follower is needed, i.e. 2 OMs (including the Leader) out of 3 OMs are needed. > When the Ratis transaction is received by the follower OM, what happens before that call returns to the leader who called it? Is the transaction written to the follower Ratis log AND applied to the follower memory state too before the Ozone client returns? Or is the Ratis log applied to the followers memory async by a separate thread, meaning the original client call returns BEFORE the memory state is updated in all OMs? When the Leader replies to the client, the transaction must be committed (i.e. replicated to one follower) and it is applied at the Leader. The follower may not have applied it. The read index algorithm has the following steps: 1. a client sends a read request to a follower, 2. the follower asks the Leader the current commit index, say 10 -- this is the read index 3. the follower may only have applied log to a small index, say 8. 4. the follower will just wait until its applied index advances to 10. 5. the follower replies the read request. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
