[ 
https://issues.apache.org/jira/browse/IGNITE-15271?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17461246#comment-17461246
 ] 

Mirza Aliev commented on IGNITE-15271:
--------------------------------------

According to paragraph 6 of the original RAFT 
[paper|https://raft.github.io/raft.pdf], these changes are valid and I approve 
that PR 


{noformat}
To prevent this problem, servers disregard RequestVote
RPCs when they believe a current leader exists. Specifically, if a server 
receives a RequestVote RPC within
the minimum election timeout of hearing from a current leader, it does not 
update its term or grant its vote.
This does not affect normal elections, where each server
waits at least a minimum election timeout before starting
an election. However, it helps avoid disruptions from removed servers: if a 
leader is able to get heartbeats to its
cluster, t
{noformat}



> ITNodeTest.testFollowerStartStopFollowing is still flaky
> --------------------------------------------------------
>
>                 Key: IGNITE-15271
>                 URL: https://issues.apache.org/jira/browse/IGNITE-15271
>             Project: Ignite
>          Issue Type: Bug
>    Affects Versions: 3.0.0-alpha2
>            Reporter: Alexey Scherbakov
>            Assignee: Alexey Scherbakov
>            Priority: Major
>              Labels: ignite-3
>
> {noformat}
> org.opentest4j.AssertionFailedError
> org.opentest4j.AssertionFailedError: expected: <true> but was: <false>
>   at 
> org.apache.ignite.raft.jraft.core.ITNodeTest.testFollowerStartStopFollowing(ITNodeTest.java:2678)
> {noformat}
> The issue is caused by (unexpected) excessive number of state changes during 
> leader election on term=2:
> {noformat}
> INFO: onStartFollowing: LeaderChangeContext [leaderId=172.17.0.6:5004, 
> term=2, status=Status[ENEWLEADER<10011>: Follower receives message from new 
> leader with the same term.]].
> Aug 09, 2021 9:32:37 AM org.apache.ignite.lang.IgniteLogger logInternal
> INFO: onStartFollowing: LeaderChangeContext [leaderId=172.17.0.6:5004, 
> term=2, status=Status[ENEWLEADER<10011>: Follower receives message from new 
> leader with the same term.]].
> Aug 09, 2021 9:32:37 AM org.apache.ignite.lang.IgniteLogger logInternal
> Aug 09, 2021 9:32:37 AM org.apache.ignite.lang.IgniteLogger logInternal
> INFO: onStartFollowing: LeaderChangeContext [leaderId=172.17.0.6:5004, 
> term=2, status=Status[ENEWLEADER<10011>: Follower receives message from new 
> leader with the same term.]].
> Aug 09, 2021 9:32:37 AM org.apache.ignite.lang.IgniteLogger logInternal
> INFO: onStopFollowing: LeaderChangeContext [leaderId=172.17.0.6:5004, term=2, 
> status=Status[EVOTEFORCANDIDATE<10010>: Raft node votes for some candidate, 
> step down to restart election_timer.]].
> Aug 09, 2021 9:32:37 AM org.apache.ignite.lang.IgniteLogger logInternal
> Aug 09, 2021 9:32:37 AM org.apache.ignite.lang.IgniteLogger logInternal
> WARNING: Node <unitest/172.17.0.6:5004> received invalid RequestVoteResponse 
> from 172.17.0.6:5006, state not in STATE_CANDIDATE but STATE_LEADER.
> Aug 09, 2021 9:32:37 AM org.apache.ignite.lang.IgniteLogger logInternal
> INFO: onStartFollowing: LeaderChangeContext [leaderId=172.17.0.6:5004, 
> term=2, status=Status[ENEWLEADER<10011>: Follower receives message from new 
> leader with the same term.]].
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to