[
https://issues.apache.org/jira/browse/RATIS-2149?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tsz-wo Sze updated RATIS-2149:
------------------------------
Fix Version/s: 3.1.1
(was: 3.2.0)
> Do not perform leader election if the current RaftServer has not started yet
> ----------------------------------------------------------------------------
>
> Key: RATIS-2149
> URL: https://issues.apache.org/jira/browse/RATIS-2149
> Project: Ratis
> Issue Type: Improvement
> Components: election
> Reporter: yuuka
> Assignee: yuuka
> Priority: Major
> Fix For: 3.1.1
>
> Attachments: image-2024-09-03-17-41-41-872.png,
> image-2024-09-03-18-13-50-628.png
>
> Time Spent: 1h 40m
> Remaining Estimate: 0h
>
> Sometimes we cannot guarantee that the program will run normally in various
> environments, and appropriate robustness enhancement may be necessary.
> Before adding members, RaftServer S and the corresponding group will be
> created if the group is not exist and find that the interval between these
> two logs is more than one minute.
> !image-2024-09-03-17-41-41-872.png!
>
> Since our RpcTimeout is small 1 minute, the retryPolicy has already started,
> but S's groupId is already in the implMaps of RaftServerProxy, which will
> throw AlreadyExistException. When we catch this exception, we assume that the
> creation has been completed and the member change can be executed
>
> S is still in the initializing state, and this member change will not be
> completed. Finally, we found that S started the election and received
> NOT_IN_CONF reply, and then S will be closed
> !image-2024-09-03-18-13-50-628.png!
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)