[DEBUG] [03/17/2024 13:50:02.078] [main] [EventStream(akka://test)] logger log1-TestEventListener started 01:50:02,79 PM [test-akka.actor.default-dispatcher-5] [INFO] Slf4jLogger - Slf4jLogger started [DEBUG] [03/17/2024 13:50:02.079] [main] [EventStream(akka://test)] logger log2-Slf4jLogger started [DEBUG] [03/17/2024 13:50:02.079] [main] [EventStream(akka://test)] Default Loggers started [INFO] [03/17/2024 13:50:02.093] [main] [ArteryTransport(akka://test)] Remoting started with transport [Artery tcp]; listening on address [akka://test@10.30.170.110:25520] with UID [7035758472513257802] 01:50:02,94 PM [test-akka.actor.default-dispatcher-6] [INFO] ArteryTransport - Remoting started with transport [Artery tcp]; listening on address [akka://test@10.30.170.110:25520] with UID [7035758472513257802] [INFO] [03/17/2024 13:50:02.094] [main] [Cluster(akka://test)] Cluster Node [akka://test@10.30.170.110:25520] - Starting up, Akka version [2.6.21] ... 01:50:02,94 PM [test-akka.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [akka://test@10.30.170.110:25520] - Starting up, Akka version [2.6.21] ... [INFO] [03/17/2024 13:50:02.097] [main] [Cluster(akka://test)] Cluster Node [akka://test@10.30.170.110:25520] - Registered cluster JMX MBean [akka:type=Cluster] [INFO] [03/17/2024 13:50:02.097] [main] [Cluster(akka://test)] Cluster Node [akka://test@10.30.170.110:25520] - Started up successfully 01:50:02,97 PM [test-akka.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [akka://test@10.30.170.110:25520] - Registered cluster JMX MBean [akka:type=Cluster] 01:50:02,97 PM [test-akka.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [akka://test@10.30.170.110:25520] - Started up successfully [INFO] [03/17/2024 13:50:02.098] [test-akka.actor.internal-dispatcher-4] [Cluster(akka://test)] Cluster Node [akka://test@10.30.170.110:25520] - No downing-provider-class configured, manual cluster downing required, see https://doc.akka.io/docs/akka/current/typed/cluster.html#downing [INFO] [03/17/2024 13:50:02.098] [test-akka.actor.internal-dispatcher-4] [Cluster(akka://test)] Cluster Node [akka://test@10.30.170.110:25520] - No seed-nodes configured, manual cluster join required, see https://doc.akka.io/docs/akka/current/typed/cluster.html#joining 01:50:02,99 PM [test-akka.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [akka://test@10.30.170.110:25520] - No downing-provider-class configured, manual cluster downing required, see https://doc.akka.io/docs/akka/current/typed/cluster.html#downing 01:50:02,99 PM [test-akka.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [akka://test@10.30.170.110:25520] - No seed-nodes configured, manual cluster join required, see https://doc.akka.io/docs/akka/current/typed/cluster.html#joining 01:50:02,209 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithOperationInProgress starting [WARN] [03/17/2024 13:50:02.213] [test-akka.actor.default-dispatcher-6] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server607]: org.opendaylight.controller.cluster.common.actor.Monitor@2ec3e55 [INFO] [akkaDeadLetter][03/17/2024 13:50:02.213] [test-akka.actor.default-dispatcher-11] [akka://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/new-server607] to Actor[akka://test/user/termination-monitor] was not delivered. [1] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,214 PM [test-akka.actor.default-dispatcher-11] [INFO] EmptyLocalActorRef - Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/new-server607] to Actor[akka://test/user/termination-monitor] was not delivered. [1] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,216 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 01:50:02,218 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:02,218 PM [test-akka.actor.default-dispatcher-11] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [03/17/2024 13:50:02.314] [test-akka.actor.default-dispatcher-6] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader608]: org.opendaylight.controller.cluster.common.actor.Monitor@7e4cb07f 01:50:02,314 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:02,314 PM [test-akka.actor.default-dispatcher-6] [INFO] EmptyLocalActorRef - Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/leader608] to Actor[akka://test/user/termination-monitor] was not delivered. [2] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,314 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= [INFO] [akkaDeadLetter][03/17/2024 13:50:02.314] [test-akka.actor.default-dispatcher-5] [akka://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/leader608] to Actor[akka://test/user/termination-monitor] was not delivered. [2] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,314 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:02,316 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:02,316 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:02,516 PM [main] [DEBUG] RaftActorServerConfigurationSupportTest - new-server2: Set currentTerm=1, votedFor=leader 01:50:02,530 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server607, votingMember=true], state: Idle 01:50:02,538 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server607, votingMember=true] 01:50:02,538 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:50:02,538 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=false] to install on new-server 01:50:02,538 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: lastSequenceNumber prior to capture: -1 01:50:02,538 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating capture snapshot for new server new-server 01:50:02,540 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: CaptureSnapshotReply received by actor 01:50:02,540 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting of snapshot done: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=, ServerConfigPayload=null] 01:50:02,540 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:50:02,540 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendInstallSnapshot 01:50:02,540 PM [test-akka.actor.default-dispatcher-11] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 171 bytes, total chunks to send: 1 01:50:02,540 PM [test-akka.actor.default-dispatcher-11] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=171, offset=0, size=171, hashCode=-2041399403 01:50:02,540 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): next snapshot chunk size for follower new-server: 171 01:50:02,540 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server607), Chunk: 1/1 01:50:02,540 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Snapshot success - sequence number: -1 01:50:02,540 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: SnapshotComplete received 01:50:02,595 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Term 1 in "InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=171, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null]" message is greater than follower's term 0 - updating term 01:50:02,595 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:02,595 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=akka://test/user/follower605, votingMember=false], state: InstallingSnapshot 01:50:02,595 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot: InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=171, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null] 01:50:02,595 PM [test-akka.actor.default-dispatcher-11] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:50:02,595 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:50:02,595 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Snapshot installed from leader: leader 01:50:02,595 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: Server operation already in progress - queueing AddServer [newServerId=new-server2, newServerAddress=akka://test/user/follower605, votingMember=false] 01:50:02,597 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying snapshot on follower: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=null, ServerConfigPayload=null] 01:50:02,597 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - lastSequenceNumber prior to persisting applied snapshot: -1 01:50:02,597 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Snapshot success - sequence number: -1 01:50:02,597 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from -1 to -1 01:50:02,597 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:02,597 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: applySnapshot called [WARN] [03/17/2024 13:50:02.597] [test-akka.actor.default-dispatcher-5] [akka://test/user/new-server607] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@4109af00 01:50:02,597 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:02,597 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: SnapshotComplete received [INFO] [akkaDeadLetter][03/17/2024 13:50:02.597] [test-akka.actor.default-dispatcher-6] [akka://test/user/new-server607] Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[akka://test/user/new-server607] was unhandled. [3] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,597 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:02,597 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to -1, nextIndex set to 0 01:50:02,598 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Sent message UnInitializedFollowerSnapshotReply to self 01:50:02,598 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:50:02,598 PM [test-akka.actor.default-dispatcher-16] [INFO] TestActorRef - Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[akka://test/user/new-server607] was unhandled. [3] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,598 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:50:02,598 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:02,598 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:02,599 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=80147a79-1dad-45a8-8321-8b541e9baffa}, logIndex: 0, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:02,599 PM [test-akka.actor.default-dispatcher-5] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:02,599 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:02,599 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:02,600 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:02,600 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:02,600 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Number of entries to be appended = 1 01:50:02,600 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:50:02,600 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:02,600 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:02,600 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 01:50:02,601 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Log size is now 1 01:50:02,601 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=new-server, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=true, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:02,601 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:50:02,601 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server607, votingMember=true] 01:50:02,601 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:02,602 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 0, nextIndex: 1 [WARN] [03/17/2024 13:50:02.602] [test-akka.actor.default-dispatcher-16] [akka://test/user/new-server607] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@4fbe9fd8 01:50:02,602 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:02,602 PM [test-akka.actor.default-dispatcher-6] [INFO] TestActorRef - Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[akka://test/user/new-server607] was unhandled. [4] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. [INFO] [akkaDeadLetter][03/17/2024 13:50:02.602] [test-akka.actor.default-dispatcher-6] [akka://test/user/new-server607] Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[akka://test/user/new-server607] was unhandled. [4] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,602 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:02,602 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:50:02,602 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 0 01:50:02,602 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to 0 01:50:02,602 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:02,602 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:02,602 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server2, newServerAddress=akka://test/user/follower605, votingMember=false] 01:50:02,602 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: New follower is non-voting - directly persisting new server configuration 01:50:02,603 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 01:50:02,603 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:02,603 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:02,603 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=b299755b-2766-4cd5-9100-2e975af7b04c}, logIndex: 1, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:02,603 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:02,603 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 1 is present for follower new-server 01:50:02,603 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:02,603 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server2: active: false, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:02,603 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation AddServer [newServerId=new-server2, newServerAddress=akka://test/user/follower605, votingMember=false] 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=0 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Number of entries to be appended = 1 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING], PeerInfo [id=new-server2, address=null, votingState=NON_VOTING]] 01:50:02,604 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Log size is now 2 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Commit index set to 0 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=new-server, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=true, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 1 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Setting last applied to 0 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from -1 to 0 01:50:02,604 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 1, nextIndex: 2 01:50:02,604 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 01:50:02,604 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:02,604 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 1 01:50:02,604 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from 0 to 1 01:50:02,604 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:02,604 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:02,604 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:02,605 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=1 01:50:02,605 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: persist complete SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:02,605 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Persisting ApplyJournalEntries with index=0 01:50:02,605 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Commit index set to 1 01:50:02,605 PM [test-akka.actor.default-dispatcher-11] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 01:50:02,605 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 01:50:02,605 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Setting last applied to 1 01:50:02,605 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from 0 to 1 01:50:02,605 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:02,605 PM [test-akka.actor.default-dispatcher-5] [ERROR] OneForOneStrategy - Cannot invoke "org.opendaylight.controller.cluster.raft.ReplicatedLog.lastIndex()" because the return value of "org.opendaylight.controller.cluster.raft.RaftActorContext.getReplicatedLog()" is null java.lang.NullPointerException: Cannot invoke "org.opendaylight.controller.cluster.raft.ReplicatedLog.lastIndex()" because the return value of "org.opendaylight.controller.cluster.raft.RaftActorContext.getReplicatedLog()" is null at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.lastIndex(AbstractRaftActorBehavior.java:315) at org.opendaylight.controller.cluster.raft.behaviors.Follower.isOutOfSync(Follower.java:342) at org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:177) at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.appendEntries(AbstractRaftActorBehavior.java:142) at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.handleMessage(AbstractRaftActorBehavior.java:415) at org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:485) at org.opendaylight.controller.cluster.raft.utils.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at akka.actor.UntypedAbstractActor$$anonfun$receive$1.applyOrElse(AbstractActor.scala:332) at akka.actor.Actor.aroundReceive(Actor.scala:537) at akka.actor.Actor.aroundReceive$(Actor.scala:535) at akka.actor.AbstractActor.aroundReceive(AbstractActor.scala:220) at akka.actor.ActorCell.receiveMessage(ActorCell.scala:579) at akka.actor.ActorCell.invoke(ActorCell.scala:547) at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:270) at akka.dispatch.Mailbox.run(Mailbox.scala:231) at akka.dispatch.Mailbox.exec(Mailbox.scala:243) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) [ERROR] [03/17/2024 13:50:02.605] [test-akka.actor.internal-dispatcher-4] [akka://test/user/follower605] Cannot invoke "org.opendaylight.controller.cluster.raft.ReplicatedLog.lastIndex()" because the return value of "org.opendaylight.controller.cluster.raft.RaftActorContext.getReplicatedLog()" is null java.lang.NullPointerException: Cannot invoke "org.opendaylight.controller.cluster.raft.ReplicatedLog.lastIndex()" because the return value of "org.opendaylight.controller.cluster.raft.RaftActorContext.getReplicatedLog()" is null at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.lastIndex(AbstractRaftActorBehavior.java:315) at org.opendaylight.controller.cluster.raft.behaviors.Follower.isOutOfSync(Follower.java:342) at org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:177) at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.appendEntries(AbstractRaftActorBehavior.java:142) at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.handleMessage(AbstractRaftActorBehavior.java:415) at org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:485) at org.opendaylight.controller.cluster.raft.utils.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at akka.actor.UntypedAbstractActor$$anonfun$receive$1.applyOrElse(AbstractActor.scala:332) at akka.actor.Actor.aroundReceive(Actor.scala:537) at akka.actor.Actor.aroundReceive$(Actor.scala:535) at akka.actor.AbstractActor.aroundReceive(AbstractActor.scala:220) at akka.actor.ActorCell.receiveMessage(ActorCell.scala:579) at akka.actor.ActorCell.invoke(ActorCell.scala:547) at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:270) at akka.dispatch.Mailbox.run(Mailbox.scala:231) at akka.dispatch.Mailbox.exec(Mailbox.scala:243) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) 01:50:02,605 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Persisting ApplyJournalEntries with index=1 01:50:02,654 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithOperationInProgress ending 01:50:02,654 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower605] 01:50:02,665 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector606#693828426] 01:50:02,666 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server607] 01:50:02,666 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader608] 01:50:02,666 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector609] 01:50:02,769 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServerNonExistentServer starting [WARN] [03/17/2024 13:50:02.770] [test-akka.actor.default-dispatcher-5] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader611]: org.opendaylight.controller.cluster.common.actor.Monitor@598786eb [INFO] [akkaDeadLetter][03/17/2024 13:50:02.770] [test-akka.actor.default-dispatcher-5] [akka://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/leader611] to Actor[akka://test/user/termination-monitor] was not delivered. [5] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,770 PM [test-akka.actor.default-dispatcher-5] [INFO] EmptyLocalActorRef - Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/leader611] to Actor[akka://test/user/termination-monitor] was not delivered. [5] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,771 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:02,771 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:02,771 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:02,773 PM [test-akka.actor.default-dispatcher-15] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:02,773 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [follower] 01:50:02,773 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:50:02,782 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: onRemoveServer: RemoveServer{serverId='new-server'}, state: Idle 01:50:02,783 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServerNonExistentServer ending 01:50:02,783 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower610] 01:50:02,794 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader611] 01:50:02,896 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServerWithNoLeader starting [WARN] [03/17/2024 13:50:02.897] [test-akka.actor.default-dispatcher-15] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader613]: org.opendaylight.controller.cluster.common.actor.Monitor@1812c9b4 01:50:02,897 PM [test-akka.actor.default-dispatcher-15] [INFO] EmptyLocalActorRef - Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/leader613] to Actor[akka://test/user/termination-monitor] was not delivered. [6] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. [INFO] [akkaDeadLetter][03/17/2024 13:50:02.897] [test-akka.actor.default-dispatcher-16] [akka://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/leader613] to Actor[akka://test/user/termination-monitor] was not delivered. [6] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,897 PM [test-akka.actor.default-dispatcher-14] [INFO] MockRaftActor - Starting recovery for leader with journal batch size 1000 01:50:02,899 PM [test-akka.actor.default-dispatcher-16] [INFO] MockRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:02,910 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: onRemoveServer: RemoveServer{serverId='follower'}, state: Idle 01:50:02,910 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: No leader - returning NO_LEADER reply 01:50:02,911 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServerWithNoLeader ending 01:50:02,911 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower612] 01:50:02,921 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader613] 01:50:02,923 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServerLeader starting [WARN] [03/17/2024 13:50:02.924] [test-akka.actor.default-dispatcher-16] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader616]: org.opendaylight.controller.cluster.common.actor.Monitor@3b3f6deb [INFO] [akkaDeadLetter][03/17/2024 13:50:02.924] [test-akka.actor.default-dispatcher-15] [akka://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/leader616] to Actor[akka://test/user/termination-monitor] was not delivered. [7] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,924 PM [test-akka.actor.default-dispatcher-16] [INFO] EmptyLocalActorRef - Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/leader616] to Actor[akka://test/user/termination-monitor] was not delivered. [7] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,924 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:02,924 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:02,924 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:02,925 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:02,926 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [follower] 01:50:02,926 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [03/17/2024 13:50:02.926] [test-akka.actor.default-dispatcher-16] [akka://test/user/follower615] received dead letter from TestActor[akka://test/user/leader616]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] [INFO] [akkaDeadLetter][03/17/2024 13:50:02.926] [test-akka.actor.default-dispatcher-14] [akka://test/user/follower615] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[akka://test/user/leader616] to Actor[akka://test/user/follower615] was not delivered. [8] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/follower615] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,926 PM [test-akka.actor.default-dispatcher-16] [INFO] EmptyLocalActorRef - Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[akka://test/user/leader616] to Actor[akka://test/user/follower615] was not delivered. [8] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/follower615] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. [WARN] [03/17/2024 13:50:02.927] [test-akka.actor.default-dispatcher-5] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/follower615]: org.opendaylight.controller.cluster.common.actor.Monitor@379c29ef 01:50:02,927 PM [test-akka.actor.default-dispatcher-5] [INFO] EmptyLocalActorRef - Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/follower615] to Actor[akka://test/user/termination-monitor] was not delivered. [9] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. [INFO] [akkaDeadLetter][03/17/2024 13:50:02.927] [test-akka.actor.default-dispatcher-5] [akka://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[akka://test/user/follower615] to Actor[akka://test/user/termination-monitor] was not delivered. [9] dead letters encountered. If this is not an expected behavior then Actor[akka://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:02,929 PM [test-akka.actor.default-dispatcher-15] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for follower with journal batch size 1000 01:50:02,930 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:03,37 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - leader: onRemoveServer: RemoveServer{serverId='leader'}, state: Idle 01:50:03,40 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=follower, isVoting=true]] 01:50:03,40 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]]] 01:50:03,40 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]]] 01:50:03,40 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=dca62081-172e-4d2e-bb94-a1839ab8641d}, logIndex: 0, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:03,40 PM [test-akka.actor.default-dispatcher-15] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:03,40 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:03,41 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation RemoveServer{serverId='leader'} 01:50:03,41 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:03,41 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Set currentTerm=1, votedFor=null 01:50:03,41 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:50:03,41 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:50:03,41 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:03,41 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:50:03,41 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower follower: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]]]]] 01:50:03,42 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]]] 01:50:03,42 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:50:03,42 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower follower [WARN] [03/17/2024 13:50:03.042] [test-akka.actor.default-dispatcher-15] [akka://test/user/follower615] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@200eb500 01:50:03,42 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]]]]] 01:50:03,42 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Number of entries to be appended = 1 01:50:03,42 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]] 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]]] 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Updated server config: isVoting: true, peers: [] 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Log size is now 1 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=true, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached -1 (of expected -1) [INFO] [akkaDeadLetter][03/17/2024 13:50:03.043] [test-akka.actor.default-dispatcher-16] [akka://test/user/follower615] Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[akka://test/user/follower615] was unhandled. [10] dead letters encountered, no more dead letters will be logged in next [5.000 min]. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:03,43 PM [test-akka.actor.default-dispatcher-16] [INFO] TestActorRef - Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[akka://test/user/follower615] was unhandled. [10] dead letters encountered, no more dead letters will be logged in next [5.000 min]. This logging can be turned off or adjusted with configuration settings 'akka.log-dead-letters' and 'akka.log-dead-letters-during-shutdown'. 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 0 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to 0 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]] 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:03,43 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:03,44 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=0 [WARN] [03/17/2024 13:50:03.045] [test-akka.actor.default-dispatcher-14] [akka://test/user/leader616] unhandled message from TestActor[akka://test/user/leader616]: ServerRemoved [serverId=leader] 01:50:03,45 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]]] [WARN] [03/17/2024 13:50:03.046] [test-akka.actor.default-dispatcher-11] [akka://test/user/follower615] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@7bceebd5 01:50:03,46 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Commit index set to 0 01:50:03,46 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:03,46 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:50:03,46 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Setting last applied to 0 01:50:03,46 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Moving last applied index from -1 to 0 01:50:03,46 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true]]] 01:50:03,46 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Persisting ApplyJournalEntries with index=0 01:50:03,92 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServerLeader ending 01:50:03,92 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower614] 01:50:03,103 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader616] 01:50:03,104 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector617] 01:50:03,105 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector618#-641482661] 01:50:03,105 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower615] 01:50:03,207 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithLeaderChangeDuringInstallSnapshot starting [WARN] [03/17/2024 13:50:03.209] [test-akka.actor.default-dispatcher-14] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server621]: org.opendaylight.controller.cluster.common.actor.Monitor@5688e10f 01:50:03,209 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 01:50:03,211 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:03,211 PM [test-akka.actor.default-dispatcher-11] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [03/17/2024 13:50:03.309] [test-akka.actor.default-dispatcher-5] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader622]: org.opendaylight.controller.cluster.common.actor.Monitor@48082f2d 01:50:03,310 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:03,310 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:03,310 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:03,311 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:03,312 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:03,420 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server621, votingMember=true], state: Idle 01:50:03,421 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server621, votingMember=true] 01:50:03,421 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:50:03,421 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=false] to install on new-server 01:50:03,421 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: lastSequenceNumber prior to capture: -1 01:50:03,421 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating capture snapshot for new server new-server 01:50:03,421 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: CaptureSnapshotReply received by actor 01:50:03,421 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting of snapshot done: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=, ServerConfigPayload=null] 01:50:03,421 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:50:03,421 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendInstallSnapshot 01:50:03,422 PM [test-akka.actor.default-dispatcher-14] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 171 bytes, total chunks to send: 1 01:50:03,422 PM [test-akka.actor.default-dispatcher-14] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=171, offset=0, size=171, hashCode=-2041399403 01:50:03,422 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): next snapshot chunk size for follower new-server: 171 01:50:03,422 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server621), Chunk: 1/1 01:50:03,422 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Snapshot success - sequence number: -1 01:50:03,422 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Term 1 in "InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=171, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null]" message is greater than follower's term 0 - updating term 01:50:03,422 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: SnapshotComplete received 01:50:03,422 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:03,422 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot: InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=171, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null] 01:50:03,422 PM [test-akka.actor.default-dispatcher-11] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:50:03,422 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:50:03,422 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Snapshot installed from leader: leader 01:50:03,424 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying snapshot on follower: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=null, ServerConfigPayload=null] 01:50:03,424 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - lastSequenceNumber prior to persisting applied snapshot: -1 [WARN] [03/17/2024 13:50:03.424] [test-akka.actor.default-dispatcher-11] [akka://test/user/new-server621] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@50513818 01:50:03,424 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Snapshot success - sequence number: -1 01:50:03,424 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from -1 to -1 01:50:03,424 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:03,424 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: applySnapshot called 01:50:03,424 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:03,424 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:03,424 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to -1, nextIndex set to 0 01:50:03,424 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: SnapshotComplete received 01:50:03,424 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Sent message UnInitializedFollowerSnapshotReply to self 01:50:03,471 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:50:03,471 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: Dropping UnInitializedFollowerSnapshotReply for server new-server: not leader 01:50:05,40 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: handleInstallSnapshotTimeout for new server new-server 01:50:05,40 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning NO_LEADER for operation AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server621, votingMember=true] 01:50:05,40 PM [test-akka.actor.default-dispatcher-14] [WARN] RaftActorServerConfigurationSupport - leader: Timeout occured for new server new-server while installing snapshot 01:50:05,40 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithLeaderChangeDuringInstallSnapshot ending 01:50:05,40 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower619] 01:50:05,52 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector620#1320444343] 01:50:05,52 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server621] 01:50:05,52 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader622] 01:50:05,53 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector623] 01:50:05,155 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeToVotingWithNoLeaderAndOtherLeaderElected starting [WARN] [03/17/2024 13:50:05.157] [test-akka.actor.default-dispatcher-17] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@92077f0 01:50:05,158 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for node1 with journal batch size 1000 01:50:05,160 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for node2 with journal batch size 1000 01:50:05,160 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=1, votedFor=node1 [WARN] [03/17/2024 13:50:05.160] [test-akka.actor.default-dispatcher-14] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/node2]: org.opendaylight.controller.cluster.common.actor.Monitor@4fbec000 01:50:05,160 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:50:05,160 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 01:50:05,161 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Recovery completed - Switching actor to Follower - last log index = 0, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 1 01:50:05,162 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Set currentTerm=1, votedFor=node1 01:50:05,163 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:50:05,163 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=null, votingState=NON_VOTING]] 01:50:05,163 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Recovery completed - Switching actor to Follower - last log index = 0, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 1 01:50:05,272 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]], state: Idle 01:50:05,276 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState 01:50:05,276 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - node1: Sending local ElectionTimeout to start leader election 01:50:05,276 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 01:50:05,277 PM [test-akka.actor.default-dispatcher-5] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:05,277 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Received TimeoutNow - switching to Candidate 01:50:05,277 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Election: Candidate has following voting peers: [node2] 01:50:05,277 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=2, votedFor=node1 01:50:05,277 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Starting new election term 2 01:50:05,277 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Sending RequestVote [term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1] to peer node2 01:50:05,277 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:50:05,322 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Received TimeoutNow - switching to Candidate 01:50:05,322 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Candidate): Election: Candidate has following voting peers: [] 01:50:05,322 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Set currentTerm=2, votedFor=node2 01:50:05,322 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Candidate): Starting new election term 2 01:50:05,322 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:50:05,323 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Candidate): Received ElectionTimeout 01:50:05,323 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Election: Leader has following peers: [node1] 01:50:05,323 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Checking sendAppendEntries for follower node1: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:05,323 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Candidate) :- Switching from behavior Candidate to Leader, election term: 2 01:50:05,323 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): RaftRPC message received AppendEntries [leaderId=node2, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]], my term is 2 01:50:05,323 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): handleAppendEntries: AppendEntries [leaderId=node2, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] 01:50:05,324 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): New Leader node2 sent an AppendEntries to Candidate for term 2 - will switch to Follower 01:50:05,324 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate) :- Switching from behavior Candidate to Follower, election term: 2 01:50:05,440 PM [test-akka.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - node1: Last sync leader does not match current leader node2, need to catch up to -1 01:50:05,440 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 0, nextIndex: 1 01:50:05,440 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - node1: New leader node2 elected 01:50:05,440 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Not updating commit index to 0 - retrieved log entry with index 0, term 1 does not match the current term 2 01:50:05,440 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - node1: Forwarding ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]] to new leader 01:50:05,440 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=akka://test/user/node2, votingState=VOTING]] 01:50:05,440 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:05,440 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: getLeaderAddress leaderId = node2 peerAddress = akka://test/user/node2 01:50:05,440 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - node1: Not leader - forwarding to leader ActorSelection[Anchor(akka://test/), Path(/user/node2)] 01:50:05,440 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - node2: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]], state: Idle 01:50:05,440 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState [WARN] [03/17/2024 13:50:05.440] [test-akka.actor.default-dispatcher-5] [akka://test/user/node1] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@25677e6d 01:50:05,441 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=akka://test/user/node1, votingState=VOTING]] 01:50:05,441 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - node2: New server configuration : [ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]] 01:50:05,441 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Persist data SimpleReplicatedLogEntry [index=1, term=2, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]] 01:50:05,441 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=2, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]] 01:50:05,441 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=3a889072-161b-4e5c-8dac-5e2932b08e5a}, logIndex: 1, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:05,441 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:05,441 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): sendAppendEntries: 1 is present for follower node1 01:50:05,441 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Sending AppendEntries to follower node1: AppendEntries [leaderId=node2, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=2, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]]]] 01:50:05,441 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - node2: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]] 01:50:05,441 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): handleAppendEntries: AppendEntries [leaderId=node2, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=2, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]]]] 01:50:05,441 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Number of entries to be appended = 1 01:50:05,441 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:50:05,441 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]] 01:50:05,441 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=2, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]] 01:50:05,442 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=akka://test/user/node2, votingState=VOTING]] 01:50:05,442 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Log size is now 2 01:50:05,442 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): handleAppendEntries returning : AppendEntriesReply [term=2, success=true, followerId=node1, logLastIndex=1, logLastTerm=2, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:05,442 PM [test-akka.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached -1 (of expected -1) 01:50:05,442 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 1, nextIndex: 2 01:50:05,442 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Not updating commit index to 0 - retrieved log entry with index 0, term 1 does not match the current term 2 01:50:05,442 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:05,443 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: persist complete SimpleReplicatedLogEntry [index=1, term=2, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]] [WARN] [03/17/2024 13:50:05.443] [test-akka.actor.default-dispatcher-17] [akka://test/user/node1] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@7b787436 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: persist complete SimpleReplicatedLogEntry [index=1, term=2, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]] 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Not updating commit index to 0 - retrieved log entry with index 0, term 1 does not match the current term 2 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: -1 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Setting last applied to 0 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Moving last applied index from -1 to 0 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=true]]] 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Setting last applied to 1 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Moving last applied index from 0 to 1 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]] 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: fakeSnapshot purging log to 0 for term 2 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupport - node2: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:05,443 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Persisting ApplyJournalEntries with index=1 01:50:05,560 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Commit index set to 1 01:50:05,560 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 1 (of expected -1) 01:50:05,560 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 1 01:50:05,560 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Setting last applied to 0 01:50:05,560 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Moving last applied index from -1 to 0 01:50:05,561 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=true]]] 01:50:05,561 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Setting last applied to 1 01:50:05,561 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Moving last applied index from 0 to 1 01:50:05,561 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]] 01:50:05,561 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: fakeSnapshot purging log to 0 for term 2 01:50:05,561 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Persisting ApplyJournalEntries with index=1 01:50:05,594 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeToVotingWithNoLeaderAndOtherLeaderElected ending 01:50:05,594 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower624] 01:50:05,605 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector625#-1094502252] 01:50:05,605 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/node1] 01:50:05,605 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector626#-640969657] 01:50:05,605 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/node2] 01:50:05,708 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithInstallSnapshotTimeout starting [WARN] [03/17/2024 13:50:05.709] [test-akka.actor.default-dispatcher-14] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server629]: org.opendaylight.controller.cluster.common.actor.Monitor@421efe4a 01:50:05,710 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 01:50:05,711 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:05,711 PM [test-akka.actor.default-dispatcher-5] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy 01:50:05,811 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:05,811 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:05,811 PM [test-akka.actor.default-dispatcher-16] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 [WARN] [03/17/2024 13:50:05.811] [test-akka.actor.default-dispatcher-5] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader630]: org.opendaylight.controller.cluster.common.actor.Monitor@11c3d59f 01:50:05,812 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:05,813 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:05,921 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server629, votingMember=true], state: Idle 01:50:05,921 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server629, votingMember=true] 01:50:05,921 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:50:05,921 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=false] to install on new-server 01:50:05,921 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: lastSequenceNumber prior to capture: -1 01:50:05,921 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating capture snapshot for new server new-server 01:50:05,921 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=bogus] 01:50:05,921 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - leader: Dropping UnInitializedFollowerSnapshotReply for server bogus: server Id doesn't match 01:50:05,922 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: CaptureSnapshotReply received by actor 01:50:05,922 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting of snapshot done: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=, ServerConfigPayload=null] 01:50:05,922 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:50:05,922 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendInstallSnapshot 01:50:05,922 PM [test-akka.actor.default-dispatcher-6] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 171 bytes, total chunks to send: 1 01:50:05,922 PM [test-akka.actor.default-dispatcher-6] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=171, offset=0, size=171, hashCode=-2041399403 01:50:05,922 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): next snapshot chunk size for follower new-server: 171 01:50:05,922 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server629), Chunk: 1/1 01:50:05,922 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Snapshot success - sequence number: -1 01:50:05,922 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: SnapshotComplete received 01:50:06,40 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:06,40 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:06,40 PM [test-akka.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:50:06,40 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: -1, nextIndex: 0 [WARN] [03/17/2024 13:50:06.041] [test-akka.actor.default-dispatcher-6] [akka://test/user/new-server629] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@2aaf2a06 01:50:06,140 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - leader: handleInstallSnapshotTimeout for new server new-server 01:50:06,140 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning TIMEOUT for operation AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server629, votingMember=true] 01:50:06,140 PM [test-akka.actor.default-dispatcher-6] [WARN] RaftActorServerConfigurationSupport - leader: Timeout occured for new server new-server while installing snapshot 01:50:06,140 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithInstallSnapshotTimeout ending 01:50:06,140 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower627] 01:50:06,151 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector628#839774799] 01:50:06,151 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server629] 01:50:06,152 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader630] 01:50:06,154 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithNoExistingFollower starting [WARN] [03/17/2024 13:50:06.155] [test-akka.actor.default-dispatcher-14] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server633]: org.opendaylight.controller.cluster.common.actor.Monitor@2ab4cbee 01:50:06,156 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 01:50:06,156 PM [main] [DEBUG] MockRaftActorContext - test: Moving last applied index from -1 to 1 [WARN] [03/17/2024 13:50:06.157] [test-akka.actor.default-dispatcher-5] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader634]: org.opendaylight.controller.cluster.common.actor.Monitor@5ef7c833 01:50:06,157 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to 1 01:50:06,157 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:06,158 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:06,158 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:06,158 PM [test-akka.actor.default-dispatcher-5] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy 01:50:06,160 PM [test-akka.actor.default-dispatcher-15] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = 1, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 2 01:50:06,160 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:06,269 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server633, votingMember=true], state: Idle 01:50:06,269 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server633, votingMember=true] 01:50:06,269 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=1, lastAppliedTerm=1, lastIndex=1, lastTerm=1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=false] to install on new-server 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: lastSequenceNumber prior to capture: -1 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating capture snapshot for new server new-server 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: CaptureSnapshotReply received by actor 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting of snapshot done: Snapshot [lastIndex=1, lastTerm=1, lastAppliedIndex=1, lastAppliedTerm=1, unAppliedEntries size=0, state=MockSnapshotState [state=[0, 1]], electionTerm=1, electionVotedFor=, ServerConfigPayload=null] 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendInstallSnapshot 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 324 bytes, total chunks to send: 1 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=324, offset=0, size=324, hashCode=-1763937099 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): next snapshot chunk size for follower new-server: 324 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server633), Chunk: 1/1 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Snapshot success - sequence number: -1 01:50:06,270 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: SnapshotComplete received 01:50:06,270 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Term 1 in "InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=1, lastIncludedTerm=1, datasize=324, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null]" message is greater than follower's term 0 - updating term 01:50:06,270 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:06,271 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot: InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=1, lastIncludedTerm=1, datasize=324, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null] 01:50:06,271 PM [test-akka.actor.default-dispatcher-11] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to 1 01:50:06,271 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:50:06,271 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Snapshot installed from leader: leader 01:50:06,272 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying snapshot on follower: Snapshot [lastIndex=1, lastTerm=1, lastAppliedIndex=1, lastAppliedTerm=1, unAppliedEntries size=0, state=MockSnapshotState [state=[0, 1]], electionTerm=1, electionVotedFor=null, ServerConfigPayload=null] 01:50:06,272 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - lastSequenceNumber prior to persisting applied snapshot: -1 01:50:06,272 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Snapshot success - sequence number: -1 01:50:06,273 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from -1 to 1 01:50:06,273 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null [WARN] [03/17/2024 13:50:06.272] [test-akka.actor.default-dispatcher-14] [akka://test/user/new-server633] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@2e04f6e2 01:50:06,273 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: applySnapshot called 01:50:06,273 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:06,273 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: SnapshotComplete received 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to 1, nextIndex set to 2 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Sent message UnInitializedFollowerSnapshotReply to self 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: fakeSnapshot purging log to 0 for term 1 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=2, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=2, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=4862784c-25bc-4ba6-8a27-cb8a8994cf6c}, logIndex: 2, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:06,273 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:50:06,274 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 2 is present for follower new-server 01:50:06,274 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=2, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:06,274 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server633, votingMember=true] 01:50:06,274 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=2, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:06,274 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Number of entries to be appended = 1 01:50:06,274 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): After cleanup, lastIndex: 1, entries to be added from: 0 01:50:06,274 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:06,274 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Append log entry and persist SimpleReplicatedLogEntry [index=2, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:06,274 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 01:50:06,274 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Log size is now 1 01:50:06,274 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=new-server, logLastIndex=2, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=true, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:06,274 PM [test-akka.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 1 (of expected 1) 01:50:06,274 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 2, nextIndex: 3 01:50:06,274 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:50:06,276 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=2, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:06,276 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 01:50:06,276 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 2 01:50:06,276 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from 1 to 2 01:50:06,276 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 2 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:06,276 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: fakeSnapshot purging log to 1 for term 1 01:50:06,276 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:06,276 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=2 01:50:06,277 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: persist complete SimpleReplicatedLogEntry [index=2, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] [WARN] [03/17/2024 13:50:06.277] [test-akka.actor.default-dispatcher-17] [akka://test/user/new-server633] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@5d8bfd7b 01:50:06,389 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Commit index set to 2 01:50:06,389 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 2 (of expected 1) 01:50:06,389 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): 1, lastIndex(): 2 01:50:06,389 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Setting last applied to 2 01:50:06,389 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from 1 to 2 01:50:06,389 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying state for log index 2 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:06,390 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Persisting ApplyJournalEntries with index=2 01:50:06,422 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithNoExistingFollower ending 01:50:06,422 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower631] 01:50:06,433 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector632#335818288] 01:50:06,433 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server633] 01:50:06,433 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader634] 01:50:06,435 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector635] 01:50:06,436 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeToVotingWithNoLeaderAndForwardedToOtherNodeAfterElectionTimeout starting 01:50:06,441 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for node1 with journal batch size 1000 [WARN] [03/17/2024 13:50:06.441] [test-akka.actor.default-dispatcher-14] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@26418a6a 01:50:06,444 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=1, votedFor=node1 01:50:06,444 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:50:06,444 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=NON_VOTING]] 01:50:06,444 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Recovery completed - Switching actor to Follower - last log index = 0, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 1 [WARN] [03/17/2024 13:50:06.542] [test-akka.actor.default-dispatcher-17] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/node2]: org.opendaylight.controller.cluster.common.actor.Monitor@1df763a5 01:50:06,543 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for node2 with journal batch size 1000 01:50:06,545 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Set currentTerm=1, votedFor=node1 01:50:06,545 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:50:06,545 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Updated server config: isVoting: false, peers: [PeerInfo [id=node1, address=null, votingState=NON_VOTING]] 01:50:06,545 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Received ReplicatedLogEntry for recovery: index: 1, size: 1 01:50:06,545 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Received apply journal entries for recovery, applying to state: 0 to 1 01:50:06,545 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Moving last applied index from -1 to 1 01:50:06,546 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Recovery completed in 81.88 μs - Switching actor to Follower - last log index = 1, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 2 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]], state: Idle 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - node1: Sending local ElectionTimeout to start leader election 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Received TimeoutNow - switching to Candidate 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Election: Candidate has following voting peers: [node2] 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=2, votedFor=node1 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Starting new election term 2 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Sending RequestVote [term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1] to peer node2 01:50:06,554 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:50:06,554 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 01:50:06,554 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Cluster state: [] 01:50:06,554 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Candidate in requestVote:RequestVote [term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1] with higher term appears reachable, updating term. 01:50:06,554 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Term 2 in "RequestVote [term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1]" message is greater than follower's term 1 - updating term 01:50:06,554 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Set currentTerm=2, votedFor=null 01:50:06,554 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): In requestVote: RequestVote [term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1] - currentTerm: 2, votedFor: null, lastIndex: 1, lastTerm: 1 01:50:06,554 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): requestVote returning: RequestVoteReply [term=2, voteGranted=false] 01:50:06,555 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): RaftRPC message received RequestVoteReply [term=2, voteGranted=false], my term is 2 01:50:06,555 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): handleRequestVoteReply: RequestVoteReply [term=2, voteGranted=false], current voteCount: 1 01:50:06,870 PM [test-akka.actor.default-dispatcher-15] [WARN] RaftActorServerConfigurationSupport - node1: Leader election timed out - cannot apply operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]] 01:50:06,870 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=akka://test/user/node2, votingState=NON_VOTING]] 01:50:06,870 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - node1: tryToForwardOperationToAnotherServer - servers already visited [] 01:50:06,870 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - node1: Found server ActorSelection[Anchor(akka://test/), Path(/user/node2)] to forward to 01:50:06,871 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - node2: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[node1]], state: Idle 01:50:06,871 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState 01:50:06,871 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - node2: Sending local ElectionTimeout to start leader election 01:50:06,871 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=null, votingState=VOTING]] 01:50:06,871 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Received TimeoutNow - switching to Candidate 01:50:06,871 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Candidate): Election: Candidate has following voting peers: [node1] 01:50:06,871 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Set currentTerm=3, votedFor=node2 01:50:06,871 PM [test-akka.actor.default-dispatcher-15] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Candidate): Starting new election term 3 01:50:06,871 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Candidate): Sending RequestVote [term=3, candidateId=node2, lastLogIndex=1, lastLogTerm=1] to peer node1 01:50:06,872 PM [test-akka.actor.default-dispatcher-15] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower) :- Switching from behavior Follower to Candidate, election term: 3 01:50:06,872 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 01:50:06,872 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Cluster state: [] 01:50:06,872 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Candidate in requestVote:RequestVote [term=3, candidateId=node2, lastLogIndex=1, lastLogTerm=1] with higher term appears reachable, updating term. 01:50:06,872 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Term 3 in "RequestVote [term=3, candidateId=node2, lastLogIndex=1, lastLogTerm=1]" message is greater than follower's term 2 - updating term 01:50:06,872 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=3, votedFor=null 01:50:06,872 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): In requestVote: RequestVote [term=3, candidateId=node2, lastLogIndex=1, lastLogTerm=1] - currentTerm: 3, votedFor: null, lastIndex: 0, lastTerm: 1 01:50:06,872 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=3, votedFor=node2 01:50:06,872 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): requestVote returning: RequestVoteReply [term=3, voteGranted=true] 01:50:06,872 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Candidate): RaftRPC message received RequestVoteReply [term=3, voteGranted=true], my term is 3 01:50:06,872 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Candidate): handleRequestVoteReply: RequestVoteReply [term=3, voteGranted=true], current voteCount: 1 01:50:06,873 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Election: Leader has following peers: [node1] 01:50:06,873 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Checking sendAppendEntries for follower node1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:06,873 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Candidate) :- Switching from behavior Candidate to Leader, election term: 3 01:50:06,873 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - node1: Last sync leader does not match current leader node2, need to catch up to -1 01:50:06,873 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - node2: New leader node2 elected 01:50:06,873 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - node2: New server configuration : [ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]] 01:50:06,873 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Persist data SimpleReplicatedLogEntry [index=2, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]] 01:50:06,873 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Append log entry and persist SimpleReplicatedLogEntry [index=2, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]] [WARN] [03/17/2024 13:50:06.873] [test-akka.actor.default-dispatcher-14] [akka://test/user/node1] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@2c90aa32 01:50:06,873 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=543abdcb-e018-4aea-a633-82e36e15c3e0}, logIndex: 2, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:06,873 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Checking sendAppendEntries for follower node1: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 01:50:06,873 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - node2: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[node1]] 01:50:06,873 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached -1 (of expected -1) 01:50:06,874 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 0, nextIndex: 1 01:50:06,874 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: fakeSnapshot purging log to 0 for term 3 01:50:06,874 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:50:06,874 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): sendAppendEntries: 1 is present for follower node1 [WARN] [03/17/2024 13:50:06.874] [test-akka.actor.default-dispatcher-14] [akka://test/user/node1] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@3939123c 01:50:06,874 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Sending AppendEntries to follower node1: AppendEntries [leaderId=node2, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=1, payload=2], SimpleReplicatedLogEntry [index=2, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]]]] 01:50:06,874 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): sendAppendEntries: 1 is present for follower node1 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): handleAppendEntries: AppendEntries [leaderId=node2, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=1, payload=2], SimpleReplicatedLogEntry [index=2, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]]]] 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Number of entries to be appended = 2 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Append entry to log 2 01:50:06,874 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: persist complete SimpleReplicatedLogEntry [index=2, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]] 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=1, payload=2] 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]] 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Append log entry and persist SimpleReplicatedLogEntry [index=2, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]] 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=akka://test/user/node2, votingState=VOTING]] 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Log size is now 3 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Commit index set to 1 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): handleAppendEntries returning : AppendEntriesReply [term=3, success=true, followerId=node1, logLastIndex=2, logLastTerm=3, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 1 (of expected -1) 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 2 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Setting last applied to 0 01:50:06,874 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Moving last applied index from -1 to 0 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=false]]] 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Setting last applied to 1 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Moving last applied index from 0 to 1 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Applying state for log index 1 data 2 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: applyState called: 2 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: fakeSnapshot purging log to 0 for term 3 01:50:06,875 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 2, nextIndex: 3 01:50:06,875 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 01:50:06,875 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Setting last applied to 2 01:50:06,875 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Moving last applied index from 1 to 2 01:50:06,875 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Applying state for log index 2 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]] 01:50:06,875 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: fakeSnapshot purging log to 1 for term 3 01:50:06,875 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: persist complete SimpleReplicatedLogEntry [index=1, term=1, payload=2] 01:50:06,875 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 01:50:06,875 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: persist complete SimpleReplicatedLogEntry [index=2, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]]] 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Persisting ApplyJournalEntries with index=1 01:50:06,875 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupport - node2: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:06,875 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Persisting ApplyJournalEntries with index=2 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Commit index set to 2 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 2 (of expected -1) 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): 1, lastIndex(): 2 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Setting last applied to 2 01:50:06,875 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Moving last applied index from 1 to 2 01:50:06,876 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Applying state for log index 2 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]] 01:50:06,876 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: fakeSnapshot purging log to 1 for term 3 01:50:06,876 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Persisting ApplyJournalEntries with index=2 01:50:06,925 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeToVotingWithNoLeaderAndForwardedToOtherNodeAfterElectionTimeout ending 01:50:06,925 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower636] 01:50:06,936 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector637#277743316] 01:50:06,936 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/node1] 01:50:06,936 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector638#-1883211111] 01:50:06,936 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/node2] 01:50:07,38 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithNoConsensusReached starting [WARN] [03/17/2024 13:50:07.040] [test-akka.actor.default-dispatcher-17] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server641]: org.opendaylight.controller.cluster.common.actor.Monitor@31f91104 01:50:07,40 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 01:50:07,42 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:07,42 PM [test-akka.actor.default-dispatcher-11] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [03/17/2024 13:50:07.141] [test-akka.actor.default-dispatcher-11] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader642]: org.opendaylight.controller.cluster.common.actor.Monitor@2b214b94 01:50:07,141 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:07,141 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:07,142 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:07,144 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:07,144 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:07,153 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server641, votingMember=true], state: Idle 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server641, votingMember=true] 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=false] to install on new-server 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: lastSequenceNumber prior to capture: -1 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating capture snapshot for new server new-server 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: CaptureSnapshotReply received by actor 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting of snapshot done: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=, ServerConfigPayload=null] 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendInstallSnapshot 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 171 bytes, total chunks to send: 1 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=171, offset=0, size=171, hashCode=-2041399403 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): next snapshot chunk size for follower new-server: 171 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server641), Chunk: 1/1 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Snapshot success - sequence number: -1 01:50:07,154 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: SnapshotComplete received 01:50:07,155 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Term 1 in "InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=171, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null]" message is greater than follower's term 0 - updating term 01:50:07,155 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:07,155 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot: InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=171, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null] 01:50:07,155 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:50:07,155 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:50:07,155 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Snapshot installed from leader: leader 01:50:07,156 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying snapshot on follower: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=null, ServerConfigPayload=null] 01:50:07,156 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - lastSequenceNumber prior to persisting applied snapshot: -1 01:50:07,156 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Snapshot success - sequence number: -1 01:50:07,156 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from -1 to -1 01:50:07,156 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:07,156 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: applySnapshot called [WARN] [03/17/2024 13:50:07.156] [test-akka.actor.default-dispatcher-11] [akka://test/user/new-server641] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@40969be3 01:50:07,156 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:07,156 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:07,156 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: SnapshotComplete received 01:50:07,156 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to -1, nextIndex set to 0 01:50:07,156 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Sent message UnInitializedFollowerSnapshotReply to self 01:50:07,204 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:50:07,204 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:50:07,204 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:07,204 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:07,204 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=58c3a013-f844-4598-8c9b-073e595a0cd6}, logIndex: 0, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:07,204 PM [test-akka.actor.default-dispatcher-5] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:07,204 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:07,204 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:07,204 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:07,205 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server641, votingMember=true] 01:50:07,206 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:07,254 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=, votingMember=false], state: Persisting 01:50:07,255 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - leader: Server operation already in progress - queueing AddServer [newServerId=new-server2, newServerAddress=, votingMember=false] 01:50:07,269 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:07,390 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:07,390 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:07,510 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:07,510 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:07,630 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:07,630 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:07,749 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:07,749 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:07,869 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:07,870 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:07,990 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:07,990 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:08,109 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:08,110 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:09,219 PM [test-akka.actor.default-dispatcher-5] [WARN] RaftActorServerConfigurationSupport - leader: Timeout occured while replicating the new server configuration for new-server 01:50:09,219 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning PRIOR_REQUEST_CONSENSUS_TIMEOUT for operation AddServer [newServerId=new-server2, newServerAddress=, votingMember=false] 01:50:09,220 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=, votingMember=false], state: Persisting 01:50:09,220 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning PRIOR_REQUEST_CONSENSUS_TIMEOUT for operation AddServer [newServerId=new-server2, newServerAddress=, votingMember=false] 01:50:09,220 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithNoConsensusReached ending 01:50:09,220 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower639] 01:50:09,231 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector640#555593894] 01:50:09,231 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server641] 01:50:09,232 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader642] 01:50:09,232 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector643] 01:50:09,232 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-serverCollector644] 01:50:09,334 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServerLeaderWithNoFollowers starting [WARN] [03/17/2024 13:50:09.335] [test-akka.actor.default-dispatcher-15] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader646]: org.opendaylight.controller.cluster.common.actor.Monitor@73825e0e 01:50:09,336 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:09,336 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:09,336 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:09,342 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:09,342 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:09,446 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupport - leader: onRemoveServer: RemoveServer{serverId='leader'}, state: Idle 01:50:09,446 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServerLeaderWithNoFollowers ending 01:50:09,446 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower645] 01:50:09,457 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader646] 01:50:09,459 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithLeaderChangeBeforePriorSnapshotComplete starting [WARN] [03/17/2024 13:50:09.461] [test-akka.actor.default-dispatcher-11] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server649]: org.opendaylight.controller.cluster.common.actor.Monitor@41cf52f8 01:50:09,462 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 01:50:09,463 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:09,463 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:09,463 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:09,464 PM [test-akka.actor.default-dispatcher-5] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 [WARN] [03/17/2024 13:50:09.464] [test-akka.actor.default-dispatcher-5] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader650]: org.opendaylight.controller.cluster.common.actor.Monitor@5a624feb 01:50:09,464 PM [test-akka.actor.default-dispatcher-11] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy 01:50:09,467 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:09,467 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:09,564 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Take a snapshot of current state. lastReplicatedLog is null and replicatedToAllIndex is -1 01:50:09,564 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:50:09,564 PM [test-akka.actor.default-dispatcher-16] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true] 01:50:09,564 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: lastSequenceNumber prior to capture: -1 01:50:09,564 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: CaptureSnapshotReply received by actor 01:50:09,564 PM [test-akka.actor.default-dispatcher-16] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting of snapshot done: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=, ServerConfigPayload=null] 01:50:09,564 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: user triggered or root overwrite snapshot encountered, trimming log up to last applied index -1 01:50:09,564 PM [test-akka.actor.default-dispatcher-16] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:50:09,574 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server649, votingMember=true], state: Idle 01:50:09,575 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server649, votingMember=true] 01:50:09,575 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - captureToInstall should not be called in state Persisting 01:50:09,575 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupport - leader: Snapshot already in progress - waiting for completion 01:50:09,577 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Snapshot success - sequence number: -1 01:50:09,577 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupport - leader: handleInstallSnapshotTimeout for new server new-server 01:50:09,578 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning NO_LEADER for operation AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server649, votingMember=true] 01:50:09,578 PM [test-akka.actor.default-dispatcher-16] [WARN] RaftActorServerConfigurationSupport - leader: Timeout occured for new server new-server while waiting for prior snapshot to complete 01:50:09,578 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithLeaderChangeBeforePriorSnapshotComplete ending 01:50:09,578 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower647] [WARN] [03/17/2024 13:50:09.578] [test-akka.actor.default-dispatcher-16] [akka://test/user/leader650] unhandled message from TestActor[akka://test/user/leader650]: org.opendaylight.controller.cluster.raft.base.messages.TimeoutNow@55f24b56 01:50:09,578 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: SnapshotComplete received 01:50:09,588 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector648#320337273] 01:50:09,589 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server649] 01:50:09,589 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader650] 01:50:09,589 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector651] 01:50:09,591 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServersAsNonVoting starting 01:50:09,594 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 [WARN] [03/17/2024 13:50:09.594] [test-akka.actor.default-dispatcher-16] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server654]: org.opendaylight.controller.cluster.common.actor.Monitor@228a377f [WARN] [03/17/2024 13:50:09.595] [test-akka.actor.default-dispatcher-5] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader655]: org.opendaylight.controller.cluster.common.actor.Monitor@77aa5b56 01:50:09,595 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:09,595 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:09,595 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:09,595 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:09,596 PM [test-akka.actor.default-dispatcher-17] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy 01:50:09,597 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:09,598 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:09,710 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server654, votingMember=false], state: Idle 01:50:09,710 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server654, votingMember=false] 01:50:09,710 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: New follower is non-voting - directly persisting new server configuration 01:50:09,710 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 01:50:09,710 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:09,710 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=70fd2a98-efd0-4f68-b1d1-6acec9a3d8eb}, logIndex: 0, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 0 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to 0 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server654, votingMember=false] 01:50:09,711 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:09,711 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:09,711 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=0 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: -1, nextIndex: 0 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:09,711 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:09,712 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:09,712 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] [WARN] [03/17/2024 13:50:09.713] [test-akka.actor.default-dispatcher-17] [akka://test/user/new-server654] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@284c6baa 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Number of entries to be appended = 1 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Log size is now 1 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Commit index set to 0 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=new-server, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=true, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:50:09,713 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 0, nextIndex: 1 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Setting last applied to 0 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from -1 to 0 01:50:09,713 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:09,713 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:09,714 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] [WARN] [03/17/2024 13:50:09.714] [test-akka.actor.default-dispatcher-17] [akka://test/user/new-server654] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@4b6b2bc9 01:50:09,714 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Persisting ApplyJournalEntries with index=0 01:50:09,830 PM [test-akka.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:09,950 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:10,70 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:10,190 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:10,265 PM [main] [DEBUG] RaftActorServerConfigurationSupportTest - new-server2: Set currentTerm=1, votedFor=leader 01:50:10,265 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=akka://test/user/follower652, votingMember=false], state: Idle 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server2, newServerAddress=akka://test/user/follower652, votingMember=false] 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: New follower is non-voting - directly persisting new server configuration 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=9214d64b-7c8f-4013-98c1-80d0a595f17d}, logIndex: 1, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 1 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from 0 to 1 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 1 is present for follower new-server 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:10,266 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server2: active: false, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:10,267 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation AddServer [newServerId=new-server2, newServerAddress=akka://test/user/follower652, votingMember=false] 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Number of entries to be appended = 1 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:50:10,267 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:10,267 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=1 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=null, votingState=VOTING], PeerInfo [id=new-server2, address=null, votingState=NON_VOTING]] 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Log size is now 2 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Commit index set to 1 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=new-server, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=true, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Setting last applied to 1 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from 0 to 1 01:50:10,267 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:10,268 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 1, nextIndex: 2 [ERROR] [03/17/2024 13:50:10.267] [test-akka.actor.internal-dispatcher-3] [akka://test/user/follower652] Cannot invoke "org.opendaylight.controller.cluster.raft.ReplicatedLog.lastIndex()" because the return value of "org.opendaylight.controller.cluster.raft.RaftActorContext.getReplicatedLog()" is null java.lang.NullPointerException: Cannot invoke "org.opendaylight.controller.cluster.raft.ReplicatedLog.lastIndex()" because the return value of "org.opendaylight.controller.cluster.raft.RaftActorContext.getReplicatedLog()" is null at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.lastIndex(AbstractRaftActorBehavior.java:315) at org.opendaylight.controller.cluster.raft.behaviors.Follower.isOutOfSync(Follower.java:342) at org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:177) at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.appendEntries(AbstractRaftActorBehavior.java:142) at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.handleMessage(AbstractRaftActorBehavior.java:415) at org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:485) at org.opendaylight.controller.cluster.raft.utils.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at akka.actor.UntypedAbstractActor$$anonfun$receive$1.applyOrElse(AbstractActor.scala:332) at akka.actor.Actor.aroundReceive(Actor.scala:537) at akka.actor.Actor.aroundReceive$(Actor.scala:535) at akka.actor.AbstractActor.aroundReceive(AbstractActor.scala:220) at akka.actor.ActorCell.receiveMessage(ActorCell.scala:579) at akka.actor.ActorCell.invoke(ActorCell.scala:547) at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:270) at akka.dispatch.Mailbox.run(Mailbox.scala:231) at akka.dispatch.Mailbox.exec(Mailbox.scala:243) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) 01:50:10,268 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:10,268 PM [test-akka.actor.default-dispatcher-14] [ERROR] OneForOneStrategy - Cannot invoke "org.opendaylight.controller.cluster.raft.ReplicatedLog.lastIndex()" because the return value of "org.opendaylight.controller.cluster.raft.RaftActorContext.getReplicatedLog()" is null java.lang.NullPointerException: Cannot invoke "org.opendaylight.controller.cluster.raft.ReplicatedLog.lastIndex()" because the return value of "org.opendaylight.controller.cluster.raft.RaftActorContext.getReplicatedLog()" is null at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.lastIndex(AbstractRaftActorBehavior.java:315) at org.opendaylight.controller.cluster.raft.behaviors.Follower.isOutOfSync(Follower.java:342) at org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:177) at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.appendEntries(AbstractRaftActorBehavior.java:142) at org.opendaylight.controller.cluster.raft.behaviors.AbstractRaftActorBehavior.handleMessage(AbstractRaftActorBehavior.java:415) at org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:485) at org.opendaylight.controller.cluster.raft.utils.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at akka.actor.UntypedAbstractActor$$anonfun$receive$1.applyOrElse(AbstractActor.scala:332) at akka.actor.Actor.aroundReceive(Actor.scala:537) at akka.actor.Actor.aroundReceive$(Actor.scala:535) at akka.actor.AbstractActor.aroundReceive(AbstractActor.scala:220) at akka.actor.ActorCell.receiveMessage(ActorCell.scala:579) at akka.actor.ActorCell.invoke(ActorCell.scala:547) at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:270) at akka.dispatch.Mailbox.run(Mailbox.scala:231) at akka.dispatch.Mailbox.exec(Mailbox.scala:243) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) 01:50:10,268 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:10,268 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServersAsNonVoting ending 01:50:10,268 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower652] 01:50:10,271 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: persist complete SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:10,271 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Persisting ApplyJournalEntries with index=1 01:50:10,279 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector653#1192890011] 01:50:10,279 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server654] 01:50:10,280 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader655] 01:50:10,280 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector656] 01:50:10,282 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithPriorSnapshotInProgress starting [WARN] [03/17/2024 13:50:10.283] [test-akka.actor.default-dispatcher-16] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server659]: org.opendaylight.controller.cluster.common.actor.Monitor@71ba0a2b 01:50:10,283 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 [WARN] [03/17/2024 13:50:10.285] [test-akka.actor.default-dispatcher-18] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader660]: org.opendaylight.controller.cluster.common.actor.Monitor@26efb7f 01:50:10,285 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:10,285 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:10,285 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:10,286 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:10,286 PM [test-akka.actor.default-dispatcher-17] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Take a snapshot of current state. lastReplicatedLog is null and replicatedToAllIndex is -1 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true] 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: lastSequenceNumber prior to capture: -1 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: CaptureSnapshotReply received by actor 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting of snapshot done: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=, ServerConfigPayload=null] 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: user triggered or root overwrite snapshot encountered, trimming log up to last applied index -1 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Snapshot success - sequence number: -1 01:50:10,288 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: SnapshotComplete received 01:50:10,346 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server659, votingMember=true], state: Idle 01:50:10,346 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server659, votingMember=true] 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=false] to install on new-server 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: lastSequenceNumber prior to capture: -1 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating capture snapshot for new server new-server 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - commit should not be called in state Creating 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: CaptureSnapshotReply received by actor 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting of snapshot done: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=, ServerConfigPayload=null] 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendInstallSnapshot 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 171 bytes, total chunks to send: 1 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=171, offset=0, size=171, hashCode=-2041399403 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): next snapshot chunk size for follower new-server: 171 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server659), Chunk: 1/1 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Snapshot success - sequence number: -1 01:50:10,347 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: SnapshotComplete received 01:50:10,347 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Term 1 in "InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=171, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null]" message is greater than follower's term 0 - updating term 01:50:10,347 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:10,347 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot: InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=171, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null] 01:50:10,347 PM [test-akka.actor.default-dispatcher-18] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:50:10,347 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:50:10,347 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Snapshot installed from leader: leader 01:50:10,348 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying snapshot on follower: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=null, ServerConfigPayload=null] 01:50:10,348 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - lastSequenceNumber prior to persisting applied snapshot: -1 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Snapshot success - sequence number: -1 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from -1 to -1 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: applySnapshot called 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] [WARN] [03/17/2024 13:50:10.349] [test-akka.actor.default-dispatcher-18] [akka://test/user/new-server659] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@7c1321ea 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:10,349 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: SnapshotComplete received 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to -1, nextIndex set to 0 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Sent message UnInitializedFollowerSnapshotReply to self 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=d7ecc3d2-1cfb-48f9-9a45-c13222bc030a}, logIndex: 0, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:10,349 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server659, votingMember=true] 01:50:10,349 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:10,349 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Number of entries to be appended = 1 01:50:10,349 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:50:10,349 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:10,349 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:10,350 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 01:50:10,350 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Log size is now 1 01:50:10,350 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=new-server, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=true, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:10,350 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 0, nextIndex: 1 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 0 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to 0 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=0 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Commit index set to 0 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Setting last applied to 0 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from -1 to 0 01:50:10,350 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] [WARN] [03/17/2024 13:50:10.350] [test-akka.actor.default-dispatcher-16] [akka://test/user/new-server659] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@77f4d0c1 01:50:10,350 PM [test-akka.actor.default-dispatcher-16] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Persisting ApplyJournalEntries with index=0 01:50:10,400 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithPriorSnapshotInProgress ending 01:50:10,400 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower657] 01:50:10,411 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector658#2119066386] 01:50:10,411 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server659] 01:50:10,412 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader660] 01:50:10,412 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector661] 01:50:10,515 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeLeaderToNonVotingInSingleNode starting [WARN] [03/17/2024 13:50:10.516] [test-akka.actor.default-dispatcher-16] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader663]: org.opendaylight.controller.cluster.common.actor.Monitor@6bc7ce5c 01:50:10,516 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:10,516 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:10,517 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:10,518 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:10,518 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:10,626 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]], state: Idle 01:50:10,626 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState 01:50:10,627 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning INVALID_REQUEST for operation ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]] 01:50:10,627 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeLeaderToNonVotingInSingleNode ending 01:50:10,627 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower662] 01:50:10,638 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader663] 01:50:10,741 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeLeaderToNonVoting starting [WARN] [03/17/2024 13:50:10.743] [test-akka.actor.default-dispatcher-17] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader667]: org.opendaylight.controller.cluster.common.actor.Monitor@c2bf4ed 01:50:10,743 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:10,743 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:10,743 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:10,745 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:10,745 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [follower2, follower] 01:50:10,745 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:50:10,745 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [03/17/2024 13:50:10.745] [test-akka.actor.default-dispatcher-16] [akka://test/user/follower2666] received dead letter from TestActor[akka://test/user/leader667]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] [WARN] [03/17/2024 13:50:10.745] [test-akka.actor.default-dispatcher-16] [akka://test/user/follower665] received dead letter from TestActor[akka://test/user/leader667]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] [WARN] [03/17/2024 13:50:10.844] [test-akka.actor.default-dispatcher-14] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/follower665]: org.opendaylight.controller.cluster.common.actor.Monitor@4ff8ab9c 01:50:10,845 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for follower with journal batch size 1000 01:50:10,847 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 [WARN] [03/17/2024 13:50:10.847] [test-akka.actor.default-dispatcher-16] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/follower2666]: org.opendaylight.controller.cluster.common.actor.Monitor@5ec6efdf 01:50:10,847 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for follower2 with journal batch size 1000 01:50:10,849 PM [test-akka.actor.default-dispatcher-15] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:10,860 PM [test-akka.actor.default-dispatcher-15] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:10,860 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Set currentTerm=1, votedFor=null 01:50:10,860 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:10,860 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Set currentTerm=1, votedFor=null 01:50:10,861 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:50:10,861 PM [test-akka.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader leader, need to catch up to -1 01:50:10,861 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:50:10,861 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:50:10,861 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: -1, nextIndex: 0 01:50:10,861 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [03/17/2024 13:50:10.861] [test-akka.actor.default-dispatcher-16] [akka://test/user/follower665] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@ba66f75 [WARN] [03/17/2024 13:50:10.862] [test-akka.actor.default-dispatcher-16] [akka://test/user/follower2666] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@2a58b3de 01:50:10,957 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]], state: Idle 01:50:10,957 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Updated server config: isVoting: false, peers: [PeerInfo [id=follower2, address=akka://test/user/follower2666, votingState=VOTING], PeerInfo [id=follower, address=akka://test/user/follower665, votingState=VOTING]] 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]] 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]] 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]] 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=6e5a935d-e4e2-4b17-9b14-9ca083f1fea8}, logIndex: 0, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower follower2 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower follower2: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]]]] 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower follower: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]]]] 01:50:10,958 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]] 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]]]] 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Number of entries to be appended = 1 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]] 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]] 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=akka://test/user/leader667, votingState=NON_VOTING], PeerInfo [id=follower, address=akka://test/user/follower665, votingState=VOTING]] 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Log size is now 1 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=follower2, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]]]] 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Number of entries to be appended = 1 01:50:10,959 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]] 01:50:10,959 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]] 01:50:10,959 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,960 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=akka://test/user/leader667, votingState=NON_VOTING], PeerInfo [id=follower2, address=akka://test/user/follower2666, votingState=VOTING]] 01:50:10,960 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Log size is now 1 01:50:10,960 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:10,960 PM [test-akka.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]] 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 0 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to 0 01:50:10,960 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]] 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]] 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]] has been successfully replicated to a majority of followers [WARN] [03/17/2024 13:50:10.960] [test-akka.actor.default-dispatcher-15] [akka://test/user/follower2666] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@102d8658 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - Leader changed to non-voting - trying leadership transfer 01:50:10,960 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]]] 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating leader transfer 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorLeadershipTransferCohort - leader: pauseLeader successfully completed - doing transfer 01:50:10,960 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Commit index set to 0 [WARN] [03/17/2024 13:50:10.960] [test-akka.actor.default-dispatcher-11] [akka://test/user/follower665] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@771b7193 01:50:10,960 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Attempting to transfer leadership 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:10,961 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,961 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: onLeaderTransitioning: LeaderTransitioning [leaderId=leader] 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:50:10,961 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Setting last applied to 0 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Moving last applied index from -1 to 0 01:50:10,961 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=0 01:50:10,961 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Commit index set to 0 01:50:10,961 PM [test-akka.actor.default-dispatcher-11] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]] 01:50:10,961 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:50:10,961 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Setting last applied to 0 01:50:10,961 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Moving last applied index from -1 to 0 01:50:10,961 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]] 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: onLeaderTransitioning: LeaderTransitioning [leaderId=leader] 01:50:10,961 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: 0, lastIndex: 0, isVoting: true 01:50:10,961 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Follower's log matches - sending ElectionTimeout 01:50:10,961 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,961 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Persisting ApplyJournalEntries with index=0 01:50:10,961 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:10,961 PM [test-akka.actor.default-dispatcher-11] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Persisting ApplyJournalEntries with index=0 01:50:10,961 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Leader transfer complete 01:50:10,961 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorLeadershipTransferCohort - leader: leader transfer complete - waiting for new leader 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Received TimeoutNow - switching to Candidate 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Candidate): Election: Candidate has following voting peers: [follower2] 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Set currentTerm=2, votedFor=follower 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Candidate): Starting new election term 2 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Candidate): Sending RequestVote [term=2, candidateId=follower, lastLogIndex=0, lastLogTerm=1] to peer follower2 01:50:10,961 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:50:10,961 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 01:50:10,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Cluster state: [] 01:50:10,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Candidate in requestVote:RequestVote [term=2, candidateId=follower, lastLogIndex=0, lastLogTerm=1] with higher term appears reachable, updating term. 01:50:10,962 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Term 2 in "RequestVote [term=2, candidateId=follower, lastLogIndex=0, lastLogTerm=1]" message is greater than follower's term 1 - updating term 01:50:10,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Set currentTerm=2, votedFor=null 01:50:10,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): In requestVote: RequestVote [term=2, candidateId=follower, lastLogIndex=0, lastLogTerm=1] - currentTerm: 2, votedFor: null, lastIndex: 0, lastTerm: 1 01:50:10,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Set currentTerm=2, votedFor=follower 01:50:10,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): requestVote returning: RequestVoteReply [term=2, voteGranted=true] 01:50:10,962 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Candidate): RaftRPC message received RequestVoteReply [term=2, voteGranted=true], my term is 2 01:50:10,962 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Candidate): handleRequestVoteReply: RequestVoteReply [term=2, voteGranted=true], current voteCount: 1 01:50:10,962 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Leader): Election: Leader has following peers: [leader, follower2] 01:50:10,962 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Leader): Checking sendAppendEntries for follower leader: active: false, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,962 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:10,963 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Candidate) :- Switching from behavior Candidate to Leader, election term: 2 01:50:10,963 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Term 2 in "AppendEntries [leaderId=follower, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than leader's term 1 - switching to Follower 01:50:10,963 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=2, votedFor=null 01:50:10,963 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader) :- Switching from behavior Leader to Follower, election term: 2 01:50:10,963 PM [test-akka.actor.default-dispatcher-18] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader follower, need to catch up to -1 01:50:10,963 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 01:50:10,963 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 [WARN] [03/17/2024 13:50:10.963] [test-akka.actor.default-dispatcher-18] [akka://test/user/follower2666] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@3824de77 01:50:10,963 PM [test-akka.actor.default-dispatcher-18] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader follower and reached 0 (of expected -1) [WARN] [03/17/2024 13:50:10.963] [test-akka.actor.default-dispatcher-18] [akka://test/user/follower2666] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@679d0ec5 01:50:11,480 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - leader: Last sync leader does not match current leader follower, need to catch up to -1 01:50:11,480 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader follower and reached 0 (of expected -1) 01:50:11,480 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorLeadershipTransferCohort - leader: leader changed to follower 01:50:11,480 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Leader): handleAppendEntriesReply - FollowerLogInformation for leader updated: matchIndex: 0, nextIndex: 1 01:50:11,481 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Leader): Checking sendAppendEntries for follower leader: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:11,481 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorLeadershipTransferCohort - leader: Successfully transferred leadership to follower in 519.9 ms 01:50:11,481 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: leader transfer succeeded after change to non-voting 01:50:11,481 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - leader: Lagging 0 entries behind leader follower and reached 0 (of expected -1) [WARN] [03/17/2024 13:50:11.481] [test-akka.actor.default-dispatcher-15] [akka://test/user/leader667] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@387a6994 [WARN] [03/17/2024 13:50:11.481] [test-akka.actor.default-dispatcher-15] [akka://test/user/leader667] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@7997a3f1 01:50:11,515 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeLeaderToNonVoting ending 01:50:11,516 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower664] 01:50:11,527 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader667] 01:50:11,527 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector668] 01:50:11,527 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector669#1569218763] 01:50:11,528 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower665] 01:50:11,528 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector670#-1392807469] 01:50:11,528 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower2666] 01:50:11,630 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testOnApplyState starting [WARN] [03/17/2024 13:50:11.632] [test-akka.actor.default-dispatcher-14] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader672]: org.opendaylight.controller.cluster.common.actor.Monitor@408894ca 01:50:11,632 PM [test-akka.actor.default-dispatcher-15] [INFO] MockRaftActor - Starting recovery for leader with journal batch size 1000 01:50:11,634 PM [test-akka.actor.default-dispatcher-15] [INFO] MockRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:11,732 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testOnApplyState ending 01:50:11,732 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower671] 01:50:11,743 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader672] 01:50:11,744 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServer starting [WARN] [03/17/2024 13:50:11.745] [test-akka.actor.default-dispatcher-15] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader676]: org.opendaylight.controller.cluster.common.actor.Monitor@165f11da 01:50:11,746 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:11,746 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:11,746 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:11,747 PM [test-akka.actor.default-dispatcher-15] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:11,748 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [follower2, follower, downNode] 01:50:11,748 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:50:11,748 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:50:11,748 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower downNode: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [03/17/2024 13:50:11.748] [test-akka.actor.default-dispatcher-14] [akka://test/user/follower2675] received dead letter from TestActor[akka://test/user/leader676]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] [WARN] [03/17/2024 13:50:11.748] [test-akka.actor.default-dispatcher-14] [akka://test/user/follower674] received dead letter from TestActor[akka://test/user/leader676]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] [WARN] [03/17/2024 13:50:11.748] [test-akka.actor.default-dispatcher-17] [akka://test/] unhandled message from TestActor[akka://test/user/leader676]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] [WARN] [03/17/2024 13:50:11.849] [test-akka.actor.default-dispatcher-18] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/follower674]: org.opendaylight.controller.cluster.common.actor.Monitor@e8e1f9e 01:50:11,849 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for follower with journal batch size 1000 01:50:11,851 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 [WARN] [03/17/2024 13:50:11.851] [test-akka.actor.default-dispatcher-18] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/follower2675]: org.opendaylight.controller.cluster.common.actor.Monitor@2e0993ef 01:50:11,851 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for follower2 with journal batch size 1000 01:50:11,852 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:11,859 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:11,859 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Set currentTerm=1, votedFor=null 01:50:11,860 PM [test-akka.actor.default-dispatcher-15] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:11,860 PM [test-akka.actor.default-dispatcher-15] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Set currentTerm=1, votedFor=null [WARN] [03/17/2024 13:50:11.859] [test-akka.actor.default-dispatcher-18] [akka://test/] unhandled message from TestActor[akka://test/user/leader676]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] 01:50:11,860 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader leader, need to catch up to -1 01:50:11,860 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: -1, nextIndex: 0 01:50:11,860 PM [test-akka.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:50:11,860 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:50:11,860 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:50:11,860 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [03/17/2024 13:50:11.861] [test-akka.actor.default-dispatcher-18] [akka://test/user/follower674] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@485f1f47 [WARN] [03/17/2024 13:50:11.861] [test-akka.actor.default-dispatcher-18] [akka://test/user/follower2675] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@3a8f83f 01:50:11,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: onRemoveServer: RemoveServer{serverId='follower'}, state: Idle 01:50:11,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:50:11,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:11,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:11,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=655bfed5-8ed3-44dc-9450-ab6ef6cd1f04}, logIndex: 0, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:11,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:11,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:11,962 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower follower2 01:50:11,963 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower follower2: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:11,963 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower downNode: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:11,963 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation RemoveServer{serverId='follower'} 01:50:11,963 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:11,963 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Number of entries to be appended = 1 01:50:11,963 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:50:11,963 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:11,963 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:11,963 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=akka://test/user/leader676, votingState=VOTING], PeerInfo [id=downNode, address=, votingState=VOTING]] 01:50:11,963 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Log size is now 1 01:50:11,963 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=follower2, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] [WARN] [03/17/2024 13:50:11.963] [test-akka.actor.default-dispatcher-17] [akka://test/] unhandled message from TestActor[akka://test/user/leader676]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] 01:50:11,963 PM [test-akka.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:50:11,963 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 01:50:11,963 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:11,964 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:11,964 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:50:11,964 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:11,964 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 0 01:50:11,964 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to 0 01:50:11,964 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:11,964 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] has been successfully replicated to a majority of followers [WARN] [03/17/2024 13:50:11.964] [test-akka.actor.default-dispatcher-6] [akka://test/user/follower2675] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@707b173b 01:50:11,964 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=0 [WARN] [03/17/2024 13:50:11.964] [test-akka.actor.default-dispatcher-6] [akka://test/user/follower674] unhandled message from TestActor[akka://test/user/leader676]: ServerRemoved [serverId=follower] [WARN] [03/17/2024 13:50:11.980] [test-akka.actor.default-dispatcher-18] [akka://test/] unhandled message from TestActor[akka://test/user/leader676]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] 01:50:12,100 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Commit index set to 0 01:50:12,100 PM [test-akka.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:12,100 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:50:12,100 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Setting last applied to 0 01:50:12,100 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Moving last applied index from -1 to 0 [WARN] [03/17/2024 13:50:12.100] [test-akka.actor.default-dispatcher-18] [akka://test/] unhandled message from TestActor[akka://test/user/leader676]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] 01:50:12,100 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,100 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Persisting ApplyJournalEntries with index=0 01:50:12,115 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServer ending 01:50:12,115 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower673] 01:50:12,125 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader676] 01:50:12,126 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector677] 01:50:12,126 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector678#674933902] 01:50:12,127 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower674] 01:50:12,127 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector679#1365570612] 01:50:12,127 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower2675] 01:50:12,229 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithNoLeader starting [WARN] [03/17/2024 13:50:12.230] [test-akka.actor.default-dispatcher-6] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server682]: org.opendaylight.controller.cluster.common.actor.Monitor@1c11b00c 01:50:12,231 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 01:50:12,232 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:12,233 PM [test-akka.actor.default-dispatcher-6] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [03/17/2024 13:50:12.331] [test-akka.actor.default-dispatcher-11] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader683]: org.opendaylight.controller.cluster.common.actor.Monitor@3b924875 01:50:12,332 PM [test-akka.actor.default-dispatcher-6] [INFO] MockRaftActor - Starting recovery for leader with journal batch size 1000 01:50:12,333 PM [test-akka.actor.default-dispatcher-17] [INFO] MockRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:12,442 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server682, votingMember=true], state: Idle 01:50:12,442 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - leader: No leader - returning NO_LEADER reply 01:50:12,442 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithNoLeader ending 01:50:12,442 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower680] 01:50:12,453 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector681#-1384367357] 01:50:12,453 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server682] 01:50:12,454 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader683] 01:50:12,455 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeServersVotingStatus starting [WARN] [03/17/2024 13:50:12.456] [test-akka.actor.default-dispatcher-17] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader687]: org.opendaylight.controller.cluster.common.actor.Monitor@4a9225d4 01:50:12,456 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:12,456 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:12,456 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 [WARN] [03/17/2024 13:50:12.458] [test-akka.actor.default-dispatcher-11] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/follower685]: org.opendaylight.controller.cluster.common.actor.Monitor@25dcfed2 01:50:12,458 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:12,458 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for follower with journal batch size 1000 01:50:12,458 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [follower2, follower] 01:50:12,458 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:50:12,458 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [03/17/2024 13:50:12.458] [test-akka.actor.default-dispatcher-6] [akka://test/user/follower2686] received dead letter from TestActor[akka://test/user/leader687]: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]] 01:50:12,459 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:12,459 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:12,459 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Set currentTerm=1, votedFor=null 01:50:12,459 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:50:12,460 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:50:12,460 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [03/17/2024 13:50:12.460] [test-akka.actor.default-dispatcher-6] [akka://test/user/follower685] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@3fc217c7 [WARN] [03/17/2024 13:50:12.460] [test-akka.actor.default-dispatcher-17] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/follower2686]: org.opendaylight.controller.cluster.common.actor.Monitor@3bc6d6ad 01:50:12,461 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for follower2 with journal batch size 1000 01:50:12,462 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:12,472 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={follower2=false, follower=false}, serversVisited=[]], state: Idle 01:50:12,472 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState 01:50:12,472 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Updated server config: isVoting: true, peers: [PeerInfo [id=follower2, address=akka://test/user/follower2686, votingState=NON_VOTING], PeerInfo [id=follower, address=akka://test/user/follower685, votingState=NON_VOTING]] 01:50:12,472 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 01:50:12,472 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=bd30b303-2749-4bbc-a4b0-5567350b7332}, logIndex: 0, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 0 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to 0 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower follower: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={follower2=false, follower=false}, serversVisited=[]] 01:50:12,473 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=0 01:50:12,474 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:12,474 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Set currentTerm=1, votedFor=null 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Number of entries to be appended = 1 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:50:12,474 PM [test-akka.actor.default-dispatcher-18] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader leader, need to catch up to -1 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,474 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: -1, nextIndex: 0 01:50:12,474 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:12,474 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 0 is present for follower follower2 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=akka://test/user/leader687, votingState=VOTING], PeerInfo [id=follower2, address=akka://test/user/follower2686, votingState=NON_VOTING]] 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Log size is now 1 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Commit index set to 0 01:50:12,474 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower follower2: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Setting last applied to 0 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Moving last applied index from -1 to 0 01:50:12,474 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 01:50:12,474 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,474 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:12,475 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Number of entries to be appended = 1 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Append log entry and persist SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=akka://test/user/leader687, votingState=VOTING], PeerInfo [id=follower, address=akka://test/user/follower685, votingState=NON_VOTING]] 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Log size is now 1 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Commit index set to 0 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=follower2, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Setting last applied to 0 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Moving last applied index from -1 to 0 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Applying state for log index 0 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]] [WARN] [03/17/2024 13:50:12.476] [test-akka.actor.default-dispatcher-5] [akka://test/user/follower2686] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@19a40666 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 01:50:12,476 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:12,477 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,477 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: persist complete SimpleReplicatedLogEntry [index=0, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,477 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Persisting ApplyJournalEntries with index=0 [WARN] [03/17/2024 13:50:12.477] [test-akka.actor.default-dispatcher-17] [akka://test/user/follower2686] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@43a47d4c 01:50:12,478 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Persisting ApplyJournalEntries with index=0 [WARN] [03/17/2024 13:50:12.478] [test-akka.actor.default-dispatcher-5] [akka://test/user/follower685] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@2510da4e 01:50:12,479 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={follower=true}, serversVisited=[]], state: Idle 01:50:12,479 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState 01:50:12,479 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Updated server config: isVoting: true, peers: [PeerInfo [id=follower2, address=akka://test/user/follower2686, votingState=NON_VOTING], PeerInfo [id=follower, address=akka://test/user/follower685, votingState=VOTING]] 01:50:12,479 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:50:12,479 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,479 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=d473ba78-9eb0-4d1e-b03c-052ea5c881ad}, logIndex: 1, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 1 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from 0 to 1 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 1 is present for follower follower2 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower follower2: AppendEntries [leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 1 is present for follower follower 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower follower: AppendEntries [leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,480 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={follower=true}, serversVisited=[]] 01:50:12,480 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Number of entries to be appended = 1 01:50:12,480 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:50:12,480 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,480 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,480 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:12,480 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=akka://test/user/leader687, votingState=VOTING], PeerInfo [id=follower, address=akka://test/user/follower685, votingState=VOTING]] 01:50:12,480 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Log size is now 2 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=1 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Commit index set to 1 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=follower2, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2 (Follower): Setting last applied to 1 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Moving last applied index from 0 to 1 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Number of entries to be appended = 1 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 1, nextIndex: 2 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: fakeSnapshot purging log to 0 for term 1 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=akka://test/user/leader687, votingState=VOTING], PeerInfo [id=follower2, address=akka://test/user/follower2686, votingState=NON_VOTING]] 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Log size is now 2 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Commit index set to 1 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower (Follower): Setting last applied to 1 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Moving last applied index from 0 to 1 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:50:12,481 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,481 PM [test-akka.actor.default-dispatcher-5] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:50:12,482 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,482 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: persist complete SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,482 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower2: Persisting ApplyJournalEntries with index=1 01:50:12,482 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: persist complete SimpleReplicatedLogEntry [index=1, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,482 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - follower: Persisting ApplyJournalEntries with index=1 01:50:12,483 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeServersVotingStatus ending 01:50:12,483 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower684] 01:50:12,494 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader687] 01:50:12,494 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector688] 01:50:12,494 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector689#459491021] 01:50:12,494 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower685] 01:50:12,494 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector690#-697789280] 01:50:12,495 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower2686] 01:50:12,596 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithExistingFollower starting [WARN] [03/17/2024 13:50:12.598] [test-akka.actor.default-dispatcher-18] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server693]: org.opendaylight.controller.cluster.common.actor.Monitor@422c5114 01:50:12,599 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 01:50:12,600 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:12,600 PM [main] [DEBUG] RaftActorServerConfigurationSupportTest - follower: Set currentTerm=1, votedFor=leader 01:50:12,600 PM [main] [DEBUG] RaftActorServerConfigurationSupportTest - follower: Moving last applied index from -1 to 2 01:50:12,601 PM [test-akka.actor.default-dispatcher-18] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [03/17/2024 13:50:12.602] [test-akka.actor.default-dispatcher-11] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader694]: org.opendaylight.controller.cluster.common.actor.Monitor@130939eb 01:50:12,602 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to 2 01:50:12,602 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor=leader 01:50:12,602 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:12,603 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = 2, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 3 01:50:12,603 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [follower] 01:50:12,604 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: -1 01:50:12,604 PM [test-akka.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:50:12,604 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 01:50:12,604 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: fakeSnapshot purging log to 1 for term 1 01:50:12,604 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 01:50:12,604 PM [test-akka.actor.default-dispatcher-11] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 01:50:12,604 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest - follower: fakeSnapshot purging log to 1 for term 1 01:50:12,712 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server693, votingMember=true], state: Idle 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server693, votingMember=true] 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=2, lastAppliedTerm=1, lastIndex=2, lastTerm=1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=false] to install on new-server 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: lastSequenceNumber prior to capture: -1 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating capture snapshot for new server new-server 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: CaptureSnapshotReply received by actor 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting of snapshot done: Snapshot [lastIndex=2, lastTerm=1, lastAppliedIndex=2, lastAppliedTerm=1, unAppliedEntries size=0, state=MockSnapshotState [state=[0, 1, 2]], electionTerm=1, electionVotedFor=leader, ServerConfigPayload=null] 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: 1 and term: 1 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendInstallSnapshot 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 338 bytes, total chunks to send: 1 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=338, offset=0, size=338, hashCode=1701166743 01:50:12,713 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): next snapshot chunk size for follower new-server: 338 01:50:12,714 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server693), Chunk: 1/1 01:50:12,714 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Snapshot success - sequence number: -1 01:50:12,714 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Term 1 in "InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=2, lastIncludedTerm=1, datasize=338, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null]" message is greater than follower's term 0 - updating term 01:50:12,714 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: SnapshotComplete received 01:50:12,714 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:12,714 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot: InstallSnapshot [term=1, leaderId=leader, lastIncludedIndex=2, lastIncludedTerm=1, datasize=338, Chunk=1/1, lastChunkHashCode=OptionalInt[-1], serverConfig=null] 01:50:12,714 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to 2 01:50:12,714 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:50:12,714 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Snapshot installed from leader: leader 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying snapshot on follower: Snapshot [lastIndex=2, lastTerm=1, lastAppliedIndex=2, lastAppliedTerm=1, unAppliedEntries size=0, state=MockSnapshotState [state=[0, 1, 2]], electionTerm=1, electionVotedFor=null, ServerConfigPayload=null] 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - lastSequenceNumber prior to persisting applied snapshot: -1 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Snapshot success - sequence number: -1 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from -1 to 2 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: applySnapshot called [WARN] [03/17/2024 13:50:12.716] [test-akka.actor.default-dispatcher-17] [akka://test/user/new-server693] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@328d78f4 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply [term=1, followerId=new-server, chunkIndex=1, success=true] 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to 2, nextIndex set to 3 01:50:12,716 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: SnapshotComplete received 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Sent message UnInitializedFollowerSnapshotReply to self 01:50:12,716 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: New server configuration : [ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persist data SimpleReplicatedLogEntry [index=3, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Append log entry and persist SimpleReplicatedLogEntry [index=3, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=70688494-6d49-4638-bc03-d3fe7eeaf9d9}, logIndex: 3, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: 1 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 3 is present for follower follower 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower follower: AppendEntries [leaderId=leader, prevLogIndex=2, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=3, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: 1 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): sendAppendEntries: 3 is present for follower new-server 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries [leaderId=leader, prevLogIndex=2, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=3, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,717 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest - follower (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=2, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=3, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,717 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server693, votingMember=true] 01:50:12,717 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest - follower (Follower): Number of entries to be appended = 1 01:50:12,717 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest - follower (Follower): After cleanup, lastIndex: 2, entries to be added from: 0 01:50:12,717 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest - follower (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,717 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries: AppendEntries [leaderId=leader, prevLogIndex=2, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=3, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]]]] 01:50:12,717 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Number of entries to be appended = 1 01:50:12,717 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest - follower: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=, votingState=VOTING], PeerInfo [id=new-server, address=null, votingState=VOTING]] 01:50:12,717 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): After cleanup, lastIndex: 2, entries to be added from: 0 01:50:12,717 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest - follower (Follower): Log size is now 2 01:50:12,717 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,717 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest - follower (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=follower, logLastIndex=3, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5] 01:50:12,717 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 01:50:12,717 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Append log entry and persist SimpleReplicatedLogEntry [index=3, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,718 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 3, nextIndex: 4 01:50:12,718 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 1 01:50:12,718 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING], PeerInfo [id=follower, address=null, votingState=VOTING]] 01:50:12,718 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Log size is now 1 01:50:12,718 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): handleAppendEntries returning : AppendEntriesReply [term=1, success=true, followerId=new-server, logLastIndex=3, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=true, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:12,718 PM [test-akka.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 2 (of expected 2) 01:50:12,718 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 3, nextIndex: 4 01:50:12,718 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 1 01:50:12,718 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: persist complete SimpleReplicatedLogEntry [index=3, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,718 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Applying to log - commitIndex: 3, lastAppliedIndex: 2 01:50:12,718 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Setting last applied to 3 01:50:12,718 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from 2 to 3 01:50:12,718 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: persist complete SimpleReplicatedLogEntry [index=3, term=1, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]]] 01:50:12,718 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Applying state for log index 3 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,718 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: fakeSnapshot purging log to 2 for term 1 01:50:12,719 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupport - leader: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:12,719 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting ApplyJournalEntries with index=3 [WARN] [03/17/2024 13:50:12.719] [test-akka.actor.default-dispatcher-18] [akka://test/user/new-server693] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@24ff47c6 01:50:12,840 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Commit index set to 3 01:50:12,840 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest - follower (Follower): Commit index set to 3 01:50:12,840 PM [test-akka.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 3 (of expected -1) 01:50:12,840 PM [test-akka.actor.default-dispatcher-18] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 3 (of expected 2) 01:50:12,840 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): 2, lastIndex(): 3 01:50:12,840 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): 2, lastIndex(): 3 01:50:12,840 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest - follower (Follower): Setting last applied to 3 01:50:12,840 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Setting last applied to 3 01:50:12,840 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest - follower: Moving last applied index from 2 to 3 01:50:12,840 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Moving last applied index from 2 to 3 01:50:12,840 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest - follower: fakeSnapshot purging log to 2 for term 1 01:50:12,840 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Applying state for log index 3 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]] 01:50:12,840 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Persisting ApplyJournalEntries with index=3 01:50:12,865 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithExistingFollower ending 01:50:12,865 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower691] 01:50:12,876 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector692#682610386] 01:50:12,876 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server693] 01:50:12,877 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader694] 01:50:12,877 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leaderCollector695] 01:50:12,980 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerForwardedToLeader starting [WARN] [03/17/2024 13:50:12.981] [test-akka.actor.default-dispatcher-18] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server698]: org.opendaylight.controller.cluster.common.actor.Monitor@4e5870f2 01:50:12,982 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 01:50:12,985 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:12,986 PM [test-akka.actor.default-dispatcher-18] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [03/17/2024 13:50:13.083] [test-akka.actor.default-dispatcher-11] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/follower700]: org.opendaylight.controller.cluster.common.actor.Monitor@7681ee1c 01:50:13,83 PM [test-akka.actor.default-dispatcher-18] [INFO] MockRaftActor - Starting recovery for follower with journal batch size 1000 01:50:13,84 PM [test-akka.actor.default-dispatcher-11] [INFO] MockRaftActor - follower: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:13,183 PM [test-akka.actor.default-dispatcher-18] [INFO] MockRaftActor - follower (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:13,183 PM [test-akka.actor.default-dispatcher-18] [DEBUG] MockRaftActor - follower: Set currentTerm=1, votedFor=null 01:50:13,183 PM [test-akka.actor.default-dispatcher-18] [INFO] MockRaftActor - follower (Follower): The followers log is empty and the senders prevLogIndex is 0 01:50:13,183 PM [test-akka.actor.default-dispatcher-18] [INFO] MockRaftActor - follower (Follower): Follower is out-of-sync so sending negative reply: AppendEntriesReply [term=1, success=false, followerId=follower, logLastIndex=-1, logLastTerm=-1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:13,183 PM [test-akka.actor.default-dispatcher-18] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 [WARN] [03/17/2024 13:50:13.184] [test-akka.actor.default-dispatcher-11] [akka://test/user/follower700] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@48fbcbcf 01:50:13,193 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - follower: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server698, votingMember=true], state: Idle 01:50:13,194 PM [test-akka.actor.default-dispatcher-11] [DEBUG] MockRaftActor - follower: getLeaderAddress leaderId = leader peerAddress = akka://test/user/leader699 01:50:13,194 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - follower: Not leader - forwarding to leader ActorSelection[Anchor(akka://test/), Path(/user/leader699)] 01:50:13,245 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerForwardedToLeader ending 01:50:13,245 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower696] 01:50:13,256 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector697#1876594038] 01:50:13,256 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server698] 01:50:13,256 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/leader699#-2029927430] 01:50:13,256 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower700] 01:50:13,358 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServerForwardToLeader starting [WARN] [03/17/2024 13:50:13.360] [test-akka.actor.default-dispatcher-11] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/follower703]: org.opendaylight.controller.cluster.common.actor.Monitor@7c7126f5 01:50:13,360 PM [test-akka.actor.default-dispatcher-18] [INFO] MockRaftActor - Starting recovery for follower with journal batch size 1000 01:50:13,362 PM [test-akka.actor.default-dispatcher-11] [INFO] MockRaftActor - follower: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:13,362 PM [test-akka.actor.default-dispatcher-11] [INFO] MockRaftActor - follower (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:13,362 PM [test-akka.actor.default-dispatcher-11] [DEBUG] MockRaftActor - follower: Set currentTerm=1, votedFor=null 01:50:13,362 PM [test-akka.actor.default-dispatcher-11] [INFO] MockRaftActor - follower (Follower): The followers log is empty and the senders prevLogIndex is 0 01:50:13,362 PM [test-akka.actor.default-dispatcher-11] [INFO] MockRaftActor - follower (Follower): Follower is out-of-sync so sending negative reply: AppendEntriesReply [term=1, success=false, followerId=follower, logLastIndex=-1, logLastTerm=-1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:13,362 PM [test-akka.actor.default-dispatcher-11] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 [WARN] [03/17/2024 13:50:13.367] [test-akka.actor.default-dispatcher-11] [akka://test/user/follower703] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@50dec209 01:50:13,372 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - follower: onRemoveServer: RemoveServer{serverId='follower'}, state: Idle 01:50:13,372 PM [test-akka.actor.default-dispatcher-18] [DEBUG] MockRaftActor - follower: getLeaderAddress leaderId = leader peerAddress = akka://test/user/leader702 01:50:13,373 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - follower: Not leader - forwarding to leader ActorSelection[Anchor(akka://test/), Path(/user/leader702)] 01:50:13,423 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testRemoveServerForwardToLeader ending 01:50:13,423 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower701] 01:50:13,433 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader702] 01:50:13,434 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower703] 01:50:13,436 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithExistingServer starting 01:50:13,437 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:13,437 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:13,437 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 [WARN] [03/17/2024 13:50:13.437] [test-akka.actor.default-dispatcher-18] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader705]: org.opendaylight.controller.cluster.common.actor.Monitor@417dfb5b 01:50:13,439 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:13,439 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [follower] 01:50:13,439 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:50:13,448 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=follower, newServerAddress=akka://test/user/follower704, votingMember=true], state: Idle 01:50:13,448 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=follower, newServerAddress=akka://test/user/follower704, votingMember=true] 01:50:13,448 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning ALREADY_EXISTS for operation AddServer [newServerId=follower, newServerAddress=akka://test/user/follower704, votingMember=true] 01:50:13,448 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithExistingServer ending 01:50:13,448 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower704] 01:50:13,459 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader705] 01:50:13,460 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeToVotingWithNoLeaderAndElectionTimeout starting [WARN] [03/17/2024 13:50:13.462] [test-akka.actor.default-dispatcher-6] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@5a1f977a 01:50:13,462 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for node1 with journal batch size 1000 [WARN] [03/17/2024 13:50:13.464] [test-akka.actor.default-dispatcher-11] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/node2]: org.opendaylight.controller.cluster.common.actor.Monitor@2ae153 01:50:13,464 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=1, votedFor=node1 01:50:13,464 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:50:13,464 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for node2 with journal batch size 1000 01:50:13,464 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 01:50:13,464 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Recovery completed - Switching actor to Follower - last log index = 0, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 1 01:50:13,467 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Set currentTerm=1, votedFor=node1 01:50:13,467 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:50:13,467 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=null, votingState=NON_VOTING]] 01:50:13,467 PM [test-akka.actor.default-dispatcher-11] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Recovery completed - Switching actor to Follower - last log index = 0, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 1 01:50:13,475 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true}, serversVisited=[]], state: Idle 01:50:13,475 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState 01:50:13,475 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - node1: Sending local ElectionTimeout to start leader election 01:50:13,475 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 01:50:13,475 PM [test-akka.actor.default-dispatcher-6] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:13,475 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Received TimeoutNow - switching to Candidate 01:50:13,475 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Election: Candidate has following voting peers: [node2] 01:50:13,475 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=2, votedFor=node1 01:50:13,475 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Starting new election term 2 01:50:13,476 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Sending RequestVote [term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1] to peer node2 01:50:13,476 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:50:13,590 PM [test-akka.actor.default-dispatcher-6] [WARN] RaftActorServerConfigurationSupport - node1: Leader election timed out - cannot apply operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true}, serversVisited=[]] 01:50:13,590 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=akka://test/user/node2, votingState=VOTING]] 01:50:13,590 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - node1: tryToForwardOperationToAnotherServer - servers already visited [] 01:50:13,590 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupport - node1: Returning NO_LEADER for operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true}, serversVisited=[]] 01:50:13,591 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeToVotingWithNoLeaderAndElectionTimeout ending 01:50:13,591 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower706] 01:50:13,602 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector707#-749568244] 01:50:13,604 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/node1] 01:50:13,604 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector708#-1668812423] 01:50:13,605 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/node2] 01:50:13,707 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeToVotingWithNoLeader starting 01:50:13,714 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for node1 with journal batch size 1000 [WARN] [03/17/2024 13:50:13.714] [test-akka.actor.default-dispatcher-14] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@235ac8cf 01:50:13,716 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=1, votedFor=downNode1 01:50:13,716 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Received ReplicatedLogEntry for recovery: index: 0, size: 163 01:50:13,716 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=NON_VOTING], PeerInfo [id=downNode2, address=null, votingState=VOTING], PeerInfo [id=downNode1, address=null, votingState=VOTING]] 01:50:13,716 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Received apply journal entries for recovery, applying to state: 0 to 0 01:50:13,716 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Moving last applied index from -1 to 0 01:50:13,717 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Recovery completed in 55.96 μs - Switching actor to Follower - last log index = 0, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 1 [WARN] [03/17/2024 13:50:13.814] [test-akka.actor.default-dispatcher-14] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/node2]: org.opendaylight.controller.cluster.common.actor.Monitor@70e82daa 01:50:13,815 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Starting recovery for node2 with journal batch size 1000 01:50:13,817 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Set currentTerm=1, votedFor=downNode2 01:50:13,818 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Received ReplicatedLogEntry for recovery: index: 0, size: 163 01:50:13,818 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Updated server config: isVoting: false, peers: [PeerInfo [id=downNode2, address=null, votingState=VOTING], PeerInfo [id=downNode1, address=null, votingState=VOTING], PeerInfo [id=node1, address=null, votingState=NON_VOTING]] 01:50:13,818 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Received apply journal entries for recovery, applying to state: 0 to 0 01:50:13,818 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Moving last applied index from -1 to 0 01:50:13,818 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Recovery completed in 69.96 μs - Switching actor to Follower - last log index = 0, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 1 01:50:13,926 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]], state: Idle 01:50:13,926 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState 01:50:13,926 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - node1: Sending local ElectionTimeout to start leader election 01:50:13,926 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=null, votingState=VOTING], PeerInfo [id=downNode2, address=null, votingState=NON_VOTING], PeerInfo [id=downNode1, address=null, votingState=NON_VOTING]] 01:50:13,926 PM [test-akka.actor.default-dispatcher-17] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:50:13,926 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Received TimeoutNow - switching to Candidate 01:50:13,926 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Election: Candidate has following voting peers: [node2] 01:50:13,926 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=2, votedFor=node1 01:50:13,926 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Starting new election term 2 01:50:13,926 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:50:14,439 PM [test-akka.actor.default-dispatcher-17] [WARN] RaftActorServerConfigurationSupport - node1: Leader election timed out - cannot apply operation ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]] 01:50:14,439 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=NON_VOTING], PeerInfo [id=downNode2, address=null, votingState=VOTING], PeerInfo [id=downNode1, address=null, votingState=VOTING]] 01:50:14,440 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - node1: tryToForwardOperationToAnotherServer - servers already visited [] 01:50:14,440 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - node1: Returning NO_LEADER for operation ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]] 01:50:14,440 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - node1: Last sync leader does not match current leader downNode1, need to catch up to 0 [WARN] [03/17/2024 13:50:14.441] [test-akka.actor.default-dispatcher-17] [akka://test/deadLetters] received dead letter from TestActor[akka://test/user/node1]: AppendEntriesReply [term=2, success=true, followerId=node1, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=true, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] [WARN] [03/17/2024 13:50:14.441] [test-akka.actor.default-dispatcher-17] [akka://test/user/node1] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@efb177 01:50:15,46 PM [main] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - Peer address for peer node2 set to akka://test/user/node2 01:50:15,47 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]], state: Idle 01:50:15,47 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - Initiating ChangeServersVotingStatusState 01:50:15,47 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupport - node1: Sending local ElectionTimeout to start leader election 01:50:15,47 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=akka://test/user/node2, votingState=VOTING], PeerInfo [id=downNode2, address=null, votingState=NON_VOTING], PeerInfo [id=downNode1, address=null, votingState=NON_VOTING]] 01:50:15,47 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower): Received TimeoutNow - switching to Candidate 01:50:15,47 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Election: Candidate has following voting peers: [node2] 01:50:15,47 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Set currentTerm=3, votedFor=node1 01:50:15,47 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Starting new election term 3 01:50:15,47 PM [test-akka.actor.default-dispatcher-17] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): Sending RequestVote [term=3, candidateId=node1, lastLogIndex=0, lastLogTerm=1] to peer node2 01:50:15,48 PM [test-akka.actor.default-dispatcher-17] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 3 01:50:15,48 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 01:50:15,48 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Cluster state: [] 01:50:15,48 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Candidate in requestVote:RequestVote [term=3, candidateId=node1, lastLogIndex=0, lastLogTerm=1] with higher term appears reachable, updating term. 01:50:15,48 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Term 3 in "RequestVote [term=3, candidateId=node1, lastLogIndex=0, lastLogTerm=1]" message is greater than follower's term 1 - updating term 01:50:15,48 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Set currentTerm=3, votedFor=null 01:50:15,48 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): In requestVote: RequestVote [term=3, candidateId=node1, lastLogIndex=0, lastLogTerm=1] - currentTerm: 3, votedFor: null, lastIndex: 0, lastTerm: 1 01:50:15,48 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Set currentTerm=3, votedFor=node1 01:50:15,48 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): requestVote returning: RequestVoteReply [term=3, voteGranted=true] 01:50:15,49 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): RaftRPC message received RequestVoteReply [term=3, voteGranted=true], my term is 3 01:50:15,49 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate): handleRequestVoteReply: RequestVoteReply [term=3, voteGranted=true], current voteCount: 1 01:50:15,49 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): Election: Leader has following peers: [node2, downNode2, downNode1] 01:50:15,49 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): Checking sendAppendEntries for follower node2: active: false, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:50:15,49 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Candidate) :- Switching from behavior Candidate to Leader, election term: 3 01:50:15,49 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - node2: Last sync leader does not match current leader node1, need to catch up to -1 01:50:15,49 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - node1: New leader node1 elected 01:50:15,49 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - node1: New server configuration : [ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]] [WARN] [03/17/2024 13:50:15.049] [test-akka.actor.default-dispatcher-17] [akka://test/user/node2] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@52f33b95 01:50:15,49 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Persist data SimpleReplicatedLogEntry [index=1, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]]] 01:50:15,49 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]]] 01:50:15,50 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=5c8afb77-75ae-4ca2-aa55-85107dccc77c}, logIndex: 1, payload: class org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload, isSendImmediate: true 01:50:15,50 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): Checking sendAppendEntries for follower node2: active: false, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:15,50 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - node1: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]] 01:50:15,50 PM [test-akka.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - node2: Lagging -1 entries behind leader node1 and reached 0 (of expected -1) [WARN] [03/17/2024 13:50:15.050] [test-akka.actor.default-dispatcher-17] [akka://test/user/node2] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@212ac74 01:50:15,50 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): handleAppendEntriesReply - FollowerLogInformation for node2 updated: matchIndex: 0, nextIndex: 1 01:50:15,51 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): Checking sendAppendEntries for follower node2: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:15,51 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): sendAppendEntries: 1 is present for follower node2 01:50:15,51 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): Sending AppendEntries to follower node2: AppendEntries [leaderId=node1, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]]]]] 01:50:15,51 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): sendAppendEntries: 1 is present for follower node2 01:50:15,51 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): handleAppendEntries: AppendEntries [leaderId=node1, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, leaderAddress=null, entries=[SimpleReplicatedLogEntry [index=1, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]]]]] 01:50:15,51 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Number of entries to be appended = 1 01:50:15,51 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:50:15,51 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Append entry to log ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]] 01:50:15,51 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Append log entry and persist SimpleReplicatedLogEntry [index=1, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]]] 01:50:15,51 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: persist complete SimpleReplicatedLogEntry [index=1, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]]] 01:50:15,51 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=downNode2, address=null, votingState=NON_VOTING], PeerInfo [id=downNode1, address=null, votingState=NON_VOTING], PeerInfo [id=node1, address=null, votingState=VOTING]] 01:50:15,51 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Log size is now 2 01:50:15,51 PM [test-akka.actor.default-dispatcher-11] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): handleAppendEntries returning : AppendEntriesReply [term=3, success=true, followerId=node2, logLastIndex=1, logLastTerm=3, forceInstallSnapshot=false, needsLeaderAddress=true, payloadVersion=5, raftVersion=5, recipientRaftVersion=5] 01:50:15,51 PM [test-akka.actor.default-dispatcher-11] [DEBUG] SyncStatusTracker - node2: Lagging 0 entries behind leader node1 and reached 0 (of expected -1) 01:50:15,51 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): handleAppendEntriesReply - FollowerLogInformation for node2 updated: matchIndex: 1, nextIndex: 2 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): Setting last applied to 1 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Moving last applied index from 0 to 1 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]] 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1 (Leader): Checking sendAppendEntries for follower node2: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupport - node1: ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]] has been successfully replicated to a majority of followers 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node1: Persisting ApplyJournalEntries with index=1 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: persist complete SimpleReplicatedLogEntry [index=1, term=3, payload=ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]]] 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Commit index set to 1 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] SyncStatusTracker - node2: Lagging 0 entries behind leader node1 and reached 1 (of expected -1) 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2 (Follower): Setting last applied to 1 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Moving last applied index from 0 to 1 01:50:15,52 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Applying state for log index 1 data ServerConfigurationPayload [serverConfig=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]] 01:50:15,53 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$CollectingMockRaftActor - node2: Persisting ApplyJournalEntries with index=1 01:50:15,102 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testChangeToVotingWithNoLeader ending 01:50:15,102 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower709] 01:50:15,113 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector710#-400419361] 01:50:15,113 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/node1] 01:50:15,113 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/collector711#166645212] 01:50:15,113 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/node2] 01:50:15,215 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithPriorSnapshotCompleteTimeout starting [WARN] [03/17/2024 13:50:15.217] [test-akka.actor.default-dispatcher-6] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/new-server714]: org.opendaylight.controller.cluster.common.actor.Monitor@56ecf102 01:50:15,218 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - Starting recovery for new-server with journal batch size 1000 01:50:15,219 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:15,219 PM [test-akka.actor.default-dispatcher-6] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [03/17/2024 13:50:15.318] [test-akka.actor.default-dispatcher-14] [akka://test/user/termination-monitor] received dead letter from TestActor[akka://test/user/leader715]: org.opendaylight.controller.cluster.common.actor.Monitor@6374189a 01:50:15,318 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Moving last applied index from -1 to -1 01:50:15,318 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Set currentTerm=1, votedFor= 01:50:15,318 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Starting recovery for leader with journal batch size 1000 01:50:15,320 PM [test-akka.actor.default-dispatcher-14] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 01:50:15,320 PM [test-akka.actor.default-dispatcher-14] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Election: Leader has following peers: [] 01:50:15,418 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - Take a snapshot of current state. lastReplicatedLog is null and replicatedToAllIndex is -1 01:50:15,418 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:50:15,418 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true] 01:50:15,418 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: lastSequenceNumber prior to capture: -1 01:50:15,418 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: CaptureSnapshotReply received by actor 01:50:15,419 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Persisting of snapshot done: Snapshot [lastIndex=-1, lastTerm=-1, lastAppliedIndex=-1, lastAppliedTerm=-1, unAppliedEntries size=0, state=MockSnapshotState [state=[]], electionTerm=1, electionVotedFor=, ServerConfigPayload=null] 01:50:15,419 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: user triggered or root overwrite snapshot encountered, trimming log up to last applied index -1 01:50:15,419 PM [test-akka.actor.default-dispatcher-18] [INFO] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:50:15,429 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server714, votingMember=true], state: Idle 01:50:15,429 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server714, votingMember=true] 01:50:15,429 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - captureToInstall should not be called in state Persisting 01:50:15,429 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: Snapshot already in progress - waiting for completion 01:50:15,540 PM [test-akka.actor.default-dispatcher-6] [INFO] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server (Follower): Term 1 in "AppendEntries [leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, leaderAddress=null, entries=[]]" message is greater than follower's term 0 - updating term 01:50:15,540 PM [test-akka.actor.default-dispatcher-6] [DEBUG] RaftActorServerConfigurationSupportTest$MockNewFollowerRaftActor - new-server: Set currentTerm=1, votedFor=null 01:50:15,540 PM [test-akka.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:50:15,540 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: -1, nextIndex: 0 01:50:15,540 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupportTest$MockLeaderRaftActor - leader (Leader): Checking sendAppendEntries for follower new-server: active: false, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [03/17/2024 13:50:15.541] [test-akka.actor.default-dispatcher-18] [akka://test/user/new-server714] unhandled message from Actor[akka://test/deadLetters]: org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus@34895d13 01:50:15,640 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: handleInstallSnapshotTimeout for new server new-server 01:50:15,640 PM [test-akka.actor.default-dispatcher-18] [DEBUG] RaftActorServerConfigurationSupport - leader: Returning TIMEOUT for operation AddServer [newServerId=new-server, newServerAddress=akka://test/user/new-server714, votingMember=true] 01:50:15,640 PM [test-akka.actor.default-dispatcher-18] [WARN] RaftActorServerConfigurationSupport - leader: Timeout occured for new server new-server while waiting for prior snapshot to complete 01:50:15,640 PM [main] [INFO] RaftActorServerConfigurationSupportTest - testAddServerWithPriorSnapshotCompleteTimeout ending 01:50:15,640 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/follower712] 01:50:15,651 PM [main] [INFO] TestActorFactory - Killing actor Actor[akka://test/user/new-serverCollector713#-1703635874] 01:50:15,651 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/new-server714] 01:50:15,651 PM [main] [INFO] TestActorFactory - Killing actor TestActor[akka://test/user/leader715] 01:50:15,652 PM [test-akka.actor.default-dispatcher-14] [INFO] CoordinatedShutdown - Running CoordinatedShutdown with reason [ActorSystemTerminateReason] [INFO] [03/17/2024 13:50:15.652] [main] [CoordinatedShutdown(akka://test)] Running CoordinatedShutdown with reason [ActorSystemTerminateReason] [WARN] [03/17/2024 13:50:15.652] [test-akka.actor.default-dispatcher-18] [akka://test/system/cluster/core/daemon] unhandled message from Actor[akka://test/deadLetters]: Leave(akka://test@10.30.170.110:25520) [INFO] [03/17/2024 13:50:15.653] [test-akka.actor.internal-dispatcher-4] [Cluster(akka://test)] Cluster Node [akka://test@10.30.170.110:25520] - Exiting completed 01:50:15,653 PM [test-akka.actor.default-dispatcher-14] [INFO] Cluster - Cluster Node [akka://test@10.30.170.110:25520] - Exiting completed [INFO] [03/17/2024 13:50:15.653] [test-akka.actor.internal-dispatcher-4] [Cluster(akka://test)] Cluster Node [akka://test@10.30.170.110:25520] - Shutting down... 01:50:15,653 PM [test-akka.actor.default-dispatcher-14] [INFO] Cluster - Cluster Node [akka://test@10.30.170.110:25520] - Shutting down... [INFO] [03/17/2024 13:50:15.653] [test-akka.actor.internal-dispatcher-4] [Cluster(akka://test)] Cluster Node [akka://test@10.30.170.110:25520] - Successfully shut down 01:50:15,654 PM [test-akka.actor.default-dispatcher-14] [INFO] Cluster - Cluster Node [akka://test@10.30.170.110:25520] - Successfully shut down [INFO] [03/17/2024 13:50:15.655] [test-akka.remote.default-remote-dispatcher-7] [akka://test@10.30.170.110:25520/system/remoting-terminator] Shutting down remote daemon. 01:50:15,655 PM [test-akka.actor.default-dispatcher-6] [INFO] RemoteActorRefProvider$RemotingTerminator - Shutting down remote daemon. [INFO] [03/17/2024 13:50:15.655] [test-akka.remote.default-remote-dispatcher-7] [akka://test@10.30.170.110:25520/system/remoting-terminator] Remote daemon shut down; proceeding with flushing remote transports. 01:50:15,655 PM [test-akka.actor.default-dispatcher-18] [INFO] RemoteActorRefProvider$RemotingTerminator - Remote daemon shut down; proceeding with flushing remote transports. [INFO] [03/17/2024 13:50:15.657] [test-akka.remote.default-remote-dispatcher-9] [akka://test@10.30.170.110:25520/system/remoting-terminator] Remoting shut down. 01:50:15,658 PM [test-akka.actor.default-dispatcher-14] [INFO] RemoteActorRefProvider$RemotingTerminator - Remoting shut down. [DEBUG] [03/17/2024 13:50:15.658] [test-akka.actor.internal-dispatcher-10] [EventStream] shutting down: StandardOutLogger