[
https://issues.apache.org/jira/browse/RATIS-1446?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Tsz-wo Sze resolved RATIS-1446.
-------------------------------
Fix Version/s: 2.3.0
Resolution: Fixed
I have merged the pull request. Thanks, [~Nibiruxu]!
> Avoid leader election for invalid conf
> --------------------------------------
>
> Key: RATIS-1446
> URL: https://issues.apache.org/jira/browse/RATIS-1446
> Project: Ratis
> Issue Type: Bug
> Components: server
> Reporter: Xu Shao Hong
> Assignee: Xu Shao Hong
> Priority: Critical
> Fix For: 2.3.0
>
> Attachments: 560_reivew.patch, npe-1
>
> Time Spent: 3h 40m
> Remaining Estimate: 0h
>
>
> {code:java}
> 1private void yieldLeaderToHigherPriorityPeer() {
> 2 if (!server.getInfo().isLeader()) {
> 3 return;
> 4 }
> 5 final RaftConfigurationImpl conf = server.getRaftConf();
> 6 int leaderPriority = conf.getPeer(server.getId()).getPriority(); {code}
> During my test in k8s env, I met the corner case where the ozone progress met
> NPE and was shut down. The log shows it is thrown at line 6. It is possible
> in some cases configuration may not include the server itself. The case
> happened when bootstrapping the second SCM. Thus there should have a null
> check before getPriority.
> -------
> The attachment is the error log caught.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)