[DEBUG] [06/29/2025 01:12:43.192] [main] [EventStream(pekko://test)] logger log1-TestEventListener started 01:12:43,192 AM [test-pekko.actor.default-dispatcher-5] [INFO] Slf4jLogger - Slf4jLogger started [DEBUG] [06/29/2025 01:12:43.193] [main] [EventStream(pekko://test)] logger log2-Slf4jLogger started [DEBUG] [06/29/2025 01:12:43.193] [main] [EventStream(pekko://test)] Default Loggers started [INFO] [06/29/2025 01:12:43.206] [main] [ArteryTransport(pekko://test)] Remoting started with transport [Artery tcp]; listening on address [pekko://test@10.30.170.224:17355] with UID [-2291442572823516978] 01:12:43,206 AM [test-pekko.actor.default-dispatcher-6] [INFO] ArteryTransport - Remoting started with transport [Artery tcp]; listening on address [pekko://test@10.30.170.224:17355] with UID [-2291442572823516978] [INFO] [06/29/2025 01:12:43.206] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.224:17355] - Starting up, Pekko version [1.0.3] ... 01:12:43,207 AM [test-pekko.actor.default-dispatcher-8] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.224:17355] - Starting up, Pekko version [1.0.3] ... [INFO] [06/29/2025 01:12:43.209] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.224:17355] - Registered cluster JMX MBean [pekko:type=Cluster] [INFO] [06/29/2025 01:12:43.209] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.224:17355] - Started up successfully 01:12:43,209 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.224:17355] - Registered cluster JMX MBean [pekko:type=Cluster] 01:12:43,209 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.224:17355] - Started up successfully [INFO] [06/29/2025 01:12:43.210] [test-pekko.actor.internal-dispatcher-2] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.224:17355] - No downing-provider-class configured, manual cluster downing required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#downing [INFO] [06/29/2025 01:12:43.210] [test-pekko.actor.internal-dispatcher-2] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.224:17355] - No seed-nodes configured, manual cluster join required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#joining 01:12:43,210 AM [test-pekko.actor.default-dispatcher-8] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.224:17355] - No downing-provider-class configured, manual cluster downing required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#downing 01:12:43,210 AM [test-pekko.actor.default-dispatcher-8] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.224:17355] - No seed-nodes configured, manual cluster join required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#joining 01:12:43,222 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithOperationInProgress starting [WARN] [06/29/2025 01:12:43.226] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server109]: org.opendaylight.controller.cluster.common.actor.Monitor@d488f8c [INFO] [pekkoDeadLetter][06/29/2025 01:12:43.226] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/new-server109] to Actor[pekko://test/user/termination-monitor] was not delivered. [1] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,226 AM [test-pekko.actor.default-dispatcher-7] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/new-server109] to Actor[pekko://test/user/termination-monitor] was not delivered. [1] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,227 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:43,227 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - new-server: started executor 01:12:43,227 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - new-server: started executor 01:12:43,235 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/TermInfo.properties does not exist 01:12:43,236 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:43,236 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - 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:12:43,239 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:43,239 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:43,239 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@47c70c60 01:12:43,239 AM [test-pekko.actor.default-dispatcher-6] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:43.242] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader110]: org.opendaylight.controller.cluster.common.actor.Monitor@24f54f02 01:12:43,242 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= [INFO] [pekkoDeadLetter][06/29/2025 01:12:43.242] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/leader110] to Actor[pekko://test/user/termination-monitor] was not delivered. [2] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,242 AM [test-pekko.actor.default-dispatcher-5] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/leader110] to Actor[pekko://test/user/termination-monitor] was not delivered. [2] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,242 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:43,242 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 01:12:43,242 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 01:12:43,244 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/TermInfo.properties does not exist 01:12:43,244 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: no eligible files found 01:12:43,244 AM [test-pekko.actor.default-dispatcher-8] [INFO] PekkoRecovery - 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:12:43,247 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:43,247 AM [test-pekko.actor.default-dispatcher-8] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:43,247 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@2e31b0c3 01:12:43,247 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:43,256 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server109, votingMember=true], state: Idle 01:12:43,267 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server109, votingMember=true] 01:12:43,268 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:12:43,268 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - 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:12:43,268 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - leader: lastSequenceNumber prior to capture: -1 01:12:43,268 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - leader: support() called 01:12:43,268 AM [leader-%d545978] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:43,268 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 01:12:43,271 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:43,271 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 01:12:43,271 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - leader: support() called 01:12:43,272 AM [leader-%d545979] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-10374CEE.tmp 01:12:43,272 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:12:43,272 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:12:43,272 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 01:12:43,272 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 01:12:43,272 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 01:12:43,272 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server109), Chunk: 1/1 01:12:43,276 AM [leader-%d545979] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-10374CEE.v1 01:12:43,276 AM [leader-%d545979] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-10374CEE.v1 01:12:43,276 AM [leader-%d545979] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/TermInfo.properties 01:12:43,276 AM [leader-%d545979] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.272059630Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-10374CEE.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:43,276 AM [leader-%d545979] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:43,276 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:43,276 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: snapshot is durable as of 2025-06-29T01:12:43.272059630Z 01:12:43,276 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: Snapshot success - sequence number: -1 01:12:43,276 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 01:12:43,317 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower107, votingMember=false], state: InstallingSnapshot 01:12:43,317 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Server operation already in progress - queueing AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower107, votingMember=false] 01:12:43,317 AM [test-pekko.actor.default-dispatcher-13] [INFO] Follower - new-server (Follower): Term 1 in "InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]}" message is greater than follower's term 0 - updating term 01:12:43,320 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 01:12:43,320 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot: InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]} 01:12:43,320 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:12:43,320 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:12:43,321 AM [test-pekko.actor.default-dispatcher-13] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 01:12:43,321 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 01:12:43,321 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - new-server: support() called [WARN] [06/29/2025 01:12:43.321] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/new-server109] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 01:12:43,321 AM [test-pekko.actor.default-dispatcher-5] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[pekko://test/user/new-server109] was unhandled. [3] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. [INFO] [pekkoDeadLetter][06/29/2025 01:12:43.321] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/new-server109] Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[pekko://test/user/new-server109] was unhandled. [3] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,322 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 01:12:43,322 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - new-server: lastSequenceNumber prior to persisting applied snapshot: -1 01:12:43,322 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - new-server: support() called 01:12:43,322 AM [new-server-%d99492] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-133C6738.tmp 01:12:43,325 AM [new-server-%d99492] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-133C6738.v1 01:12:43,325 AM [new-server-%d99492] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/TermInfo.properties 01:12:43,325 AM [new-server-%d99492] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-133C6738.v1 01:12:43,326 AM [new-server-%d99492] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.322725688Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-133C6738.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:43,326 AM [new-server-%d99492] [DEBUG] EntryStoreCompleter - new-server: 1 completion(s) pending 01:12:43,326 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryStoreCompleter - new-server: running 1 completion(s) 01:12:43,326 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - new-server: snapshot is durable as of 2025-06-29T01:12:43.322725688Z 01:12:43,326 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - new-server: Snapshot success - sequence number: -1 01:12:43,326 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - new-server: support() called 01:12:43,326 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - new-server: applySnapshot called 01:12:43,326 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:43,327 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 01:12:43,327 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:43,327 AM [test-pekko.actor.default-dispatcher-6] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to -1, nextIndex set to 0 01:12:43,327 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 01:12:43,327 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:12:43,328 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:12:43,328 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:43,328 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:43,329 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=8a6348e6-cbe4-46e5-be4f-50b3a5957a11}, logIndex: 0, isSendImmediate: true 01:12:43,329 AM [leader-%d545980] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-139B4BBA.tmp 01:12:43,329 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:43,329 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:43,329 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:43,329 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:43,329 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - new-server (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:43,329 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 01:12:43,329 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:12:43,329 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - new-server (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:43,329 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - new-server: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:43,329 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-13AABCAF.tmp 01:12:43,331 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server109, votingMember=true] 01:12:43,332 AM [leader-%d545980] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-139B4BBA.v1 01:12:43,332 AM [leader-%d545980] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-10374CEE.v1 01:12:43,332 AM [leader-%d545980] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-139B4BBA.v1 01:12:43,332 AM [leader-%d545980] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/TermInfo.properties 01:12:43,333 AM [leader-%d545980] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.272059630Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-10374CEE.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:43,333 AM [leader-%d545980] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.328944570Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-139B4BBA.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:43,333 AM [leader-%d545980] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:43,333 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:43,333 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-13AABCAF.v1 01:12:43,333 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-13AABCAF.v1 01:12:43,333 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/TermInfo.properties 01:12:43,333 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-133C6738.v1 01:12:43,333 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:43,334 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.322725688Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-133C6738.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:43,334 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.329956527Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-13AABCAF.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:43,334 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - new-server: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:43,334 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PeerInfos - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 01:12:43,334 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - new-server (Follower): Log size is now 1 01:12:43,334 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - 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:12:43,334 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:12:43,334 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 0, nextIndex: 1 01:12:43,334 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:12:43,334 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:12:43,335 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 01:12:43,335 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} [WARN] [06/29/2025 01:12:43.334] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/new-server109] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=true] 01:12:43,335 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 [INFO] [pekkoDeadLetter][06/29/2025 01:12:43.335] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/new-server109] Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[pekko://test/user/new-server109] was unhandled. [4] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,335 AM [test-pekko.actor.default-dispatcher-13] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[pekko://test/user/new-server109] was unhandled. [4] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,335 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Commit index set to 0 01:12:43,335 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:43,335 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:12:43,335 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 0 01:12:43,335 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to 0 01:12:43,335 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - new-server: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:43,335 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} has been successfully replicated to a majority of followers 01:12:43,335 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower107, votingMember=false] 01:12:43,335 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: New follower is non-voting - directly persisting new server configuration 01:12:43,335 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 01:12:43,335 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Persist data index=1 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:43,335 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:43,335 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=9b6c027b-198d-4ae2-a374-9352905f2dc5}, logIndex: 1, isSendImmediate: true 01:12:43,337 AM [leader-%d545981] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-1405F06A.tmp 01:12:43,336 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:43,338 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower new-server 01:12:43,338 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:43,338 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:43,338 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 01:12:43,338 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:12:43,338 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:43,338 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - new-server: Append log entry and persist JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:43,338 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-142A5DEC.tmp 01:12:43,338 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server2: active: false, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:43,338 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower107, votingMember=false] 01:12:43,338 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - new-server2: Last sync leader does not match current leader leader, need to catch up to -1 01:12:43,338 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower new-server 01:12:43,339 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server2 01:12:43,339 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server2: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}, JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:43,341 AM [leader-%d545981] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-1405F06A.v1 01:12:43,341 AM [leader-%d545981] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-1405F06A.v1 01:12:43,341 AM [leader-%d545981] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-139B4BBA.v1 01:12:43,341 AM [leader-%d545981] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/TermInfo.properties 01:12:43,341 AM [leader-%d545981] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.328944570Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-139B4BBA.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:43,341 AM [leader-%d545981] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.335933546Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/leader/snapshot-000000006860930B-1405F06A.v1, size=100, entryCompress=NONE, stateCompress=NONE} 01:12:43,341 AM [leader-%d545981] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:43,341 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:43,341 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-142A5DEC.v1 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-13AABCAF.v1 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-142A5DEC.v1 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/TermInfo.properties 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.329956527Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-13AABCAF.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.338320876Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6278628526461865284/new-server/snapshot-000000006860930B-142A5DEC.v1, size=100, entryCompress=NONE, stateCompress=NONE} 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - new-server: persist complete JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - 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:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Log size is now 2 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - 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:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:43,342 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:43,342 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 1, nextIndex: 2 01:12:43,342 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 01:12:43,342 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 01:12:43,342 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from 0 to 1 01:12:43,342 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:43,342 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Commit index set to 1 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 01:12:43,342 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 1 01:12:43,343 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from 0 to 1 01:12:43,343 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - new-server: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:43,343 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[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:12:43,348 AM [test-pekko.actor.default-dispatcher-13] [ERROR] OneForOneStrategy - Cannot invoke "org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.getReplicatedToAllIndex()" because "currentBehavior" is null java.lang.NullPointerException: Cannot invoke "org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.getReplicatedToAllIndex()" because "currentBehavior" is null at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.trimLog(SnapshotManager.java:626) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.performSnapshotWithoutCapture(RaftActorBehavior.java:438) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:221) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.appendEntries(RaftActorBehavior.java:152) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:375) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:500) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.UntypedAbstractActor$$anonfun$receive$1.applyOrElse(AbstractActor.scala:341) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive(Actor.scala:547) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive$(Actor.scala:545) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.AbstractActor.aroundReceive(AbstractActor.scala:229) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.ActorCell.receiveMessage(ActorCell.scala:590) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.ActorCell.invoke(ActorCell.scala:557) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.processMailbox(Mailbox.scala:280) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.run(Mailbox.scala:241) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.exec(Mailbox.scala:253) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188) [ERROR] [06/29/2025 01:12:43.348] [test-pekko.actor.internal-dispatcher-3] [pekko://test/user/follower107] Cannot invoke "org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.getReplicatedToAllIndex()" because "currentBehavior" is null java.lang.NullPointerException: Cannot invoke "org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.getReplicatedToAllIndex()" because "currentBehavior" is null at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.trimLog(SnapshotManager.java:626) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.performSnapshotWithoutCapture(RaftActorBehavior.java:438) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:221) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.appendEntries(RaftActorBehavior.java:152) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:375) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:500) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.UntypedAbstractActor$$anonfun$receive$1.applyOrElse(AbstractActor.scala:341) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive(Actor.scala:547) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive$(Actor.scala:545) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.AbstractActor.aroundReceive(AbstractActor.scala:229) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.ActorCell.receiveMessage(ActorCell.scala:590) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.ActorCell.invoke(ActorCell.scala:557) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.processMailbox(Mailbox.scala:280) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.run(Mailbox.scala:241) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.exec(Mailbox.scala:253) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188) 01:12:43,390 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithOperationInProgress ending 01:12:43,390 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower107] 01:12:43,401 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector108#-256259191] 01:12:43,401 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server109] 01:12:43,402 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:43,402 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:43,402 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader110] 01:12:43,402 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:43,402 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:43,403 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector111] 01:12:43,406 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerNonExistentServer starting [WARN] [06/29/2025 01:12:43.407] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader113]: org.opendaylight.controller.cluster.common.actor.Monitor@60dc379e [INFO] [pekkoDeadLetter][06/29/2025 01:12:43.407] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/leader113] to Actor[pekko://test/user/termination-monitor] was not delivered. [5] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,407 AM [test-pekko.actor.default-dispatcher-7] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/leader113] to Actor[pekko://test/user/termination-monitor] was not delivered. [5] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,408 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:43,409 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:43,409 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: started executor 01:12:43,409 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: started executor 01:12:43,410 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest15981832250108432710/leader/TermInfo.properties does not exist 01:12:43,411 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: no eligible files found 01:12:43,411 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - 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:12:43,413 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:43,413 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:43,413 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@38302fb7 01:12:43,413 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:12:43,413 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:12:43,420 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: onRemoveServer: RemoveServer{serverId='new-server'}, state: Idle 01:12:43,421 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerNonExistentServer ending 01:12:43,421 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower112] 01:12:43,422 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader113] 01:12:43,422 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:43,422 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:43,525 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerWithNoLeader starting [WARN] [06/29/2025 01:12:43.527] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader115]: org.opendaylight.controller.cluster.common.actor.Monitor@3df2a10b 01:12:43,527 AM [test-pekko.actor.default-dispatcher-5] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/leader115] to Actor[pekko://test/user/termination-monitor] was not delivered. [6] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. [INFO] [pekkoDeadLetter][06/29/2025 01:12:43.527] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/leader115] to Actor[pekko://test/user/termination-monitor] was not delivered. [6] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,528 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:43,528 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: started executor 01:12:43,528 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: started executor 01:12:43,530 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1097508885320138569/leader/TermInfo.properties does not exist 01:12:43,530 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: no eligible files found 01:12:43,530 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - 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:12:43,534 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=0, votedFor=null 01:12:43,534 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=0} 01:12:43,534 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@7e40ea97 01:12:43,535 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: onRemoveServer: RemoveServer{serverId='follower'}, state: Idle 01:12:43,536 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: No leader - returning NO_LEADER reply 01:12:43,536 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerWithNoLeader ending 01:12:43,536 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower114] 01:12:43,537 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader115] 01:12:43,537 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:43,537 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:43,540 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerLeader starting [WARN] [06/29/2025 01:12:43.540] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader118]: org.opendaylight.controller.cluster.common.actor.Monitor@e73552b [INFO] [pekkoDeadLetter][06/29/2025 01:12:43.540] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/leader118] to Actor[pekko://test/user/termination-monitor] was not delivered. [7] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,541 AM [test-pekko.actor.default-dispatcher-13] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/leader118] to Actor[pekko://test/user/termination-monitor] was not delivered. [7] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,541 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:43,541 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:43,541 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: started executor 01:12:43,541 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: started executor 01:12:43,542 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/leader/TermInfo.properties does not exist 01:12:43,543 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: no eligible files found 01:12:43,543 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 [WARN] [06/29/2025 01:12:43.547] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower117]: org.opendaylight.controller.cluster.common.actor.Monitor@6b42c0ed [INFO] [pekkoDeadLetter][06/29/2025 01:12:43.547] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/follower117] to Actor[pekko://test/user/termination-monitor] was not delivered. [8] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,547 AM [test-pekko.actor.default-dispatcher-5] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.common.actor.Monitor] from TestActor[pekko://test/user/follower117] to Actor[pekko://test/user/termination-monitor] was not delivered. [8] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/termination-monitor] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,548 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:43,548 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:43,548 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@370e571d 01:12:43,548 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:12:43,548 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:12:43,548 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 01:12:43,548 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower: started executor 01:12:43,548 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower: started executor 01:12:43,550 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/follower/TermInfo.properties does not exist 01:12:43,550 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: no eligible files found 01:12:43,550 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - 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:12:43,552 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 01:12:43,552 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - follower: Local TermInfo store seeded with TermInfo{term=0} 01:12:43,552 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - follower: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@78207c45 01:12:43,553 AM [test-pekko.actor.default-dispatcher-6] [INFO] Follower - follower (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:43,555 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 01:12:43,555 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:12:43,555 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:12:43,555 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [06/29/2025 01:12:43.555] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower117] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] 01:12:43,555 AM [test-pekko.actor.default-dispatcher-6] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[pekko://test/user/follower117] was unhandled. [9] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. [INFO] [pekkoDeadLetter][06/29/2025 01:12:43.555] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/follower117] Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[pekko://test/user/follower117] was unhandled. [9] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,559 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: onRemoveServer: RemoveServer{serverId='leader'}, state: Idle 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower, isVoting=true]] 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]} 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]}, pending=true} 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=675231da-de54-46b7-b56c-0eea38f5364a}, logIndex: 0, isSendImmediate: true 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:12:43,561 AM [leader-%d471385] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/leader/snapshot-000000006860930B-21759C82.tmp 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]}, pending=true}]} 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation RemoveServer{serverId='leader'} 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]}, pending=true}]} 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]} 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - follower: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]}, pending=true} 01:12:43,561 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/follower/snapshot-000000006860930B-217E8B07.tmp 01:12:43,564 AM [leader-%d471385] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/leader/snapshot-000000006860930B-21759C82.v1 01:12:43,564 AM [leader-%d471385] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/leader/snapshot-000000006860930B-21759C82.v1 01:12:43,564 AM [leader-%d471385] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/leader/TermInfo.properties 01:12:43,565 AM [leader-%d471385] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.561355906Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/leader/snapshot-000000006860930B-21759C82.v1, size=75, entryCompress=NONE, stateCompress=NONE} 01:12:43,565 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/follower/snapshot-000000006860930B-217E8B07.v1 01:12:43,565 AM [leader-%d471385] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:43,565 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/follower/snapshot-000000006860930B-217E8B07.v1 01:12:43,565 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:43,565 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/follower/TermInfo.properties 01:12:43,565 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]}, pending=false} 01:12:43,565 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.561941255Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6732799182798495758/follower/snapshot-000000006860930B-217E8B07.v1, size=75, entryCompress=NONE, stateCompress=NONE} 01:12:43,565 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - follower: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]}, pending=false} 01:12:43,565 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - follower: Updated server config: isVoting: true, peers: [] 01:12:43,565 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Log size is now 1 01:12:43,565 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - 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:12:43,565 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:12:43,565 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 01:12:43,565 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:12:43,565 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:12:43,565 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 [WARN] [06/29/2025 01:12:43.565] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower117] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=true] 01:12:43,565 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - leader: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]} 01:12:43,566 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:43,566 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]} has been successfully replicated to a majority of followers [INFO] [pekkoDeadLetter][06/29/2025 01:12:43.566] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower117] Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[pekko://test/user/follower117] 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 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,566 AM [test-pekko.actor.default-dispatcher-5] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.base.messages.FollowerInitialSyncUpStatus] to TestActor[pekko://test/user/follower117] 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 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:12:43,566 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Commit index set to 0 01:12:43,566 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:43,566 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:12:43,566 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 01:12:43,566 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to 0 01:12:43,566 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]} [WARN] [06/29/2025 01:12:43.568] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/leader118] unhandled message from TestActor[pekko://test/user/leader118]: ServerRemoved [serverId=leader] 01:12:43,612 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerLeader ending 01:12:43,612 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower116] 01:12:43,624 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader118] 01:12:43,625 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:43,625 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:43,626 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector119] 01:12:43,626 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector120#-2120895476] 01:12:43,627 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower117] 01:12:43,627 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:43,627 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:43,630 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithLeaderChangeDuringInstallSnapshot starting [WARN] [06/29/2025 01:12:43.631] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server123]: org.opendaylight.controller.cluster.common.actor.Monitor@3a0506ff 01:12:43,633 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:43,633 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: started executor 01:12:43,633 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: started executor 01:12:43,635 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/new-server/TermInfo.properties does not exist 01:12:43,635 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:43,635 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - 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:12:43,662 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:43,662 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:43,662 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@2442c6ba 01:12:43,662 AM [test-pekko.actor.default-dispatcher-5] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:43.663] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader124]: org.opendaylight.controller.cluster.common.actor.Monitor@27eb4e4f 01:12:43,664 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:43,664 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:43,664 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 01:12:43,664 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 01:12:43,666 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/leader/TermInfo.properties does not exist 01:12:43,666 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: no eligible files found 01:12:43,666 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - 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:12:43,668 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:43,668 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:43,668 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@6638f09d 01:12:43,669 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:43,675 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server123, votingMember=true], state: Idle 01:12:43,676 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server123, votingMember=true] 01:12:43,676 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:12:43,676 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - 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:12:43,676 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: lastSequenceNumber prior to capture: -1 01:12:43,676 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - leader: support() called 01:12:43,676 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 01:12:43,676 AM [leader-%d651392] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:43,677 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:43,677 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 01:12:43,677 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - leader: support() called 01:12:43,677 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:12:43,677 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:12:43,677 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 01:12:43,677 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 01:12:43,677 AM [leader-%d651393] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/leader/snapshot-000000006860930B-285ECB8E.tmp 01:12:43,677 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 01:12:43,677 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server123), Chunk: 1/1 01:12:43,677 AM [test-pekko.actor.default-dispatcher-5] [INFO] Follower - new-server (Follower): Term 1 in "InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]}" message is greater than follower's term 0 - updating term 01:12:43,680 AM [leader-%d651393] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/leader/snapshot-000000006860930B-285ECB8E.v1 01:12:43,680 AM [leader-%d651393] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/leader/snapshot-000000006860930B-285ECB8E.v1 01:12:43,680 AM [leader-%d651393] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/leader/TermInfo.properties 01:12:43,680 AM [leader-%d651393] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.677301134Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/leader/snapshot-000000006860930B-285ECB8E.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:43,680 AM [leader-%d651393] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:43,680 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:43,680 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 01:12:43,680 AM [test-pekko.actor.default-dispatcher-7] [INFO] SnapshotManager - leader: snapshot is durable as of 2025-06-29T01:12:43.677301134Z 01:12:43,680 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot: InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]} 01:12:43,681 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SnapshotManager - leader: Snapshot success - sequence number: -1 01:12:43,681 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:12:43,681 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:12:43,681 AM [test-pekko.actor.default-dispatcher-5] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 01:12:43,681 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 01:12:43,681 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 01:12:43,681 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - new-server: support() called [WARN] [06/29/2025 01:12:43.681] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/new-server123] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 01:12:43,681 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 01:12:43,681 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - new-server: lastSequenceNumber prior to persisting applied snapshot: -1 01:12:43,681 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - new-server: support() called 01:12:43,682 AM [new-server-%d610108] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/new-server/snapshot-000000006860930B-28A76D1A.tmp 01:12:43,684 AM [new-server-%d610108] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/new-server/snapshot-000000006860930B-28A76D1A.v1 01:12:43,684 AM [new-server-%d610108] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/new-server/TermInfo.properties 01:12:43,684 AM [new-server-%d610108] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/new-server/snapshot-000000006860930B-28A76D1A.v1 01:12:43,684 AM [new-server-%d610108] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:43.682061082Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16206201763551823442/new-server/snapshot-000000006860930B-28A76D1A.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:43,684 AM [new-server-%d610108] [DEBUG] EntryStoreCompleter - new-server: 1 completion(s) pending 01:12:43,684 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryStoreCompleter - new-server: running 1 completion(s) 01:12:43,684 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - new-server: snapshot is durable as of 2025-06-29T01:12:43.682061082Z 01:12:43,685 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - new-server: Snapshot success - sequence number: -1 01:12:43,685 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - new-server: support() called 01:12:43,685 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - new-server: applySnapshot called 01:12:43,685 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:43,685 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 01:12:43,685 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:43,685 AM [test-pekko.actor.default-dispatcher-5] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to -1, nextIndex set to 0 01:12:43,685 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 01:12:43,726 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:12:43,726 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Dropping UnInitializedFollowerSnapshotReply for server new-server: not leader 01:12:45,288 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: handleInstallSnapshotTimeout for new server new-server 01:12:45,289 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Returning NO_LEADER for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server123, votingMember=true] 01:12:45,289 AM [test-pekko.actor.default-dispatcher-5] [WARN] RaftActorVotingConfigSupport - leader: Timeout occured for new server new-server while installing snapshot 01:12:45,289 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithLeaderChangeDuringInstallSnapshot ending 01:12:45,290 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower121] 01:12:45,301 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector122#995243630] 01:12:45,302 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server123] 01:12:45,302 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:45,303 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:45,303 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader124] 01:12:45,303 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:45,303 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:45,303 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector125] 01:12:45,306 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndOtherLeaderElected starting [WARN] [06/29/2025 01:12:45.309] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@1bd8f5a6 01:12:45,309 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - node1: Starting recovery with journal batch size 1000 01:12:45,310 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: started executor 01:12:45,310 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: started executor [WARN] [06/29/2025 01:12:45.311] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node2]: org.opendaylight.controller.cluster.common.actor.Monitor@7d4d98c3 01:12:45,312 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest18040838003867579845/node1/TermInfo.properties does not exist 01:12:45,312 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - node1: no eligible files found 01:12:45,312 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 01:12:45,312 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PekkoRecovery - node1: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:12:45,312 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 01:12:45,312 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - node2: Starting recovery with journal batch size 1000 01:12:45,312 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - 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:12:45,312 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - node2: started executor 01:12:45,312 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - node2: started executor 01:12:45,314 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest18040838003867579845/node2/TermInfo.properties does not exist 01:12:45,314 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - node2: no eligible files found 01:12:45,315 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 01:12:45,315 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PekkoRecovery - node2: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:12:45,315 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PeerInfos - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=null, votingState=NON_VOTING]] 01:12:45,315 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - 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:12:45,316 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 01:12:45,316 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - node1: Local TermInfo store seeded with TermInfo{term=1, votedFor=node1} 01:12:45,316 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - node1: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@7350bbdb 01:12:45,317 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]], state: Idle 01:12:45,317 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 01:12:45,317 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - node2: Local TermInfo store seeded with TermInfo{term=1, votedFor=node1} 01:12:45,317 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - node2: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@62fb0994 01:12:45,320 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:45,320 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - node1: Sending local ElectionTimeout to start leader election 01:12:45,320 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 01:12:45,320 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:45,320 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - node1 (Follower): Received TimeoutNow - switching to Candidate 01:12:45,320 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Candidate - node1 (Candidate): Election: Candidate has following voting peers: [node2] 01:12:45,323 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=2, votedFor=node1 01:12:45,323 AM [test-pekko.actor.default-dispatcher-13] [INFO] Candidate - node1 (Candidate): Starting new election term 2 01:12:45,323 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Candidate - node1 (Candidate): Sending RequestVote{term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1} to peer node2 01:12:45,323 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActorBehavior - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:12:45,364 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - node2 (Follower): Received TimeoutNow - switching to Candidate 01:12:45,364 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Candidate - node2 (Candidate): Election: Candidate has following voting peers: [] 01:12:45,367 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=2, votedFor=node2 01:12:45,367 AM [test-pekko.actor.default-dispatcher-13] [INFO] Candidate - node2 (Candidate): Starting new election term 2 01:12:45,367 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActorBehavior - node2 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:12:45,367 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Candidate - node2 (Candidate): Received ElectionTimeout 01:12:45,367 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Election: Leader has following peers: [node1] 01:12:45,367 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:45,367 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActorBehavior - node2 (Candidate) :- Switching from behavior Candidate to Leader, election term: 2 01:12:45,367 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Candidate - node1 (Candidate): RaftRPC message received AppendEntries{term=2, leaderId=node2, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}, my term is 2 01:12:45,368 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Candidate - node1 (Candidate): handleAppendEntries: AppendEntries{term=2, leaderId=node2, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} 01:12:45,368 AM [test-pekko.actor.default-dispatcher-7] [INFO] Candidate - node1 (Candidate): New Leader node2 sent an AppendEntries to Candidate for term 2 - will switch to Follower 01:12:45,368 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActorBehavior - node1 (Candidate) :- Switching from behavior Candidate to Follower, election term: 2 01:12:45,479 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - node1: Last sync leader does not match current leader node2, need to catch up to -1 01:12:45,479 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 0, nextIndex: 1 01:12:45,479 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node1: New leader node2 elected 01:12:45,479 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Not updating commit index to 0 - retrieved log entry with index 0, term 1 does not match the current term 2 01:12:45,479 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node1: Forwarding ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]] to new leader 01:12:45,479 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:45,479 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=pekko://test/user/node2, votingState=VOTING]] 01:12:45,479 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node1: getLeaderAddress leaderId = node2 peerAddress = pekko://test/user/node2 01:12:45,479 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node1: Not leader - forwarding to leader ActorSelection[Anchor(pekko://test/), Path(/user/node2)] [WARN] [06/29/2025 01:12:45.480] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/node1] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node1, initialSyncDone=false] 01:12:45,480 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - node2: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]], state: Idle 01:12:45,480 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:45,480 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=pekko://test/user/node1, votingState=VOTING]] 01:12:45,480 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - node2: New server configuration : [ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]] 01:12:45,480 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - node2: Persist data index=1 term=2 command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 01:12:45,480 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - node2: Append log entry and persist JournaledLogEntry{index=1, term=2, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=true} 01:12:45,480 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=afcb6b08-95b3-461c-88ad-2c2eae24469d}, logIndex: 1, isSendImmediate: true 01:12:45,480 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:45,481 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): sendAppendEntries: 1 is present for follower node1 01:12:45,481 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Sending AppendEntries to follower node1: AppendEntries{term=2, leaderId=node2, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=2, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=true}]} 01:12:45,481 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): handleAppendEntries: AppendEntries{term=2, leaderId=node2, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=2, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=true}]} 01:12:45,481 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): Number of entries to be appended = 1 01:12:45,481 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:12:45,481 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 01:12:45,481 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - node1: Append log entry and persist JournaledLogEntry{index=1, term=2, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=true} 01:12:45,481 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=pekko://test/user/node2, votingState=VOTING]] 01:12:45,481 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): Log size is now 2 01:12:45,481 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - 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:12:45,481 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached -1 (of expected -1) 01:12:45,482 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - node2: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]] 01:12:45,482 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - node1: persist complete JournaledLogEntry{index=1, term=2, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=false} 01:12:45,482 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 1, nextIndex: 2 01:12:45,482 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Not updating commit index to 0 - retrieved log entry with index 0, term 1 does not match the current term 2 01:12:45,482 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 [WARN] [06/29/2025 01:12:45.483] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/node1] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node1, initialSyncDone=true] 01:12:45,483 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - node2: persist complete JournaledLogEntry{index=1, term=2, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=false} 01:12:45,483 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - node2 (Leader): Not updating commit index to 0 - retrieved log entry with index 0, term 1 does not match the current term 2 01:12:45,483 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - node2 (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: -1 01:12:45,483 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - node2 (Leader): Setting last applied to 0 01:12:45,483 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to 0 01:12:45,483 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - node2: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=true]]} 01:12:45,483 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - node2 (Leader): Setting last applied to 1 01:12:45,483 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from 0 to 1 01:12:45,483 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - node2: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 01:12:45,484 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - node2: Persisting ApplyJournalEntries with index=1 01:12:45,484 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - node2: fakeSnapshot purging log to 0 for term 2 01:12:45,484 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActorVotingConfigSupport - node2: VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} has been successfully replicated to a majority of followers 01:12:45,598 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): Commit index set to 1 01:12:45,598 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 1 (of expected -1) 01:12:45,598 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 1 01:12:45,598 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - node1 (Follower): Setting last applied to 0 01:12:45,598 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to 0 01:12:45,598 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node1: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=true]]} 01:12:45,598 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - node1 (Follower): Setting last applied to 1 01:12:45,598 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from 0 to 1 01:12:45,598 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node1: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 01:12:45,599 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node1: Persisting ApplyJournalEntries with index=1 01:12:45,599 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - node1: fakeSnapshot purging log to 0 for term 2 01:12:45,719 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 1 (of expected -1) 01:12:45,785 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndOtherLeaderElected ending 01:12:45,785 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower126] 01:12:45,796 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector127#-169202338] 01:12:45,797 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node1] 01:12:45,797 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 01:12:45,797 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 01:12:45,797 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector128#844506393] 01:12:45,798 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node2] 01:12:45,798 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 01:12:45,798 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 01:12:45,801 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithInstallSnapshotTimeout starting [WARN] [06/29/2025 01:12:45.803] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server131]: org.opendaylight.controller.cluster.common.actor.Monitor@454965b6 01:12:45,804 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:45,804 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: started executor 01:12:45,804 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: started executor 01:12:45,806 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest4868901415430097837/new-server/TermInfo.properties does not exist 01:12:45,806 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:45,806 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - 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:12:45,809 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:45,809 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:45,809 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@3b504e9e 01:12:45,810 AM [test-pekko.actor.default-dispatcher-16] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:45.811] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader132]: org.opendaylight.controller.cluster.common.actor.Monitor@6b50103 01:12:45,811 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:45,812 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:45,812 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 01:12:45,812 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 01:12:45,813 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest4868901415430097837/leader/TermInfo.properties does not exist 01:12:45,813 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: no eligible files found 01:12:45,813 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - 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:12:45,816 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:45,816 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:45,816 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@5870de6c 01:12:45,816 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:45,822 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server131, votingMember=true], state: Idle 01:12:45,823 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server131, votingMember=true] 01:12:45,823 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:12:45,823 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - 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:12:45,823 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: lastSequenceNumber prior to capture: -1 01:12:45,823 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - leader: support() called 01:12:45,823 AM [leader-%d550112] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:45,824 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 01:12:45,824 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:45,824 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 01:12:45,824 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - leader: support() called 01:12:45,824 AM [leader-%d550113] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest4868901415430097837/leader/snapshot-000000006860930D-3122E10E.tmp 01:12:45,825 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:12:45,825 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:12:45,825 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 01:12:45,825 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 01:12:45,825 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 01:12:45,825 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server131), Chunk: 1/1 01:12:45,825 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=bogus] 01:12:45,825 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Dropping UnInitializedFollowerSnapshotReply for server bogus: server Id doesn't match 01:12:45,827 AM [leader-%d550113] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest4868901415430097837/leader/snapshot-000000006860930D-3122E10E.v1 01:12:45,827 AM [leader-%d550113] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest4868901415430097837/leader/TermInfo.properties 01:12:45,827 AM [leader-%d550113] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest4868901415430097837/leader/snapshot-000000006860930D-3122E10E.v1 01:12:45,827 AM [leader-%d550113] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:45.824369422Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest4868901415430097837/leader/snapshot-000000006860930D-3122E10E.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:45,827 AM [leader-%d550113] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:45,828 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:45,828 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: snapshot is durable as of 2025-06-29T01:12:45.824369422Z 01:12:45,828 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: Snapshot success - sequence number: -1 01:12:45,828 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 01:12:45,938 AM [test-pekko.actor.default-dispatcher-16] [INFO] Follower - new-server (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:45,942 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 01:12:45,943 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:12:45,943 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: -1, nextIndex: 0 [WARN] [06/29/2025 01:12:45.943] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/new-server131] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 01:12:46,39 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: handleInstallSnapshotTimeout for new server new-server 01:12:46,39 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Returning TIMEOUT for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server131, votingMember=true] 01:12:46,39 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithInstallSnapshotTimeout ending 01:12:46,39 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower129] 01:12:46,40 AM [test-pekko.actor.default-dispatcher-16] [WARN] RaftActorVotingConfigSupport - leader: Timeout occured for new server new-server while installing snapshot 01:12:46,51 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector130#1248735310] 01:12:46,51 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server131] 01:12:46,51 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:46,51 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:46,52 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader132] 01:12:46,52 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:46,52 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:46,56 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoExistingFollower starting [WARN] [06/29/2025 01:12:46.057] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server135]: org.opendaylight.controller.cluster.common.actor.Monitor@4e51e735 01:12:46,58 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:46,58 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: started executor 01:12:46,59 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: started executor 01:12:46,60 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/TermInfo.properties does not exist 01:12:46,60 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:46,60 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - 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:12:46,63 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:46,63 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:46,63 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@7cb199e0 01:12:46,64 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:12:46,64 AM [test-pekko.actor.default-dispatcher-16] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:46.064] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader136]: org.opendaylight.controller.cluster.common.actor.Monitor@625d5a61 01:12:46,65 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:46,65 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:46,65 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 01:12:46,65 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 01:12:46,66 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/TermInfo.properties does not exist 01:12:46,66 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: no eligible files found 01:12:46,66 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - 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:12:46,68 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:46,68 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:46,68 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@410fde7f 01:12:46,69 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:46,76 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server135, votingMember=true], state: Idle 01:12:46,76 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server135, votingMember=true] 01:12:46,76 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - 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:12:46,76 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: lastSequenceNumber prior to capture: -1 01:12:46,76 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - leader: support() called 01:12:46,77 AM [leader-%d400042] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:46,77 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 01:12:46,77 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:46,77 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=1, term=1]/EntryInfo[index=1, term=1] 01:12:46,77 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - leader: support() called 01:12:46,77 AM [leader-%d400043] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/snapshot-000000006860930E-04A1EAB3.tmp 01:12:46,78 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:12:46,78 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:12:46,78 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 01:12:46,78 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 01:12:46,78 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 01:12:46,78 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server135), Chunk: 1/1 01:12:46,78 AM [test-pekko.actor.default-dispatcher-16] [INFO] Follower - new-server (Follower): Term 1 in "InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=1, lastIncludedTerm=1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]}" message is greater than follower's term 0 - updating term 01:12:46,80 AM [leader-%d400043] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/snapshot-000000006860930E-04A1EAB3.v1 01:12:46,81 AM [leader-%d400043] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/snapshot-000000006860930E-04A1EAB3.v1 01:12:46,81 AM [leader-%d400043] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/TermInfo.properties 01:12:46,81 AM [leader-%d400043] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:46.077720243Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/snapshot-000000006860930E-04A1EAB3.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:46,81 AM [leader-%d400043] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:46,81 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:46,81 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: snapshot is durable as of 2025-06-29T01:12:46.077720243Z 01:12:46,81 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: Snapshot success - sequence number: -1 01:12:46,81 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 01:12:46,81 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 01:12:46,81 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot: InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=1, lastIncludedTerm=1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]} 01:12:46,81 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to 1 01:12:46,81 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:12:46,81 AM [test-pekko.actor.default-dispatcher-16] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 01:12:46,82 AM [test-pekko.actor.default-dispatcher-16] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 01:12:46,82 AM [test-pekko.actor.default-dispatcher-16] [INFO] MockRaftActor - new-server: support() called [WARN] [06/29/2025 01:12:46.082] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/new-server135] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 01:12:46,82 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 01:12:46,83 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - new-server: lastSequenceNumber prior to persisting applied snapshot: -1 01:12:46,83 AM [test-pekko.actor.default-dispatcher-16] [INFO] MockRaftActor - new-server: support() called 01:12:46,83 AM [new-server-%d794906] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/snapshot-000000006860930E-04F6903B.tmp 01:12:46,87 AM [new-server-%d794906] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/snapshot-000000006860930E-04F6903B.v1 01:12:46,87 AM [new-server-%d794906] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/snapshot-000000006860930E-04F6903B.v1 01:12:46,87 AM [new-server-%d794906] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/TermInfo.properties 01:12:46,87 AM [new-server-%d794906] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:46.083267643Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/snapshot-000000006860930E-04F6903B.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:46,87 AM [new-server-%d794906] [DEBUG] EntryStoreCompleter - new-server: 1 completion(s) pending 01:12:46,87 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryStoreCompleter - new-server: running 1 completion(s) 01:12:46,87 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - new-server: snapshot is durable as of 2025-06-29T01:12:46.083267643Z 01:12:46,87 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - new-server: Snapshot success - sequence number: -1 01:12:46,87 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - new-server: support() called 01:12:46,88 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - new-server: applySnapshot called 01:12:46,88 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:46,88 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 01:12:46,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:46,88 AM [test-pekko.actor.default-dispatcher-16] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to 1, nextIndex set to 2 01:12:46,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 01:12:46,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:12:46,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:12:46,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:12:46,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Persist data index=2 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:46,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=2, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:46,89 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=0ff7793f-3dba-45bc-9aac-908df7777f2d}, logIndex: 2, isSendImmediate: true 01:12:46,89 AM [leader-%d400044] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/snapshot-000000006860930E-0550130F.tmp 01:12:46,89 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:46,89 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:12:46,89 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower new-server 01:12:46,89 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=2, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:46,89 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server135, votingMember=true] 01:12:46,89 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=2, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:46,89 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 01:12:46,89 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: 1, entries to be added from: 0 01:12:46,90 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:46,90 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - new-server: Append log entry and persist JournaledLogEntry{index=2, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:46,90 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/snapshot-000000006860930E-055ECAF8.tmp 01:12:46,92 AM [leader-%d400044] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/snapshot-000000006860930E-0550130F.v1 01:12:46,93 AM [leader-%d400044] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/snapshot-000000006860930E-04A1EAB3.v1 01:12:46,93 AM [leader-%d400044] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/snapshot-000000006860930E-0550130F.v1 01:12:46,93 AM [leader-%d400044] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/TermInfo.properties 01:12:46,93 AM [leader-%d400044] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:46.077720243Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/snapshot-000000006860930E-04A1EAB3.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:46,93 AM [leader-%d400044] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:46.089133839Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/leader/snapshot-000000006860930E-0550130F.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:46,93 AM [leader-%d400044] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:46,93 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:46,93 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=2, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:46,93 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/snapshot-000000006860930E-055ECAF8.v1 01:12:46,94 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/snapshot-000000006860930E-04F6903B.v1 01:12:46,94 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/snapshot-000000006860930E-055ECAF8.v1 01:12:46,94 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/TermInfo.properties 01:12:46,94 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:46.083267643Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/snapshot-000000006860930E-04F6903B.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:46,94 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:46.090098424Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17769412261973594666/new-server/snapshot-000000006860930E-055ECAF8.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:46,94 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - new-server: persist complete JournaledLogEntry{index=2, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:46,94 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 01:12:46,94 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): Log size is now 1 01:12:46,94 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - 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:12:46,94 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 1 (of expected 1) 01:12:46,94 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 2, nextIndex: 3 01:12:46,94 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 01:12:46,94 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 01:12:46,94 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from 1 to 2 [WARN] [06/29/2025 01:12:46.095] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/new-server135] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=true] 01:12:46,94 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Applying state for log index 2 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:46,95 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 01:12:46,95 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 01:12:46,95 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Follower - new-server (Follower): Commit index set to 2 01:12:46,95 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 2 (of expected 1) 01:12:46,95 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): 1, lastIndex(): 2 01:12:46,95 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 2 01:12:46,95 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from 1 to 2 01:12:46,95 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - new-server: Applying state for log index 2 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:46,95 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} has been successfully replicated to a majority of followers 01:12:46,127 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoExistingFollower ending 01:12:46,127 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower133] 01:12:46,138 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector134#-1558048764] 01:12:46,138 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server135] 01:12:46,139 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:46,139 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:46,140 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader136] 01:12:46,140 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:46,140 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:46,140 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector137] 01:12:46,143 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndForwardedToOtherNodeAfterElectionTimeout starting [WARN] [06/29/2025 01:12:46.145] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@73ef944b 01:12:46,146 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - node1: Starting recovery with journal batch size 1000 01:12:46,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node1: started executor 01:12:46,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node1: started executor [WARN] [06/29/2025 01:12:46.148] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node2]: org.opendaylight.controller.cluster.common.actor.Monitor@7c974ebf 01:12:46,148 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - node2: Starting recovery with journal batch size 1000 01:12:46,148 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: started executor 01:12:46,148 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest14210942891236260671/node1/TermInfo.properties does not exist 01:12:46,148 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: started executor 01:12:46,148 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - node1: no eligible files found 01:12:46,148 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 01:12:46,149 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PekkoRecovery - node1: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:12:46,149 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PeerInfos - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=NON_VOTING]] 01:12:46,149 AM [test-pekko.actor.default-dispatcher-8] [INFO] PekkoRecovery - 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:12:46,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest14210942891236260671/node2/TermInfo.properties does not exist 01:12:46,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - node2: no eligible files found 01:12:46,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 01:12:46,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PekkoRecovery - node2: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:12:46,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PeerInfos - node2: Updated server config: isVoting: false, peers: [PeerInfo [id=node1, address=null, votingState=NON_VOTING]] 01:12:46,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PekkoRecovery - node2: Received ReplicatedLogEntry for recovery: index: 1, size: 1 01:12:46,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PekkoRecovery - node2: Received apply journal entries for recovery, applying to state: 0 to 1 01:12:46,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to 1 01:12:46,152 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - node2: Recovery completed in 64.65 μs - Switching actor to Follower - last log index = 1, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 2 01:12:46,160 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 01:12:46,160 AM [test-pekko.actor.default-dispatcher-8] [INFO] PekkoRecovery - node1: Local TermInfo store seeded with TermInfo{term=1, votedFor=node1} 01:12:46,160 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - node1: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@3f58bc81 01:12:46,161 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 01:12:46,161 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - node2: Local TermInfo store seeded with TermInfo{term=1, votedFor=node1} 01:12:46,161 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - node2: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@5a5ed55f 01:12:46,259 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]], state: Idle 01:12:46,259 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:46,259 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - node1: Sending local ElectionTimeout to start leader election 01:12:46,259 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 01:12:46,259 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:46,259 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - node1 (Follower): Received TimeoutNow - switching to Candidate 01:12:46,259 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Candidate - node1 (Candidate): Election: Candidate has following voting peers: [node2] 01:12:46,262 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=2, votedFor=node1 01:12:46,262 AM [test-pekko.actor.default-dispatcher-16] [INFO] Candidate - node1 (Candidate): Starting new election term 2 01:12:46,263 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Candidate - node1 (Candidate): Sending RequestVote{term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1} to peer node2 01:12:46,263 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActorBehavior - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:12:46,263 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - node2 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 01:12:46,263 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - node2 (Follower): Cluster state: [] 01:12:46,263 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - node2 (Follower): Candidate in requestVote:RequestVote{term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1} with higher term appears reachable, updating term. 01:12:46,263 AM [test-pekko.actor.default-dispatcher-8] [INFO] Follower - 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:12:46,267 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=2, votedFor=null 01:12:46,267 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - node2 (Follower): In requestVote: RequestVote{term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1} - currentTerm: 2, votedFor: null, lastIndex: 1, lastTerm: 1 01:12:46,267 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - node2 (Follower): requestVote returning: RequestVoteReply{term=2, voteGranted=false} 01:12:46,267 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Candidate - node1 (Candidate): RaftRPC message received RequestVoteReply{term=2, voteGranted=false}, my term is 2 01:12:46,267 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Candidate - node1 (Candidate): handleRequestVoteReply: RequestVoteReply{term=2, voteGranted=false}, current voteCount: 1 01:12:46,578 AM [test-pekko.actor.default-dispatcher-7] [WARN] RaftActorVotingConfigSupport - node1: Leader election timed out - cannot apply operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]] 01:12:46,578 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PeerInfos - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=pekko://test/user/node2, votingState=NON_VOTING]] 01:12:46,579 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - node1: tryToForwardOperationToAnotherServer - servers already visited [] 01:12:46,579 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - node1: Found server ActorSelection[Anchor(pekko://test/), Path(/user/node2)] to forward to 01:12:46,579 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - node2: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[node1]], state: Idle 01:12:46,579 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:46,579 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - node2: Sending local ElectionTimeout to start leader election 01:12:46,579 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PeerInfos - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=null, votingState=VOTING]] 01:12:46,580 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node2 (Follower): Received TimeoutNow - switching to Candidate 01:12:46,580 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Candidate - node2 (Candidate): Election: Candidate has following voting peers: [node1] 01:12:46,583 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=3, votedFor=node2 01:12:46,583 AM [test-pekko.actor.default-dispatcher-7] [INFO] Candidate - node2 (Candidate): Starting new election term 3 01:12:46,583 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Candidate - node2 (Candidate): Sending RequestVote{term=3, candidateId=node2, lastLogIndex=1, lastLogTerm=1} to peer node1 01:12:46,583 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActorBehavior - node2 (Follower) :- Switching from behavior Follower to Candidate, election term: 3 01:12:46,583 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - node1 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 01:12:46,583 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - node1 (Follower): Cluster state: [] 01:12:46,583 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - node1 (Follower): Candidate in requestVote:RequestVote{term=3, candidateId=node2, lastLogIndex=1, lastLogTerm=1} with higher term appears reachable, updating term. 01:12:46,583 AM [test-pekko.actor.default-dispatcher-16] [INFO] Follower - 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:12:46,586 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=3, votedFor=null 01:12:46,586 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - node1 (Follower): In requestVote: RequestVote{term=3, candidateId=node2, lastLogIndex=1, lastLogTerm=1} - currentTerm: 3, votedFor: null, lastIndex: 0, lastTerm: 1 01:12:46,588 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=3, votedFor=node2 01:12:46,588 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - node1 (Follower): requestVote returning: RequestVoteReply{term=3, voteGranted=true} 01:12:46,588 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Candidate - node2 (Candidate): RaftRPC message received RequestVoteReply{term=3, voteGranted=true}, my term is 3 01:12:46,588 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Candidate - node2 (Candidate): handleRequestVoteReply: RequestVoteReply{term=3, voteGranted=true}, current voteCount: 1 01:12:46,588 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): Election: Leader has following peers: [node1] 01:12:46,588 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:46,588 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActorBehavior - node2 (Candidate) :- Switching from behavior Candidate to Leader, election term: 3 01:12:46,588 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - node2: New leader node2 elected 01:12:46,588 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - node2: New server configuration : [ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]] 01:12:46,589 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - node2: Persist data index=2 term=3 command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 01:12:46,589 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] ReplicatedLogImpl - node2: Append log entry and persist JournaledLogEntry{index=2, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=true} 01:12:46,589 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=4a191ec7-135a-4c66-82c9-62b99664ad59}, logIndex: 2, isSendImmediate: true 01:12:46,589 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 01:12:46,589 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - node1: Last sync leader does not match current leader node2, need to catch up to -1 01:12:46,589 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - node2: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[node1]] 01:12:46,589 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached -1 (of expected -1) [WARN] [06/29/2025 01:12:46.590] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/node1] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node1, initialSyncDone=false] 01:12:46,590 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 0, nextIndex: 1 [WARN] [06/29/2025 01:12:46.590] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/node1] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node1, initialSyncDone=true] 01:12:46,590 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - node2: fakeSnapshot purging log to 0 for term 3 01:12:46,590 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:12:46,590 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): sendAppendEntries: 1 is present for follower node1 01:12:46,590 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): Sending AppendEntries to follower node1: AppendEntries{term=3, leaderId=node2, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=1, command=2, pending=false}, JournaledLogEntry{index=2, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=true}]} 01:12:46,590 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): sendAppendEntries: 1 is present for follower node1 01:12:46,590 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): handleAppendEntries: AppendEntries{term=3, leaderId=node2, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=1, command=2, pending=false}, JournaledLogEntry{index=2, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=true}]} 01:12:46,590 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): Number of entries to be appended = 2 01:12:46,590 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:12:46,590 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): Append entry to log 2 01:12:46,590 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - node1: Append log entry and persist JournaledLogEntry{index=1, term=1, command=2, pending=false} 01:12:46,591 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - node2: persist complete JournaledLogEntry{index=2, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=false} 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - node1: Append log entry and persist JournaledLogEntry{index=2, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=false} 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=pekko://test/user/node2, votingState=VOTING]] 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): Log size is now 3 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): Commit index set to 1 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - 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:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 1 (of expected -1) 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - node1 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 2 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - node1 (Follower): Setting last applied to 0 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to 0 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - node1: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=false]]} 01:12:46,591 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 2, nextIndex: 3 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - node1 (Follower): Setting last applied to 1 01:12:46,591 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from 0 to 1 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - node1: Applying state for log index 1 data 2 01:12:46,591 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - node2 (Leader): Setting last applied to 2 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [INFO] MockRaftActor - node1: applyState called: 2 01:12:46,591 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from 1 to 2 01:12:46,591 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - node2: Applying state for log index 2 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 01:12:46,591 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - node2: Persisting ApplyJournalEntries with index=2 01:12:46,591 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - node2: fakeSnapshot purging log to 1 for term 3 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - node1: Persisting ApplyJournalEntries with index=1 01:12:46,591 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 01:12:46,591 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SnapshotManager - node1: fakeSnapshot purging log to 0 for term 3 01:12:46,592 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActorVotingConfigSupport - node2: VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} has been successfully replicated to a majority of followers 01:12:46,593 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - node1: persist complete JournaledLogEntry{index=1, term=1, command=2, pending=false} 01:12:46,593 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - node1: persist complete JournaledLogEntry{index=2, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=false} 01:12:46,593 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Follower - node1 (Follower): Commit index set to 2 01:12:46,593 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 2 (of expected -1) 01:12:46,593 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Follower - node1 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): 1, lastIndex(): 2 01:12:46,593 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - node1 (Follower): Setting last applied to 2 01:12:46,593 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from 1 to 2 01:12:46,593 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - node1: Applying state for log index 2 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 01:12:46,593 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - node1: Persisting ApplyJournalEntries with index=2 01:12:46,594 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - node1: fakeSnapshot purging log to 1 for term 3 01:12:46,699 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 2 (of expected -1) 01:12:46,793 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndForwardedToOtherNodeAfterElectionTimeout ending 01:12:46,793 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower138] 01:12:46,796 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector139#-1349964734] 01:12:46,797 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node1] 01:12:46,797 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 01:12:46,797 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 01:12:46,797 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector140#1841370779] 01:12:46,798 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node2] 01:12:46,798 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 01:12:46,798 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 01:12:46,803 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoConsensusReached starting [WARN] [06/29/2025 01:12:46.805] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server143]: org.opendaylight.controller.cluster.common.actor.Monitor@27cc29c9 01:12:46,806 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:46,806 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: started executor 01:12:46,806 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: started executor 01:12:46,808 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/new-server/TermInfo.properties does not exist 01:12:46,808 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:46,808 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - 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:12:46,811 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:46,811 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:46,811 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@7be16ee4 01:12:46,812 AM [test-pekko.actor.default-dispatcher-16] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:46.812] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader144]: org.opendaylight.controller.cluster.common.actor.Monitor@540974c2 01:12:46,813 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:46,813 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:46,813 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 01:12:46,813 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 01:12:46,814 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/TermInfo.properties does not exist 01:12:46,814 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: no eligible files found 01:12:46,814 AM [test-pekko.actor.default-dispatcher-8] [INFO] PekkoRecovery - 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:12:46,816 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:46,816 AM [test-pekko.actor.default-dispatcher-8] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:46,816 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@117c4b54 01:12:46,816 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:46,825 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server143, votingMember=true], state: Idle 01:12:46,825 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server143, votingMember=true] 01:12:46,825 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:12:46,825 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - 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:12:46,825 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: lastSequenceNumber prior to capture: -1 01:12:46,825 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - leader: support() called 01:12:46,825 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 01:12:46,826 AM [leader-%d427636] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:46,826 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:46,826 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 01:12:46,826 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - leader: support() called 01:12:46,827 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:12:46,827 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:12:46,827 AM [leader-%d427637] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/snapshot-000000006860930E-314A15B1.tmp 01:12:46,827 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 01:12:46,827 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 01:12:46,827 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 01:12:46,827 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server143), Chunk: 1/1 01:12:46,827 AM [test-pekko.actor.default-dispatcher-8] [INFO] Follower - new-server (Follower): Term 1 in "InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]}" message is greater than follower's term 0 - updating term 01:12:46,829 AM [leader-%d427637] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/snapshot-000000006860930E-314A15B1.v1 01:12:46,829 AM [leader-%d427637] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/snapshot-000000006860930E-314A15B1.v1 01:12:46,830 AM [leader-%d427637] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/TermInfo.properties 01:12:46,830 AM [leader-%d427637] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:46.826938801Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/snapshot-000000006860930E-314A15B1.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:46,830 AM [leader-%d427637] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:46,830 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:46,830 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 01:12:46,830 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot: InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]} 01:12:46,830 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: snapshot is durable as of 2025-06-29T01:12:46.826938801Z 01:12:46,830 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: Snapshot success - sequence number: -1 01:12:46,830 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:12:46,830 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:12:46,830 AM [test-pekko.actor.default-dispatcher-8] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 01:12:46,830 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 01:12:46,831 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 01:12:46,831 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - new-server: support() called [WARN] [06/29/2025 01:12:46.831] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/new-server143] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 01:12:46,831 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 01:12:46,832 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - new-server: lastSequenceNumber prior to persisting applied snapshot: -1 01:12:46,832 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - new-server: support() called 01:12:46,832 AM [new-server-%d231495] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/new-server/snapshot-000000006860930E-319C30A1.tmp 01:12:46,834 AM [new-server-%d231495] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/new-server/snapshot-000000006860930E-319C30A1.v1 01:12:46,835 AM [new-server-%d231495] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/new-server/snapshot-000000006860930E-319C30A1.v1 01:12:46,835 AM [new-server-%d231495] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/new-server/TermInfo.properties 01:12:46,835 AM [new-server-%d231495] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:46.832319649Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/new-server/snapshot-000000006860930E-319C30A1.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:46,835 AM [new-server-%d231495] [DEBUG] EntryStoreCompleter - new-server: 1 completion(s) pending 01:12:46,835 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryStoreCompleter - new-server: running 1 completion(s) 01:12:46,835 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - new-server: snapshot is durable as of 2025-06-29T01:12:46.832319649Z 01:12:46,835 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - new-server: Snapshot success - sequence number: -1 01:12:46,835 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - new-server: support() called 01:12:46,836 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - new-server: applySnapshot called 01:12:46,836 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:46,836 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 01:12:46,836 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:46,836 AM [test-pekko.actor.default-dispatcher-5] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to -1, nextIndex set to 0 01:12:46,836 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 01:12:46,875 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:12:46,875 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:12:46,875 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:46,875 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:46,876 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=cc2f6ce6-af90-4f7e-9a22-a685bc11d087}, logIndex: 0, isSendImmediate: true 01:12:46,876 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:46,876 AM [leader-%d427638] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/snapshot-000000006860930E-3435A667.tmp 01:12:46,876 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:46,876 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:46,876 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:46,876 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server143, votingMember=true] 01:12:46,878 AM [leader-%d427638] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/snapshot-000000006860930E-3435A667.v1 01:12:46,878 AM [leader-%d427638] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/snapshot-000000006860930E-314A15B1.v1 01:12:46,878 AM [leader-%d427638] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/snapshot-000000006860930E-3435A667.v1 01:12:46,878 AM [leader-%d427638] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/TermInfo.properties 01:12:46,879 AM [leader-%d427638] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:46.826938801Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/snapshot-000000006860930E-314A15B1.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:46,879 AM [leader-%d427638] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:46.875931239Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest133200281180987665/leader/snapshot-000000006860930E-3435A667.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:46,879 AM [leader-%d427638] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:46,879 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:46,879 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:46,925 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=, votingMember=false], state: Persisting 01:12:46,925 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Server operation already in progress - queueing AddServer [newServerId=new-server2, newServerAddress=, votingMember=false] 01:12:46,938 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:47,58 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:47,58 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:47,179 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:47,179 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:47,298 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:47,298 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:47,418 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:47,418 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:47,538 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:47,538 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:47,658 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:47,658 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:47,779 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:47,779 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:48,889 AM [test-pekko.actor.default-dispatcher-5] [WARN] RaftActorVotingConfigSupport - leader: Timeout occured while replicating the new server configuration for new-server 01:12:48,889 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Returning PRIOR_REQUEST_CONSENSUS_TIMEOUT for operation AddServer [newServerId=new-server2, newServerAddress=, votingMember=false] 01:12:48,889 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=, votingMember=false], state: Persisting 01:12:48,889 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Returning PRIOR_REQUEST_CONSENSUS_TIMEOUT for operation AddServer [newServerId=new-server2, newServerAddress=, votingMember=false] 01:12:48,890 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoConsensusReached ending 01:12:48,890 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower141] 01:12:48,901 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector142#-1614986309] 01:12:48,902 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server143] 01:12:48,902 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:48,902 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:48,902 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader144] 01:12:48,903 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:48,903 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:48,903 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector145] 01:12:48,903 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-serverCollector146] 01:12:48,906 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerLeaderWithNoFollowers starting [WARN] [06/29/2025 01:12:48.907] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader148]: org.opendaylight.controller.cluster.common.actor.Monitor@6f66ee3f 01:12:48,908 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:48,908 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:48,908 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 01:12:48,909 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 01:12:48,910 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest11360830734037659168/leader/TermInfo.properties does not exist 01:12:48,910 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: no eligible files found 01:12:48,911 AM [test-pekko.actor.default-dispatcher-8] [INFO] PekkoRecovery - 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:12:48,915 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:48,915 AM [test-pekko.actor.default-dispatcher-8] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:48,915 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@55e1324d 01:12:48,916 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:48,919 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onRemoveServer: RemoveServer{serverId='leader'}, state: Idle 01:12:48,920 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerLeaderWithNoFollowers ending 01:12:48,920 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower147] 01:12:48,931 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader148] 01:12:48,931 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:48,931 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:48,933 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithLeaderChangeBeforePriorSnapshotComplete starting [WARN] [06/29/2025 01:12:48.936] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server151]: org.opendaylight.controller.cluster.common.actor.Monitor@7f4eadaf 01:12:48,937 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:48,937 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: started executor 01:12:48,937 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: started executor 01:12:48,938 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6256452841293788860/new-server/TermInfo.properties does not exist 01:12:48,938 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:48,938 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - 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:12:48,941 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:48,941 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:48,941 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@28096372 01:12:48,941 AM [test-pekko.actor.default-dispatcher-5] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:48.942] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader152]: org.opendaylight.controller.cluster.common.actor.Monitor@5a0f7c94 01:12:48,942 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:48,943 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:48,943 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 01:12:48,943 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 01:12:48,943 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6256452841293788860/leader/TermInfo.properties does not exist 01:12:48,943 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: no eligible files found 01:12:48,944 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - 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:12:48,946 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:48,946 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:48,946 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@7192929e 01:12:48,946 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:48,946 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Take a snapshot of current state. lastReplicatedLog is null and replicatedToAllIndex is -1 01:12:48,946 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:12:48,946 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true] 01:12:48,946 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: captured snapshot at lastSequenceNumber: -1 01:12:48,946 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 01:12:48,946 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - leader: support() called 01:12:48,947 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: user triggered or root overwrite snapshot encountered, trimming log up to last applied index -1 01:12:48,947 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:12:48,947 AM [leader-%d789185] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6256452841293788860/leader/snapshot-0000000068609310-387DF98A.tmp 01:12:48,950 AM [leader-%d789185] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6256452841293788860/leader/snapshot-0000000068609310-387DF98A.v1 01:12:48,950 AM [leader-%d789185] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6256452841293788860/leader/snapshot-0000000068609310-387DF98A.v1 01:12:48,950 AM [leader-%d789185] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6256452841293788860/leader/TermInfo.properties 01:12:48,950 AM [leader-%d789185] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:48.947779978Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6256452841293788860/leader/snapshot-0000000068609310-387DF98A.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:48,950 AM [leader-%d789185] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:48,950 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:48,954 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server151, votingMember=true], state: Idle 01:12:48,954 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server151, votingMember=true] 01:12:48,954 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: captureToInstall should not be called in state PersistCapture[lastSequenceNumber=-1, request=CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true]] 01:12:48,954 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Snapshot already in progress - waiting for completion 01:12:49,57 AM [main] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:49,57 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:49,57 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: snapshot is durable as of 2025-06-29T01:12:48.947779978Z 01:12:49,57 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: Snapshot success - sequence number: -1 01:12:49,57 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: onSnapshotComplete 01:12:49,57 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: No longer the leader 01:12:49,57 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 01:12:49,57 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: handleInstallSnapshotTimeout for new server new-server 01:12:49,57 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Returning NO_LEADER for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server151, votingMember=true] 01:12:49,58 AM [test-pekko.actor.default-dispatcher-8] [WARN] RaftActorVotingConfigSupport - leader: Timeout occured for new server new-server while waiting for prior snapshot to complete 01:12:49,58 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithLeaderChangeBeforePriorSnapshotComplete ending 01:12:49,58 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower149] 01:12:49,69 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector150#1467849813] 01:12:49,69 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server151] 01:12:49,69 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:49,69 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:49,70 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader152] 01:12:49,70 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:49,70 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:49,72 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServersAsNonVoting starting [WARN] [06/29/2025 01:12:49.074] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server155]: org.opendaylight.controller.cluster.common.actor.Monitor@66714804 01:12:49,75 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:49,75 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - new-server: started executor 01:12:49,75 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - new-server: started executor 01:12:49,77 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/TermInfo.properties does not exist 01:12:49,77 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:49,77 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - 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:12:49,79 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:49,79 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:49,79 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@14ddff6a 01:12:49,80 AM [test-pekko.actor.default-dispatcher-5] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:49.080] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader156]: org.opendaylight.controller.cluster.common.actor.Monitor@407f76ad 01:12:49,81 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:49,81 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:49,82 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: started executor 01:12:49,82 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: started executor 01:12:49,83 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/TermInfo.properties does not exist 01:12:49,83 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: no eligible files found 01:12:49,83 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - 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:12:49,85 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:49,85 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:49,85 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@32eeb85c 01:12:49,85 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:49,93 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server155, votingMember=false], state: Idle 01:12:49,93 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server155, votingMember=false] 01:12:49,93 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: New follower is non-voting - directly persisting new server configuration 01:12:49,93 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 01:12:49,93 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,93 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:49,93 AM [leader-%d316462] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/snapshot-0000000068609311-0595832A.tmp 01:12:49,94 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=8027a0b2-7cbc-41ce-b023-aa3954cd9996}, logIndex: 0, isSendImmediate: true 01:12:49,94 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:12:49,94 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 01:12:49,94 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - leader: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,94 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,94 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server155, votingMember=false] 01:12:49,94 AM [test-pekko.actor.default-dispatcher-5] [INFO] Follower - new-server (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:49,94 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} has been successfully replicated to a majority of followers 01:12:49,96 AM [leader-%d316462] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/snapshot-0000000068609311-0595832A.v1 01:12:49,96 AM [leader-%d316462] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/snapshot-0000000068609311-0595832A.v1 01:12:49,97 AM [leader-%d316462] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/TermInfo.properties 01:12:49,97 AM [leader-%d316462] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.093684522Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/snapshot-0000000068609311-0595832A.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:49,97 AM [leader-%d316462] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:49,97 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:49,97 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 01:12:49,97 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:49,97 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:12:49,97 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: -1, nextIndex: 0 01:12:49,97 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,97 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server [WARN] [06/29/2025 01:12:49.097] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/new-server155] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 01:12:49,97 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:49,98 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:49,98 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 01:12:49,98 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:12:49,98 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,98 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - new-server: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:49,98 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/snapshot-0000000068609311-05DA9477.tmp 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/snapshot-0000000068609311-05DA9477.v1 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/snapshot-0000000068609311-05DA9477.v1 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/TermInfo.properties 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.098210935Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/snapshot-0000000068609311-05DA9477.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - new-server: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - new-server: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Log size is now 1 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Commit index set to 0 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - 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:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 0 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to 0 01:12:49,100 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - new-server: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,101 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 0, nextIndex: 1 [WARN] [06/29/2025 01:12:49.101] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/new-server155] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=true] 01:12:49,101 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,208 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:49,329 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:49,449 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:49,569 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower153, votingMember=false], state: Idle 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower153, votingMember=false] 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: New follower is non-voting - directly persisting new server configuration 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: Persist data index=1 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=0b735030-7ea2-4f7e-a704-9a230bcd57d1}, logIndex: 1, isSendImmediate: true 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from 0 to 1 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,649 AM [leader-%d316463] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/snapshot-0000000068609311-26B7C2F8.tmp 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower new-server 01:12:49,649 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:49,650 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server2: active: false, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:49,650 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower153, votingMember=false] 01:12:49,650 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:49,650 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 01:12:49,650 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - new-server2: Last sync leader does not match current leader leader, need to catch up to -1 01:12:49,650 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:12:49,650 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,650 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[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:12:49,650 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - new-server: Append log entry and persist JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:49,650 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/snapshot-0000000068609311-26C69478.tmp 01:12:49,650 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server2 01:12:49,650 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server2: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}, JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:49,651 AM [test-pekko.actor.default-dispatcher-7] [ERROR] OneForOneStrategy - Cannot invoke "org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.getReplicatedToAllIndex()" because "currentBehavior" is null java.lang.NullPointerException: Cannot invoke "org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.getReplicatedToAllIndex()" because "currentBehavior" is null at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.trimLog(SnapshotManager.java:626) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.performSnapshotWithoutCapture(RaftActorBehavior.java:438) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:221) [ERROR] [06/29/2025 01:12:49.651] [test-pekko.actor.internal-dispatcher-3] [pekko://test/user/follower153] Cannot invoke "org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.getReplicatedToAllIndex()" because "currentBehavior" is null java.lang.NullPointerException: Cannot invoke "org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.getReplicatedToAllIndex()" because "currentBehavior" is null at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.trimLog(SnapshotManager.java:626) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.performSnapshotWithoutCapture(RaftActorBehavior.java:438) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:221) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.appendEntries(RaftActorBehavior.java:152) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:375) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:500) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.UntypedAbstractActor$$anonfun$receive$1.applyOrElse(AbstractActor.scala:341) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive(Actor.scala:547) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive$(Actor.scala:545) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.AbstractActor.aroundReceive(AbstractActor.scala:229) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.ActorCell.receiveMessage(ActorCell.scala:590) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.ActorCell.invoke(ActorCell.scala:557) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.processMailbox(Mailbox.scala:280) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.run(Mailbox.scala:241) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.exec(Mailbox.scala:253) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.appendEntries(RaftActorBehavior.java:152) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:375) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:500) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.UntypedAbstractActor$$anonfun$receive$1.applyOrElse(AbstractActor.scala:341) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive(Actor.scala:547) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive$(Actor.scala:545) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.AbstractActor.aroundReceive(AbstractActor.scala:229) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.ActorCell.receiveMessage(ActorCell.scala:590) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.actor.ActorCell.invoke(ActorCell.scala:557) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.processMailbox(Mailbox.scala:280) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.run(Mailbox.scala:241) at org.opendaylight.controller.repackaged.pekko@11.0.0-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.exec(Mailbox.scala:253) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188) 01:12:49,654 AM [leader-%d316463] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/snapshot-0000000068609311-26B7C2F8.v1 01:12:49,654 AM [leader-%d316463] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/snapshot-0000000068609311-26B7C2F8.v1 01:12:49,654 AM [leader-%d316463] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/snapshot-0000000068609311-0595832A.v1 01:12:49,654 AM [leader-%d316463] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/TermInfo.properties 01:12:49,654 AM [leader-%d316463] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.093684522Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/snapshot-0000000068609311-0595832A.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:49,654 AM [leader-%d316463] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.649577208Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/leader/snapshot-0000000068609311-26B7C2F8.v1, size=100, entryCompress=NONE, stateCompress=NONE} 01:12:49,654 AM [leader-%d316463] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:49,655 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:49,655 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/snapshot-0000000068609311-26C69478.v1 01:12:49,655 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:49,655 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/snapshot-0000000068609311-05DA9477.v1 01:12:49,655 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/TermInfo.properties 01:12:49,655 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/snapshot-0000000068609311-26C69478.v1 01:12:49,655 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.098210935Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/snapshot-0000000068609311-05DA9477.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:49,655 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.650548344Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5903529624096820845/new-server/snapshot-0000000068609311-26C69478.v1, size=100, entryCompress=NONE, stateCompress=NONE} 01:12:49,655 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - new-server: persist complete JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:49,656 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PeerInfos - 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:12:49,656 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): Log size is now 2 01:12:49,656 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): Commit index set to 1 01:12:49,656 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - 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:12:49,656 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 01:12:49,656 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 01:12:49,656 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 1 01:12:49,656 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from 0 to 1 01:12:49,656 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - new-server: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,656 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 1, nextIndex: 2 01:12:49,656 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:49,700 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServersAsNonVoting ending 01:12:49,700 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower153] 01:12:49,712 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector154#-1190284755] 01:12:49,712 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server155] 01:12:49,712 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:49,712 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:49,713 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader156] 01:12:49,713 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:49,713 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:49,713 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector157] 01:12:49,716 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithPriorSnapshotInProgress starting [WARN] [06/29/2025 01:12:49.718] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server160]: org.opendaylight.controller.cluster.common.actor.Monitor@7e96faf6 01:12:49,719 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:49,719 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: started executor 01:12:49,719 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: started executor 01:12:49,721 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/TermInfo.properties does not exist 01:12:49,721 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:49,721 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - 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:12:49,724 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:49,724 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:49,724 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@69f985d7 01:12:49,725 AM [test-pekko.actor.default-dispatcher-7] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:49.725] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader161]: org.opendaylight.controller.cluster.common.actor.Monitor@7e6c3053 01:12:49,725 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:49,725 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:49,726 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 01:12:49,726 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 01:12:49,727 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/TermInfo.properties does not exist 01:12:49,727 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: no eligible files found 01:12:49,727 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - 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:12:49,729 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:49,729 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:49,729 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@57af3d02 01:12:49,729 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:49,730 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: Take a snapshot of current state. lastReplicatedLog is null and replicatedToAllIndex is -1 01:12:49,730 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:12:49,730 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true] 01:12:49,730 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: captured snapshot at lastSequenceNumber: -1 01:12:49,730 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 01:12:49,730 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - leader: support() called 01:12:49,730 AM [leader-%d88084] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-2B8A27EB.tmp 01:12:49,730 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: user triggered or root overwrite snapshot encountered, trimming log up to last applied index -1 01:12:49,730 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:12:49,732 AM [leader-%d88084] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-2B8A27EB.v1 01:12:49,732 AM [leader-%d88084] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-2B8A27EB.v1 01:12:49,733 AM [leader-%d88084] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/TermInfo.properties 01:12:49,733 AM [leader-%d88084] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.730474475Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-2B8A27EB.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:49,733 AM [leader-%d88084] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:49,733 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:49,838 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server160, votingMember=true], state: Idle 01:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server160, votingMember=true] 01:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: captureToInstall should not be called in state PersistCapture[lastSequenceNumber=-1, request=CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true]] 01:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Snapshot already in progress - waiting for completion 01:12:49,839 AM [main] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: snapshot is durable as of 2025-06-29T01:12:49.730474475Z 01:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: Snapshot success - sequence number: -1 01:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onSnapshotComplete 01:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - 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:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: lastSequenceNumber prior to capture: -1 01:12:49,839 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - leader: support() called 01:12:49,840 AM [leader-%d88085] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:49,840 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 01:12:49,840 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 01:12:49,840 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:49,840 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 01:12:49,840 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - leader: support() called 01:12:49,841 AM [leader-%d88086] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-321FF0D2.tmp 01:12:49,841 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:12:49,841 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:12:49,841 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 01:12:49,841 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 01:12:49,841 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 01:12:49,841 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server160), Chunk: 1/1 01:12:49,841 AM [test-pekko.actor.default-dispatcher-7] [INFO] Follower - new-server (Follower): Term 1 in "InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]}" message is greater than follower's term 0 - updating term 01:12:49,843 AM [leader-%d88086] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-321FF0D2.v1 01:12:49,844 AM [leader-%d88086] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-2B8A27EB.v1 01:12:49,844 AM [leader-%d88086] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-321FF0D2.v1 01:12:49,844 AM [leader-%d88086] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/TermInfo.properties 01:12:49,844 AM [leader-%d88086] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.730474475Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-2B8A27EB.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:49,844 AM [leader-%d88086] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.840954066Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-321FF0D2.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:49,844 AM [leader-%d88086] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:49,844 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:49,844 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: snapshot is durable as of 2025-06-29T01:12:49.840954066Z 01:12:49,844 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: Snapshot success - sequence number: -1 01:12:49,844 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 01:12:49,844 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 01:12:49,844 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot: InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]} 01:12:49,844 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:12:49,845 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:12:49,845 AM [test-pekko.actor.default-dispatcher-7] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 01:12:49,845 AM [test-pekko.actor.default-dispatcher-7] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 01:12:49,845 AM [test-pekko.actor.default-dispatcher-7] [INFO] MockRaftActor - new-server: support() called 01:12:49,846 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 01:12:49,846 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SnapshotManager - new-server: lastSequenceNumber prior to persisting applied snapshot: -1 [WARN] [06/29/2025 01:12:49.846] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/new-server160] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 01:12:49,846 AM [test-pekko.actor.default-dispatcher-7] [INFO] MockRaftActor - new-server: support() called 01:12:49,846 AM [new-server-%d524871] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/snapshot-0000000068609311-327361FC.tmp 01:12:49,849 AM [new-server-%d524871] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/snapshot-0000000068609311-327361FC.v1 01:12:49,849 AM [new-server-%d524871] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/snapshot-0000000068609311-327361FC.v1 01:12:49,849 AM [new-server-%d524871] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/TermInfo.properties 01:12:49,849 AM [new-server-%d524871] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.846422524Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/snapshot-0000000068609311-327361FC.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:49,849 AM [new-server-%d524871] [DEBUG] EntryStoreCompleter - new-server: 1 completion(s) pending 01:12:49,849 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryStoreCompleter - new-server: running 1 completion(s) 01:12:49,849 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - new-server: snapshot is durable as of 2025-06-29T01:12:49.846422524Z 01:12:49,849 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - new-server: Snapshot success - sequence number: -1 01:12:49,849 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - new-server: support() called 01:12:49,850 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - new-server: applySnapshot called 01:12:49,850 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:49,850 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 01:12:49,850 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:49,850 AM [test-pekko.actor.default-dispatcher-7] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to -1, nextIndex set to 0 01:12:49,850 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 01:12:49,851 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:12:49,851 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:12:49,851 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,851 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:49,851 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=1e87e382-0d6d-4a58-9483-ce006dcf3cec}, logIndex: 0, isSendImmediate: true 01:12:49,851 AM [leader-%d88087] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-32C04FB3.tmp 01:12:49,851 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:49,851 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,851 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 01:12:49,851 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:49,852 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server160, votingMember=true] 01:12:49,852 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:49,852 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 01:12:49,852 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:12:49,852 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,852 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - new-server: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:49,852 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/snapshot-0000000068609311-32CE6E7C.tmp 01:12:49,854 AM [leader-%d88087] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-32C04FB3.v1 01:12:49,854 AM [leader-%d88087] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-321FF0D2.v1 01:12:49,854 AM [leader-%d88087] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/TermInfo.properties 01:12:49,854 AM [leader-%d88087] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-32C04FB3.v1 01:12:49,854 AM [leader-%d88087] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.840954066Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-321FF0D2.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:49,854 AM [leader-%d88087] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.851464115Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/leader/snapshot-0000000068609311-32C04FB3.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:49,854 AM [leader-%d88087] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:49,854 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:49,854 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:49,854 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/snapshot-0000000068609311-32CE6E7C.v1 01:12:49,855 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/snapshot-0000000068609311-327361FC.v1 01:12:49,855 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/snapshot-0000000068609311-32CE6E7C.v1 01:12:49,855 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/TermInfo.properties 01:12:49,855 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.846422524Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/snapshot-0000000068609311-327361FC.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:49,855 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.852389500Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest666236886461621139/new-server/snapshot-0000000068609311-32CE6E7C.v1, size=86, entryCompress=NONE, stateCompress=NONE} 01:12:49,855 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - new-server: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:49,855 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PeerInfos - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 01:12:49,855 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): Log size is now 1 01:12:49,855 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - 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:12:49,855 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:12:49,855 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 0, nextIndex: 1 01:12:49,855 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:12:49,855 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:12:49,855 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 01:12:49,855 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - leader: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,856 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 [WARN] [06/29/2025 01:12:49.856] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/new-server160] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=true] 01:12:49,856 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} has been successfully replicated to a majority of followers 01:12:49,856 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Follower - new-server (Follower): Commit index set to 0 01:12:49,856 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:49,856 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:12:49,856 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 0 01:12:49,856 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to 0 01:12:49,856 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - new-server: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:49,903 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithPriorSnapshotInProgress ending 01:12:49,903 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower158] 01:12:49,914 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector159#374273362] 01:12:49,914 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server160] 01:12:49,914 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:49,914 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:49,914 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader161] 01:12:49,915 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:49,915 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:49,915 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector162] 01:12:49,919 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeLeaderToNonVotingInSingleNode starting [WARN] [06/29/2025 01:12:49.920] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader164]: org.opendaylight.controller.cluster.common.actor.Monitor@e45ae75 01:12:49,921 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:49,921 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:49,921 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 01:12:49,921 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 01:12:49,923 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest16869992503318840585/leader/TermInfo.properties does not exist 01:12:49,924 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: no eligible files found 01:12:49,924 AM [test-pekko.actor.default-dispatcher-8] [INFO] PekkoRecovery - 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:12:49,927 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:49,927 AM [test-pekko.actor.default-dispatcher-8] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:49,927 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@4ab5887 01:12:49,928 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:49,928 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]], state: Idle 01:12:49,928 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:49,928 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Returning INVALID_REQUEST for operation ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]] 01:12:49,928 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeLeaderToNonVotingInSingleNode ending 01:12:49,928 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower163] 01:12:49,929 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader164] 01:12:49,929 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:49,929 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:49,931 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeLeaderToNonVoting starting [WARN] [06/29/2025 01:12:49.932] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader168]: org.opendaylight.controller.cluster.common.actor.Monitor@49a6039e 01:12:49,933 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:49,933 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:49,933 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 01:12:49,933 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 01:12:49,936 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/leader/TermInfo.properties does not exist 01:12:49,936 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: no eligible files found 01:12:49,936 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - leader: Recovery completed - Switching actor to Follower - last log index = -1, last log term = -1, snapshot index = -1, snapshot term = -1, journal size = 0 [WARN] [06/29/2025 01:12:49.936] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower166]: org.opendaylight.controller.cluster.common.actor.Monitor@35b6c597 01:12:49,937 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 01:12:49,938 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower: started executor 01:12:49,938 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower: started executor 01:12:49,939 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:49,939 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:49,939 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@17553834 01:12:49,939 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower/TermInfo.properties does not exist 01:12:49,939 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower2, follower] 01:12:49,939 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: no eligible files found 01:12:49,939 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:12:49,939 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - 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:12:49,939 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [06/29/2025 01:12:49.940] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower2167] received dead letter from TestActor[pekko://test/user/leader168]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [WARN] [06/29/2025 01:12:49.940] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower2167]: org.opendaylight.controller.cluster.common.actor.Monitor@81d4b03 01:12:49,940 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - follower2: Starting recovery with journal batch size 1000 01:12:49,940 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower2: started executor 01:12:49,940 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower2: started executor 01:12:49,941 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower2/TermInfo.properties does not exist 01:12:49,941 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower2: no eligible files found 01:12:49,941 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - 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:12:49,941 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 01:12:49,941 AM [test-pekko.actor.default-dispatcher-16] [INFO] PekkoRecovery - follower: Local TermInfo store seeded with TermInfo{term=0} 01:12:49,941 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - follower: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@4ca38eba 01:12:49,942 AM [test-pekko.actor.default-dispatcher-16] [INFO] Follower - follower (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:49,943 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=0, votedFor=null 01:12:49,943 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - follower2: Local TermInfo store seeded with TermInfo{term=0} 01:12:49,943 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - follower2: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@2affabe0 01:12:49,944 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 01:12:49,944 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:12:49,944 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 [WARN] [06/29/2025 01:12:49.944] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower166] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] 01:12:49,944 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:12:49,951 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]], state: Idle 01:12:49,951 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:49,951 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PeerInfos - leader: Updated server config: isVoting: false, peers: [PeerInfo [id=follower2, address=pekko://test/user/follower2167, votingState=VOTING], PeerInfo [id=follower, address=pekko://test/user/follower166, votingState=VOTING]] 01:12:49,951 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]] 01:12:49,951 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]} 01:12:49,951 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=true} 01:12:49,951 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=e6aecd9c-bb74-4bfe-9acd-80bceb948d0c}, logIndex: 0, isSendImmediate: true 01:12:49,951 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:49,951 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,951 AM [test-pekko.actor.default-dispatcher-7] [INFO] Follower - follower2 (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:49,952 AM [leader-%d119748] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/leader/snapshot-0000000068609311-38BB68D4.tmp 01:12:49,952 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,952 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:12:49,952 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=true}]} 01:12:49,952 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]] 01:12:49,952 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=true}]} 01:12:49,952 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 01:12:49,952 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:12:49,952 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]} 01:12:49,952 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - follower: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=true} 01:12:49,952 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower/snapshot-0000000068609311-38C6751E.tmp 01:12:49,954 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=1, votedFor=null 01:12:49,954 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader leader, need to catch up to -1 [WARN] [06/29/2025 01:12:49.954] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/follower2167] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=false] 01:12:49,955 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: -1, nextIndex: 0 01:12:49,955 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,955 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower2 01:12:49,955 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower2: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=true}]} 01:12:49,955 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower/snapshot-0000000068609311-38C6751E.v1 01:12:49,955 AM [leader-%d119748] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/leader/snapshot-0000000068609311-38BB68D4.v1 01:12:49,955 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower2 (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=true}]} 01:12:49,955 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower/snapshot-0000000068609311-38C6751E.v1 01:12:49,955 AM [leader-%d119748] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/leader/snapshot-0000000068609311-38BB68D4.v1 01:12:49,955 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower2 (Follower): Number of entries to be appended = 1 01:12:49,955 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower2 (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:12:49,955 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower2 (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]} 01:12:49,955 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - follower2: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=true} 01:12:49,955 AM [leader-%d119748] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/leader/TermInfo.properties 01:12:49,955 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower/TermInfo.properties 01:12:49,955 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower2/snapshot-0000000068609311-38F51A8F.tmp 01:12:49,955 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.952530206Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower/snapshot-0000000068609311-38C6751E.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:49,955 AM [leader-%d119748] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.951806164Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/leader/snapshot-0000000068609311-38BB68D4.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:49,955 AM [leader-%d119748] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:49,955 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - follower: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false} 01:12:49,955 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - follower: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=pekko://test/user/leader168, votingState=NON_VOTING], PeerInfo [id=follower2, address=pekko://test/user/follower2167, votingState=VOTING]] 01:12:49,955 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Log size is now 1 01:12:49,955 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - 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:12:49,955 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:12:49,956 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) [WARN] [06/29/2025 01:12:49.956] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/follower166] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=true] 01:12:49,956 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 01:12:49,956 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:12:49,956 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:12:49,956 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 01:12:49,956 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]} 01:12:49,956 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,956 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false} 01:12:49,956 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower (Follower): Commit index set to 0 01:12:49,956 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:49,956 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:12:49,956 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 01:12:49,956 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to 0 01:12:49,956 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - follower: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]} 01:12:49,956 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]} has been successfully replicated to a majority of followers 01:12:49,956 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - Leader changed to non-voting - trying leadership transfer 01:12:49,957 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Initiating leader transfer 01:12:49,958 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - follower: onLeaderTransitioning: LeaderTransitioning [leaderId=leader] 01:12:49,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower2/snapshot-0000000068609311-38F51A8F.v1 01:12:49,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower2/snapshot-0000000068609311-38F51A8F.v1 01:12:49,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower2/TermInfo.properties 01:12:49,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:49.955587215Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest5203479629439969880/follower2/snapshot-0000000068609311-38F51A8F.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:49,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - follower2: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false} 01:12:49,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PeerInfos - follower2: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=pekko://test/user/leader168, votingState=NON_VOTING], PeerInfo [id=follower, address=pekko://test/user/follower166, votingState=VOTING]] 01:12:49,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower2 (Follower): Log size is now 1 01:12:49,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - 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:12:49,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:12:49,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - follower2: onLeaderTransitioning: LeaderTransitioning [leaderId=leader] [WARN] [06/29/2025 01:12:49.959] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower2167] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=true] 01:12:49,961 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorLeadershipTransferCohort - leader: pauseLeader successfully completed - doing transfer 01:12:49,961 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 01:12:49,961 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,961 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower2 01:12:49,961 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower2: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false}]} 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - follower2 (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false}]} 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - follower2 (Follower): Number of entries to be appended = 1 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - follower2 (Follower): matchEntry JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false} is present: existingEntryTerm: 1 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - follower2 (Follower): After cleanup, lastIndex: 0, entries to be added from: 1 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - follower2 (Follower): Log size is now 1 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - follower2 (Follower): Commit index set to 0 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - 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:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - follower2 (Follower): Setting last applied to 0 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from -1 to 0 01:12:49,961 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - follower2: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]} 01:12:49,962 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,962 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:49,962 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: 0, lastIndex: 0, isVoting: true 01:12:49,962 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 01:12:49,962 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,962 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower2 01:12:49,962 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,962 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] Leader - leader (Leader): Leader transfer complete 01:12:49,962 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:49,962 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorLeadershipTransferCohort - leader: leader transfer complete - waiting for new leader 01:12:49,962 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:49,962 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower (Follower): Received TimeoutNow - switching to Candidate 01:12:49,962 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Candidate - follower (Candidate): Election: Candidate has following voting peers: [follower2] 01:12:49,963 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 01:12:49,963 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,964 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=2, votedFor=follower 01:12:49,964 AM [test-pekko.actor.default-dispatcher-6] [INFO] Candidate - follower (Candidate): Starting new election term 2 01:12:49,964 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Candidate - follower (Candidate): Sending RequestVote{term=2, candidateId=follower, lastLogIndex=0, lastLogTerm=1} to peer follower2 01:12:49,964 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActorBehavior - follower (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:12:49,965 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - follower2 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 01:12:49,965 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - follower2 (Follower): Cluster state: [] 01:12:49,965 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - follower2 (Follower): Candidate in requestVote:RequestVote{term=2, candidateId=follower, lastLogIndex=0, lastLogTerm=1} with higher term appears reachable, updating term. 01:12:49,965 AM [test-pekko.actor.default-dispatcher-8] [INFO] Follower - 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:12:49,967 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=2, votedFor=null 01:12:49,968 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - follower2 (Follower): In requestVote: RequestVote{term=2, candidateId=follower, lastLogIndex=0, lastLogTerm=1} - currentTerm: 2, votedFor: null, lastIndex: 0, lastTerm: 1 01:12:49,970 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=2, votedFor=follower 01:12:49,970 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - follower2 (Follower): requestVote returning: RequestVoteReply{term=2, voteGranted=true} 01:12:49,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Candidate - follower (Candidate): RaftRPC message received RequestVoteReply{term=2, voteGranted=true}, my term is 2 01:12:49,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Candidate - follower (Candidate): handleRequestVoteReply: RequestVoteReply{term=2, voteGranted=true}, current voteCount: 1 01:12:49,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - follower (Leader): Election: Leader has following peers: [leader, follower2] 01:12:49,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - follower (Leader): Checking sendAppendEntries for follower leader: active: false, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - follower (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:49,970 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActorBehavior - follower (Candidate) :- Switching from behavior Candidate to Leader, election term: 2 01:12:49,971 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader follower, need to catch up to -1 01:12:49,971 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - follower (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 01:12:49,971 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - follower (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 [WARN] [06/29/2025 01:12:49.971] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower2167] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=false] 01:12:49,971 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader follower and reached 0 (of expected -1) [WARN] [06/29/2025 01:12:49.971] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower2167] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=true] 01:12:49,971 AM [test-pekko.actor.default-dispatcher-8] [INFO] AbstractLeader - leader (Leader): Term 2 in "AppendEntries{term=2, leaderId=follower, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than leader's term 1 - switching to Follower 01:12:49,973 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=2, votedFor=null 01:12:49,974 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 2 01:12:50,489 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - leader: Last sync leader does not match current leader follower, need to catch up to -1 01:12:50,489 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - follower (Leader): handleAppendEntriesReply - FollowerLogInformation for leader updated: matchIndex: 0, nextIndex: 1 01:12:50,489 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorLeadershipTransferCohort - leader: leader changed to follower 01:12:50,489 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader follower and reached 0 (of expected -1) 01:12:50,489 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - follower (Leader): Checking sendAppendEntries for follower leader: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:50,489 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActorLeadershipTransferCohort - leader: Successfully transferred leadership to follower in 531.4 ms 01:12:50,489 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: leader transfer succeeded after change to non-voting 01:12:50,489 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - leader: Lagging 0 entries behind leader follower and reached 0 (of expected -1) [WARN] [06/29/2025 01:12:50.489] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/leader168] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=leader, initialSyncDone=false] [WARN] [06/29/2025 01:12:50.490] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/leader168] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=leader, initialSyncDone=true] 01:12:50,505 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeLeaderToNonVoting ending 01:12:50,505 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower165] 01:12:50,516 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader168] 01:12:50,517 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:50,517 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:50,517 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector169] 01:12:50,518 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector170#1723523390] 01:12:50,518 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower166] 01:12:50,518 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:50,518 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:50,518 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector171#-35012775] 01:12:50,519 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower2167] 01:12:50,519 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 01:12:50,519 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 01:12:50,522 AM [main] [INFO] RaftActorVotingConfigSupportTest - testOnApplyState starting [WARN] [06/29/2025 01:12:50.523] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader173]: org.opendaylight.controller.cluster.common.actor.Monitor@6a9626b0 01:12:50,524 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:50,524 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: started executor 01:12:50,525 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: started executor 01:12:50,525 AM [main] [INFO] RaftActorVotingConfigSupportTest - testOnApplyState ending 01:12:50,525 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower172] 01:12:50,526 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest9175686294630581825/leader/TermInfo.properties does not exist 01:12:50,526 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: no eligible files found 01:12:50,526 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - 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:12:50,527 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader173] 01:12:50,529 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=0, votedFor=null 01:12:50,529 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=0} 01:12:50,529 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@1555be8f 01:12:50,529 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:50,529 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:50,531 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServer starting [WARN] [06/29/2025 01:12:50.532] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader177]: org.opendaylight.controller.cluster.common.actor.Monitor@2a8fd99a 01:12:50,532 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:50,533 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:50,533 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: started executor 01:12:50,533 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: started executor 01:12:50,533 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/leader/TermInfo.properties does not exist 01:12:50,533 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: no eligible files found 01:12:50,533 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - 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:12:50,535 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 01:12:50,535 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower: started executor 01:12:50,536 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower: started executor [WARN] [06/29/2025 01:12:50.536] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower175]: org.opendaylight.controller.cluster.common.actor.Monitor@6329c9bf 01:12:50,536 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/follower/TermInfo.properties does not exist 01:12:50,537 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower: no eligible files found 01:12:50,537 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - 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] [06/29/2025 01:12:50.537] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower2176]: org.opendaylight.controller.cluster.common.actor.Monitor@4c9b386 01:12:50,537 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:50,537 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:50,537 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@72908412 01:12:50,537 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower2, follower, downNode] 01:12:50,537 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:12:50,537 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:12:50,538 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - follower2: Starting recovery with journal batch size 1000 01:12:50,538 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower downNode: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [06/29/2025 01:12:50.538] [test-pekko.actor.default-dispatcher-13] [pekko://test/] unhandled message from TestActor[pekko://test/user/leader177]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} 01:12:50,538 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower2: started executor 01:12:50,538 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower2: started executor 01:12:50,539 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 01:12:50,539 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - follower: Local TermInfo store seeded with TermInfo{term=0} 01:12:50,539 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - follower: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@42b4ea8f 01:12:50,539 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/follower2/TermInfo.properties does not exist 01:12:50,539 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower2: no eligible files found 01:12:50,539 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - 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:12:50,540 AM [test-pekko.actor.default-dispatcher-7] [INFO] Follower - follower (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:50,542 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=0, votedFor=null 01:12:50,542 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - follower2: Local TermInfo store seeded with TermInfo{term=0} 01:12:50,542 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - follower2: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@1485758c 01:12:50,542 AM [test-pekko.actor.default-dispatcher-5] [INFO] Follower - follower2 (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:50,542 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 01:12:50,542 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:12:50,542 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:12:50,543 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [06/29/2025 01:12:50.543] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower175] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] 01:12:50,544 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=1, votedFor=null 01:12:50,544 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader leader, need to catch up to -1 01:12:50,544 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: -1, nextIndex: 0 01:12:50,544 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [06/29/2025 01:12:50.545] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower2176] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=false] 01:12:50,552 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: onRemoveServer: RemoveServer{serverId='follower'}, state: Idle 01:12:50,552 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:12:50,553 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,553 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:50,553 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=11928fb9-20dc-449e-b4da-2d8ae4394f80}, logIndex: 0, isSendImmediate: true 01:12:50,553 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:50,553 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:50,553 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower2 01:12:50,553 AM [leader-%d305293] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/leader/snapshot-0000000068609312-20F912CA.tmp 01:12:50,553 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower2: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:50,553 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower downNode: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:50,553 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation RemoveServer{serverId='follower'} 01:12:50,553 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower2 (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:50,553 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower2 (Follower): Number of entries to be appended = 1 01:12:50,553 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower2 (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 [WARN] [06/29/2025 01:12:50.553] [test-pekko.actor.default-dispatcher-6] [pekko://test/] unhandled message from TestActor[pekko://test/user/leader177]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} 01:12:50,553 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower2 (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,553 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - follower2: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:50,553 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower2: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/follower2/snapshot-0000000068609312-21031FCC.tmp 01:12:50,555 AM [leader-%d305293] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/leader/snapshot-0000000068609312-20F912CA.v1 01:12:50,556 AM [leader-%d305293] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/leader/snapshot-0000000068609312-20F912CA.v1 01:12:50,556 AM [leader-%d305293] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/leader/TermInfo.properties 01:12:50,556 AM [leader-%d305293] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.553194186Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/leader/snapshot-0000000068609312-20F912CA.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,556 AM [leader-%d305293] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:50,556 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:50,556 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower2: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/follower2/snapshot-0000000068609312-21031FCC.v1 01:12:50,556 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,556 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower2: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/follower2/snapshot-0000000068609312-21031FCC.v1 01:12:50,556 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/follower2/TermInfo.properties 01:12:50,556 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower2: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.553852876Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3723816523008690547/follower2/snapshot-0000000068609312-21031FCC.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,557 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - follower2: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,557 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - follower2: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=pekko://test/user/leader177, votingState=VOTING], PeerInfo [id=downNode, address=, votingState=VOTING]] 01:12:50,557 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower2 (Follower): Log size is now 1 01:12:50,557 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - 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:12:50,557 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} [WARN] [06/29/2025 01:12:50.557] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower2176] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=true] 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} has been successfully replicated to a majority of followers 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower2 (Follower): Commit index set to 0 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - follower2 (Follower): Setting last applied to 0 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from -1 to 0 01:12:50,557 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower2: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} [WARN] [06/29/2025 01:12:50.558] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower175] unhandled message from TestActor[pekko://test/user/leader177]: ServerRemoved [serverId=follower] 01:12:50,605 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServer ending 01:12:50,605 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower174] 01:12:50,616 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader177] 01:12:50,616 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:50,617 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:50,617 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector178] 01:12:50,617 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector179#1505085297] 01:12:50,618 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower175] 01:12:50,618 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:50,618 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:50,618 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector180#320506443] 01:12:50,619 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower2176] 01:12:50,619 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 01:12:50,619 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 01:12:50,622 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoLeader starting [WARN] [06/29/2025 01:12:50.626] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server183]: org.opendaylight.controller.cluster.common.actor.Monitor@6b44706 01:12:50,628 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:50,628 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: started executor 01:12:50,628 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: started executor 01:12:50,629 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3880397175427606904/new-server/TermInfo.properties does not exist 01:12:50,629 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:50,630 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - 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:12:50,633 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:50,633 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:50,633 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@20c850e2 01:12:50,633 AM [test-pekko.actor.default-dispatcher-7] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:50.634] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader184]: org.opendaylight.controller.cluster.common.actor.Monitor@41be006 01:12:50,634 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:50,635 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 01:12:50,635 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 01:12:50,636 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest3880397175427606904/leader/TermInfo.properties does not exist 01:12:50,636 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: no eligible files found 01:12:50,636 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - 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:12:50,638 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=0, votedFor=null 01:12:50,638 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=0} 01:12:50,638 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@678ec13f 01:12:50,639 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server183, votingMember=true], state: Idle 01:12:50,640 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: No leader - returning NO_LEADER reply 01:12:50,640 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoLeader ending 01:12:50,640 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower181] 01:12:50,640 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector182#416064462] 01:12:50,640 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server183] 01:12:50,641 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:50,641 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:50,641 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader184] 01:12:50,641 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:50,641 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:50,642 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeServersVotingStatus starting [WARN] [06/29/2025 01:12:50.643] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader188]: org.opendaylight.controller.cluster.common.actor.Monitor@6cd61c4f 01:12:50,644 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:50,644 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:50,644 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: started executor 01:12:50,644 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: started executor 01:12:50,645 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/TermInfo.properties does not exist 01:12:50,645 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: no eligible files found 01:12:50,645 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - 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:12:50,648 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:50,648 AM [test-pekko.actor.default-dispatcher-7] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:50,648 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@df736b8 01:12:50,648 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower2, follower] 01:12:50,648 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:12:50,648 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [06/29/2025 01:12:50.648] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower2187] received dead letter from TestActor[pekko://test/user/leader188]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [WARN] [06/29/2025 01:12:50.648] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower186] received dead letter from TestActor[pekko://test/user/leader188]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [WARN] [06/29/2025 01:12:50.747] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower186]: org.opendaylight.controller.cluster.common.actor.Monitor@2c844884 01:12:50,748 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 01:12:50,748 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower: started executor 01:12:50,748 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - follower: started executor 01:12:50,749 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/TermInfo.properties does not exist 01:12:50,750 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: no eligible files found 01:12:50,750 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - 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] [06/29/2025 01:12:50.750] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower2187]: org.opendaylight.controller.cluster.common.actor.Monitor@2ef40d05 01:12:50,751 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - follower2: Starting recovery with journal batch size 1000 01:12:50,751 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower2: started executor 01:12:50,752 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - follower2: started executor 01:12:50,752 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 01:12:50,752 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - follower: Local TermInfo store seeded with TermInfo{term=0} 01:12:50,752 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@5bd25da4 01:12:50,753 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/TermInfo.properties does not exist 01:12:50,753 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower2: no eligible files found 01:12:50,753 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - 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:12:50,756 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=0, votedFor=null 01:12:50,756 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - follower2: Local TermInfo store seeded with TermInfo{term=0} 01:12:50,756 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower2: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@4d35ea7b 01:12:50,762 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={follower2=false, follower=false}, serversVisited=[]], state: Idle 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PeerInfos - leader: Updated server config: isVoting: true, peers: [PeerInfo [id=follower2, address=pekko://test/user/follower2187, votingState=NON_VOTING], PeerInfo [id=follower, address=pekko://test/user/follower186, votingState=NON_VOTING]] 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=391ffcb9-598b-425b-a10d-3e6fedfd7161}, logIndex: 0, isSendImmediate: true 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 01:12:50,763 AM [leader-%d446262] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/snapshot-0000000068609312-2D80A1D8.tmp 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:50,763 AM [test-pekko.actor.default-dispatcher-13] [INFO] Follower - follower2 (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:50,763 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={follower2=false, follower=false}, serversVisited=[]] 01:12:50,764 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[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:12:50,764 AM [test-pekko.actor.default-dispatcher-6] [INFO] Follower - follower (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:50,766 AM [leader-%d446262] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/snapshot-0000000068609312-2D80A1D8.v1 01:12:50,766 AM [leader-%d446262] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/snapshot-0000000068609312-2D80A1D8.v1 01:12:50,766 AM [leader-%d446262] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/TermInfo.properties 01:12:50,766 AM [leader-%d446262] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.763404760Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/snapshot-0000000068609312-2D80A1D8.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,766 AM [leader-%d446262] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:50,766 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:50,766 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,767 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=1, votedFor=null 01:12:50,767 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 01:12:50,767 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:12:50,767 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader leader, need to catch up to -1 01:12:50,767 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:12:50,767 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:50,767 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower [WARN] [06/29/2025 01:12:50.767] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/follower2187] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=false] 01:12:50,767 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:50,767 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: -1, nextIndex: 0 01:12:50,767 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:50,767 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower2 01:12:50,767 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower2: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:50,768 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower2 (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:50,768 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower2 (Follower): Number of entries to be appended = 1 01:12:50,768 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower2 (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:12:50,768 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}]} 01:12:50,768 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower2 (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,768 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 01:12:50,768 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - follower2: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,768 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:12:50,768 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,768 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/snapshot-0000000068609312-2DCAA664.tmp 01:12:50,768 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - follower: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,768 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/snapshot-0000000068609312-2DCBF4C5.tmp [WARN] [06/29/2025 01:12:50.768] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower186] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/snapshot-0000000068609312-2DCAA664.v1 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/snapshot-0000000068609312-2DCAA664.v1 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/TermInfo.properties 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.768255588Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/snapshot-0000000068609312-2DCAA664.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - follower2: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PeerInfos - follower2: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=pekko://test/user/leader188, votingState=VOTING], PeerInfo [id=follower, address=pekko://test/user/follower186, votingState=NON_VOTING]] 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower2 (Follower): Log size is now 1 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower2 (Follower): Commit index set to 0 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - 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:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - follower2 (Follower): Setting last applied to 0 01:12:50,770 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from -1 to 0 01:12:50,771 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - follower2: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,771 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 [WARN] [06/29/2025 01:12:50.771] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower2187] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=true] 01:12:50,771 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/snapshot-0000000068609312-2DCBF4C5.v1 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/snapshot-0000000068609312-2DCBF4C5.v1 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/TermInfo.properties 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.768341189Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/snapshot-0000000068609312-2DCBF4C5.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - follower: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PeerInfos - follower: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=pekko://test/user/leader188, votingState=VOTING], PeerInfo [id=follower2, address=pekko://test/user/follower2187, votingState=NON_VOTING]] 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower (Follower): Log size is now 1 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower (Follower): Commit index set to 0 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - 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:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to 0 01:12:50,771 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - follower: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,771 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 [WARN] [06/29/2025 01:12:50.771] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower186] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=true] 01:12:50,771 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:50,815 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={follower=true}, serversVisited=[]], state: Idle 01:12:50,815 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:50,815 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PeerInfos - leader: Updated server config: isVoting: true, peers: [PeerInfo [id=follower2, address=pekko://test/user/follower2187, votingState=NON_VOTING], PeerInfo [id=follower, address=pekko://test/user/follower186, votingState=VOTING]] 01:12:50,815 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:12:50,815 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Persist data index=1 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,815 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=abb767f6-033d-484c-94b3-4a9a9ac7eb46}, logIndex: 1, isSendImmediate: true 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from 0 to 1 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,816 AM [leader-%d446263] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/snapshot-0000000068609312-30A307D4.tmp 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower2 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower2: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={follower=true}, serversVisited=[]] 01:12:50,816 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:50,816 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 01:12:50,816 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:12:50,816 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,816 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[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:12:50,816 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - follower: Append log entry and persist JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:50,817 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/snapshot-0000000068609312-30B22B0C.tmp 01:12:50,817 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - follower2 (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:50,817 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - follower2 (Follower): Number of entries to be appended = 1 01:12:50,817 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - follower2 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:12:50,817 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - follower2 (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,817 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] ReplicatedLogImpl - follower2: Append log entry and persist JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:50,817 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower2: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/snapshot-0000000068609312-30B63354.tmp 01:12:50,820 AM [leader-%d446263] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/snapshot-0000000068609312-30A307D4.v1 01:12:50,820 AM [leader-%d446263] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/snapshot-0000000068609312-30A307D4.v1 01:12:50,820 AM [leader-%d446263] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/snapshot-0000000068609312-2D80A1D8.v1 01:12:50,821 AM [leader-%d446263] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/TermInfo.properties 01:12:50,821 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/snapshot-0000000068609312-30B22B0C.v1 01:12:50,821 AM [leader-%d446263] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.763404760Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/snapshot-0000000068609312-2D80A1D8.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,821 AM [leader-%d446263] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.815990740Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/leader/snapshot-0000000068609312-30A307D4.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,821 AM [leader-%d446263] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:50,821 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/snapshot-0000000068609312-2DCBF4C5.v1 01:12:50,821 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:50,821 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/snapshot-0000000068609312-30B22B0C.v1 01:12:50,821 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,821 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/TermInfo.properties 01:12:50,821 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:12:50,821 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.768341189Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/snapshot-0000000068609312-2DCBF4C5.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,821 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower2: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/snapshot-0000000068609312-30B63354.v1 01:12:50,821 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.816982796Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower/snapshot-0000000068609312-30B22B0C.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,821 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - follower: persist complete JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - follower: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=pekko://test/user/leader188, votingState=VOTING], PeerInfo [id=follower2, address=pekko://test/user/follower2187, votingState=NON_VOTING]] 01:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Log size is now 2 01:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Commit index set to 1 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower2: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/snapshot-0000000068609312-30B63354.v1 01:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - 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:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 01:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 01:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 01:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from 0 to 1 01:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower2: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/snapshot-0000000068609312-2DCAA664.v1 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/TermInfo.properties 01:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:12:50,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower2: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.768255588Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/snapshot-0000000068609312-2DCAA664.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower2: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.817247060Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest1289963985662094508/follower2/snapshot-0000000068609312-30B63354.v1, size=96, entryCompress=NONE, stateCompress=NONE} 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] ReplicatedLogImpl - follower2: persist complete JournaledLogEntry{index=1, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PeerInfos - follower2: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=pekko://test/user/leader188, votingState=VOTING], PeerInfo [id=follower, address=pekko://test/user/follower186, votingState=VOTING]] 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - follower2 (Follower): Log size is now 2 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - follower2 (Follower): Commit index set to 1 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - 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:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorBehavior - follower2 (Follower): Setting last applied to 1 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from 0 to 1 01:12:50,822 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActor - follower2: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,822 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 1, nextIndex: 2 01:12:50,822 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:12:50,867 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeServersVotingStatus ending 01:12:50,868 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower185] 01:12:50,879 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader188] 01:12:50,879 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:50,879 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:50,879 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector189] 01:12:50,880 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector190#824022161] 01:12:50,880 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower186] 01:12:50,880 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:50,880 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:50,880 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector191#-1884867709] 01:12:50,881 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower2187] 01:12:50,881 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 01:12:50,881 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 01:12:50,885 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithExistingFollower starting [WARN] [06/29/2025 01:12:50.886] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server194]: org.opendaylight.controller.cluster.common.actor.Monitor@7c8abe40 01:12:50,887 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:50,888 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: started executor 01:12:50,888 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: started executor 01:12:50,889 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/TermInfo.properties does not exist 01:12:50,889 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:50,889 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - 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:12:50,892 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:50,892 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:50,892 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@748323d0 01:12:50,892 AM [main] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to 2 01:12:50,893 AM [test-pekko.actor.default-dispatcher-13] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:50.893] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader195]: org.opendaylight.controller.cluster.common.actor.Monitor@7a5de7a3 01:12:50,894 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor=leader 01:12:50,894 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:50,894 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 01:12:50,894 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 01:12:50,896 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/TermInfo.properties does not exist 01:12:50,896 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: no eligible files found 01:12:50,896 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - 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:12:50,898 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor=leader 01:12:50,898 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=leader} 01:12:50,898 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@16fb3a91 01:12:50,898 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:12:50,898 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: -1 01:12:50,898 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:12:50,899 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 01:12:50,899 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 01:12:50,899 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 01:12:50,899 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 01:12:50,899 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 1 for term 1 01:12:50,957 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server194, votingMember=true], state: Idle 01:12:50,957 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server194, votingMember=true] 01:12:50,957 AM [test-pekko.actor.default-dispatcher-6] [INFO] SnapshotManager - 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:12:50,957 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SnapshotManager - leader: lastSequenceNumber prior to capture: -1 01:12:50,957 AM [test-pekko.actor.default-dispatcher-6] [INFO] MockRaftActor - leader: support() called 01:12:50,958 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 01:12:50,958 AM [leader-%d903619] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:50,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:50,959 AM [test-pekko.actor.default-dispatcher-6] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=2, term=1]/EntryInfo[index=2, term=1] 01:12:50,959 AM [test-pekko.actor.default-dispatcher-6] [INFO] MockRaftActor - leader: support() called 01:12:50,959 AM [test-pekko.actor.default-dispatcher-6] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: 1 and term: 1 01:12:50,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:12:50,959 AM [leader-%d903620] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-392FD3C7.tmp 01:12:50,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 01:12:50,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 01:12:50,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 01:12:50,959 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server194), Chunk: 1/1 01:12:50,960 AM [test-pekko.actor.default-dispatcher-6] [INFO] Follower - new-server (Follower): Term 1 in "InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=2, lastIncludedTerm=1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]}" message is greater than follower's term 0 - updating term 01:12:50,962 AM [leader-%d903620] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-392FD3C7.v1 01:12:50,962 AM [leader-%d903620] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-392FD3C7.v1 01:12:50,963 AM [leader-%d903620] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/TermInfo.properties 01:12:50,963 AM [leader-%d903620] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.959435719Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-392FD3C7.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:50,963 AM [leader-%d903620] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:50,963 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:50,963 AM [test-pekko.actor.default-dispatcher-17] [INFO] SnapshotManager - leader: snapshot is durable as of 2025-06-29T01:12:50.959435719Z 01:12:50,963 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SnapshotManager - leader: Snapshot success - sequence number: -1 01:12:50,963 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 01:12:50,963 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot: InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=2, lastIncludedTerm=1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]} 01:12:50,963 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to 2 01:12:50,963 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 01:12:50,963 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 01:12:50,963 AM [test-pekko.actor.default-dispatcher-6] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 01:12:50,963 AM [test-pekko.actor.default-dispatcher-6] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 01:12:50,964 AM [test-pekko.actor.default-dispatcher-6] [INFO] MockRaftActor - new-server: support() called [WARN] [06/29/2025 01:12:50.964] [test-pekko.actor.default-dispatcher-17] [pekko://test/user/new-server194] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 01:12:50,964 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 01:12:50,964 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SnapshotManager - new-server: lastSequenceNumber prior to persisting applied snapshot: -1 01:12:50,964 AM [test-pekko.actor.default-dispatcher-6] [INFO] MockRaftActor - new-server: support() called 01:12:50,965 AM [new-server-%d59826] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-3982FE78.tmp 01:12:50,968 AM [new-server-%d59826] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-3982FE78.v1 01:12:50,968 AM [new-server-%d59826] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-3982FE78.v1 01:12:50,968 AM [new-server-%d59826] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/TermInfo.properties 01:12:50,969 AM [new-server-%d59826] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.964886136Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-3982FE78.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:50,969 AM [new-server-%d59826] [DEBUG] EntryStoreCompleter - new-server: 1 completion(s) pending 01:12:50,969 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] EntryStoreCompleter - new-server: running 1 completion(s) 01:12:50,969 AM [test-pekko.actor.default-dispatcher-17] [INFO] SnapshotManager - new-server: snapshot is durable as of 2025-06-29T01:12:50.964886136Z 01:12:50,969 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SnapshotManager - new-server: Snapshot success - sequence number: -1 01:12:50,969 AM [test-pekko.actor.default-dispatcher-17] [INFO] MockRaftActor - new-server: support() called 01:12:50,969 AM [test-pekko.actor.default-dispatcher-17] [INFO] MockRaftActor - new-server: applySnapshot called 01:12:50,970 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 01:12:50,970 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to 2, nextIndex set to 3 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Persist data index=3 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=3, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=58d0d3f2-9e60-4e23-bafe-1d301a6b6ded}, logIndex: 3, isSendImmediate: true 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:50,970 AM [leader-%d903621] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-39D914DE.tmp 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: 1 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 3 is present for follower follower 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=2, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=3, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: 1 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 3 is present for follower new-server 01:12:50,970 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower new-server: AppendEntries{term=1, leaderId=leader, prevLogIndex=2, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=3, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:50,970 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=2, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=3, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:50,971 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 01:12:50,971 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server194, votingMember=true] 01:12:50,971 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 2, entries to be added from: 0 01:12:50,971 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,971 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - new-server (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=2, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[JournaledLogEntry{index=3, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true}]} 01:12:50,971 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - follower: Append log entry and persist JournaledLogEntry{index=3, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:50,971 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 01:12:50,971 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: 2, entries to be added from: 0 01:12:50,971 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - new-server (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,971 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - follower: persist complete JournaledLogEntry{index=3, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,971 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] ReplicatedLogImpl - new-server: Append log entry and persist JournaledLogEntry{index=3, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 01:12:50,971 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - follower: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=, votingState=VOTING], PeerInfo [id=new-server, address=null, votingState=VOTING]] 01:12:50,971 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-39E3CCAA.tmp 01:12:50,971 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Log size is now 2 01:12:50,971 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - 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:12:50,971 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 01:12:50,971 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 3, nextIndex: 4 01:12:50,971 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 1 01:12:50,973 AM [leader-%d903621] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-39D914DE.v1 01:12:50,973 AM [leader-%d903621] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-392FD3C7.v1 01:12:50,973 AM [leader-%d903621] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/TermInfo.properties 01:12:50,973 AM [leader-%d903621] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-39D914DE.v1 01:12:50,973 AM [leader-%d903621] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.959435719Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-392FD3C7.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:50,973 AM [leader-%d903621] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.970527966Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-39D914DE.v1, size=97, entryCompress=NONE, stateCompress=NONE} 01:12:50,973 AM [leader-%d903621] [DEBUG] EntryStoreCompleter - leader: 1 completion(s) pending 01:12:50,974 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] EntryStoreCompleter - leader: running 1 completion(s) 01:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-39E3CCAA.v1 01:12:50,974 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=3, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-3982FE78.v1 01:12:50,974 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 3, lastAppliedIndex: 2 01:12:50,974 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 3 01:12:50,974 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from 2 to 3 01:12:50,974 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - leader: Applying state for log index 3 data VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-39E3CCAA.v1 01:12:50,974 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 2 for term 1 01:12:50,974 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[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:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/TermInfo.properties 01:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.964886136Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-3982FE78.v1, size=64, entryCompress=NONE, stateCompress=NONE} 01:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.971230378Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-39E3CCAA.v1, size=97, entryCompress=NONE, stateCompress=NONE} 01:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] ReplicatedLogImpl - new-server: persist complete JournaledLogEntry{index=3, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 01:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PeerInfos - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING], PeerInfo [id=follower, address=null, votingState=VOTING]] 01:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - new-server (Follower): Log size is now 1 01:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - 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:12:50,974 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 2 (of expected 2) 01:12:50,974 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 3, nextIndex: 4 [WARN] [06/29/2025 01:12:50.974] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/new-server194] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=true] 01:12:50,975 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 2 01:12:50,975 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Commit index set to 3 01:12:50,975 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 3 (of expected 2) 01:12:50,975 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): 2, lastIndex(): 3 01:12:50,975 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 3 01:12:50,975 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from 2 to 3 01:12:50,975 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - new-server: Applying state for log index 3 data VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 01:12:51,138 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - follower (Follower): Commit index set to 3 01:12:51,138 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 3 (of expected 2) 01:12:51,138 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 3 (of expected -1) 01:12:51,139 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): 2, lastIndex(): 3 01:12:51,139 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 3 01:12:51,139 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from 2 to 3 01:12:51,139 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 2 for term 1 01:12:51,159 AM [main] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/TermInfo.properties 01:12:51,159 AM [main] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-39D914DE.v1 01:12:51,159 AM [main] [DEBUG] RaftStorage - leader: picked SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.970527966Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/leader/snapshot-0000000068609312-39D914DE.v1, size=97, entryCompress=NONE, stateCompress=NONE} as the latest file 01:12:51,159 AM [main] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-39E3CCAA.v1 01:12:51,160 AM [main] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/TermInfo.properties 01:12:51,160 AM [main] [DEBUG] RaftStorage - new-server: picked SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2025-06-29T01:12:50.971230378Z, file=/tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2958009418634865073/new-server/snapshot-0000000068609312-39E3CCAA.v1, size=97, entryCompress=NONE, stateCompress=NONE} as the latest file 01:12:51,160 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithExistingFollower ending 01:12:51,160 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower192] 01:12:51,171 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector193#-171576244] 01:12:51,171 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server194] 01:12:51,171 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:51,171 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:51,172 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader195] 01:12:51,172 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:51,172 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:51,173 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector196] 01:12:51,176 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerForwardedToLeader starting [WARN] [06/29/2025 01:12:51.177] [test-pekko.actor.default-dispatcher-17] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server199]: org.opendaylight.controller.cluster.common.actor.Monitor@3b4d6171 01:12:51,178 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:51,178 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: started executor 01:12:51,178 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - new-server: started executor 01:12:51,180 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest4999488893047647219/new-server/TermInfo.properties does not exist 01:12:51,180 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:51,180 AM [test-pekko.actor.default-dispatcher-17] [INFO] PekkoRecovery - 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:12:51,184 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:51,184 AM [test-pekko.actor.default-dispatcher-17] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:51,184 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@12a85130 01:12:51,184 AM [test-pekko.actor.default-dispatcher-17] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:51.185] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower201]: org.opendaylight.controller.cluster.common.actor.Monitor@7d1c0192 01:12:51,186 AM [test-pekko.actor.default-dispatcher-17] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 01:12:51,186 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower: started executor 01:12:51,186 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower: started executor 01:12:51,189 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest4999488893047647219/follower/TermInfo.properties does not exist 01:12:51,189 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - follower: no eligible files found 01:12:51,189 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - 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:12:51,192 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 01:12:51,192 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - follower: Local TermInfo store seeded with TermInfo{term=0} 01:12:51,192 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - follower: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@40548313 01:12:51,192 AM [test-pekko.actor.default-dispatcher-6] [INFO] Follower - follower (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:51,195 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 01:12:51,195 AM [test-pekko.actor.default-dispatcher-6] [INFO] Follower - follower (Follower): The followers log is empty and the senders prevLogIndex is 0 01:12:51,195 AM [test-pekko.actor.default-dispatcher-6] [INFO] Follower - 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:12:51,195 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 [WARN] [06/29/2025 01:12:51.195] [test-pekko.actor.default-dispatcher-17] [pekko://test/user/follower201] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] 01:12:51,202 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - follower: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server199, votingMember=true], state: Idle 01:12:51,203 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActor - follower: getLeaderAddress leaderId = leader peerAddress = pekko://test/user/leader200 01:12:51,203 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - follower: Not leader - forwarding to leader ActorSelection[Anchor(pekko://test/), Path(/user/leader200)] 01:12:51,253 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerForwardedToLeader ending 01:12:51,253 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower197] 01:12:51,264 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector198#906592625] 01:12:51,264 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server199] 01:12:51,265 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:51,265 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:51,265 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/leader200#1176348502] 01:12:51,265 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower201] 01:12:51,265 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:51,265 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:51,268 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerForwardToLeader starting [WARN] [06/29/2025 01:12:51.270] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower204]: org.opendaylight.controller.cluster.common.actor.Monitor@907c5c9 01:12:51,271 AM [test-pekko.actor.default-dispatcher-17] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 01:12:51,271 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower: started executor 01:12:51,271 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower: started executor 01:12:51,273 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest6508247109065559132/follower/TermInfo.properties does not exist 01:12:51,273 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower: no eligible files found 01:12:51,273 AM [test-pekko.actor.default-dispatcher-17] [INFO] PekkoRecovery - 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:12:51,275 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 01:12:51,275 AM [test-pekko.actor.default-dispatcher-17] [INFO] PekkoRecovery - follower: Local TermInfo store seeded with TermInfo{term=0} 01:12:51,275 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActor - follower: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@26caadd9 01:12:51,276 AM [test-pekko.actor.default-dispatcher-17] [INFO] Follower - follower (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:51,278 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 01:12:51,278 AM [test-pekko.actor.default-dispatcher-17] [INFO] Follower - follower (Follower): The followers log is empty and the senders prevLogIndex is 0 01:12:51,278 AM [test-pekko.actor.default-dispatcher-17] [INFO] Follower - 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:12:51,278 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 [WARN] [06/29/2025 01:12:51.278] [test-pekko.actor.default-dispatcher-17] [pekko://test/user/follower204] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] 01:12:51,286 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - follower: onRemoveServer: RemoveServer{serverId='follower'}, state: Idle 01:12:51,286 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActor - follower: getLeaderAddress leaderId = leader peerAddress = pekko://test/user/leader203 01:12:51,286 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - follower: Not leader - forwarding to leader ActorSelection[Anchor(pekko://test/), Path(/user/leader203)] 01:12:51,336 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerForwardToLeader ending 01:12:51,336 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower202] 01:12:51,348 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader203] 01:12:51,348 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower204] 01:12:51,348 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:51,348 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 01:12:51,351 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithExistingServer starting [WARN] [06/29/2025 01:12:51.352] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader206]: org.opendaylight.controller.cluster.common.actor.Monitor@7e866e9c 01:12:51,352 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:51,353 AM [test-pekko.actor.default-dispatcher-17] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:51,353 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - leader: started executor 01:12:51,353 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - leader: started executor 01:12:51,355 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest9790004281102202882/leader/TermInfo.properties does not exist 01:12:51,355 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - leader: no eligible files found 01:12:51,355 AM [test-pekko.actor.default-dispatcher-17] [INFO] PekkoRecovery - 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:12:51,357 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:51,357 AM [test-pekko.actor.default-dispatcher-17] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:51,357 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@484cb89a 01:12:51,358 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:12:51,358 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:12:51,364 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=follower, newServerAddress=pekko://test/user/follower205, votingMember=true], state: Idle 01:12:51,364 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=follower, newServerAddress=pekko://test/user/follower205, votingMember=true] 01:12:51,364 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Returning ALREADY_EXISTS for operation AddServer [newServerId=follower, newServerAddress=pekko://test/user/follower205, votingMember=true] 01:12:51,364 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithExistingServer ending 01:12:51,364 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower205] 01:12:51,375 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader206] 01:12:51,375 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:51,375 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:51,378 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndElectionTimeout starting [WARN] [06/29/2025 01:12:51.380] [test-pekko.actor.default-dispatcher-17] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@7bb66add 01:12:51,381 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActor - node1: Starting recovery with journal batch size 1000 01:12:51,381 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - node1: started executor 01:12:51,381 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - node1: started executor 01:12:51,383 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2035551129323228254/node1/TermInfo.properties does not exist 01:12:51,383 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - node1: no eligible files found 01:12:51,383 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 01:12:51,383 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PekkoRecovery - node1: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:12:51,383 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 01:12:51,383 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - 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] [06/29/2025 01:12:51.384] [test-pekko.actor.default-dispatcher-17] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node2]: org.opendaylight.controller.cluster.common.actor.Monitor@4583e385 01:12:51,385 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActor - node2: Starting recovery with journal batch size 1000 01:12:51,385 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - node2: started executor 01:12:51,385 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - node2: started executor 01:12:51,386 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest2035551129323228254/node2/TermInfo.properties does not exist 01:12:51,386 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - node2: no eligible files found 01:12:51,386 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 01:12:51,387 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PekkoRecovery - node2: Received ReplicatedLogEntry for recovery: index: 0, size: 133 01:12:51,387 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PeerInfos - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=null, votingState=NON_VOTING]] 01:12:51,387 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - 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:12:51,401 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 01:12:51,401 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - node1: Local TermInfo store seeded with TermInfo{term=1, votedFor=node1} 01:12:51,401 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - node1: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@13300826 01:12:51,401 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true}, serversVisited=[]], state: Idle 01:12:51,402 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:51,402 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - node1: Sending local ElectionTimeout to start leader election 01:12:51,402 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 01:12:51,402 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:51,402 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - node1 (Follower): Received TimeoutNow - switching to Candidate 01:12:51,402 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Candidate - node1 (Candidate): Election: Candidate has following voting peers: [node2] 01:12:51,402 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 01:12:51,402 AM [test-pekko.actor.default-dispatcher-6] [INFO] PekkoRecovery - node2: Local TermInfo store seeded with TermInfo{term=1, votedFor=node1} 01:12:51,402 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - node2: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@72b3759d 01:12:51,404 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=2, votedFor=node1 01:12:51,404 AM [test-pekko.actor.default-dispatcher-13] [INFO] Candidate - node1 (Candidate): Starting new election term 2 01:12:51,404 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Candidate - node1 (Candidate): Sending RequestVote{term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1} to peer node2 01:12:51,404 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActorBehavior - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:12:51,518 AM [test-pekko.actor.default-dispatcher-6] [WARN] RaftActorVotingConfigSupport - node1: Leader election timed out - cannot apply operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true}, serversVisited=[]] 01:12:51,518 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PeerInfos - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=pekko://test/user/node2, votingState=VOTING]] 01:12:51,518 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - node1: tryToForwardOperationToAnotherServer - servers already visited [] 01:12:51,518 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - node1: Returning NO_LEADER for operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true}, serversVisited=[]] 01:12:51,519 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndElectionTimeout ending 01:12:51,519 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower207] 01:12:51,530 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector208#20819475] 01:12:51,531 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node1] 01:12:51,531 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 01:12:51,531 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 01:12:51,531 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector209#-927339734] 01:12:51,531 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node2] 01:12:51,532 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 01:12:51,532 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 01:12:51,535 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeader starting [WARN] [06/29/2025 01:12:51.536] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@3ad85af0 01:12:51,537 AM [test-pekko.actor.default-dispatcher-17] [INFO] RaftActor - node1: Starting recovery with journal batch size 1000 01:12:51,537 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node1: started executor 01:12:51,538 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node1: started executor [WARN] [06/29/2025 01:12:51.539] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node2]: org.opendaylight.controller.cluster.common.actor.Monitor@22a4bc58 01:12:51,540 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest12746507042997727839/node1/TermInfo.properties does not exist 01:12:51,540 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: no eligible files found 01:12:51,540 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=downNode1 01:12:51,540 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PekkoRecovery - node1: Received ReplicatedLogEntry for recovery: index: 0, size: 163 01:12:51,540 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - 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:12:51,540 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PekkoRecovery - node1: Received apply journal entries for recovery, applying to state: 0 to 0 01:12:51,540 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to 0 01:12:51,540 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - node1: Recovery completed in 57.54 μs - Switching actor to Follower - last log index = 0, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 1 01:12:51,541 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActor - node2: Starting recovery with journal batch size 1000 01:12:51,541 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - node2: started executor 01:12:51,541 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - node2: started executor 01:12:51,543 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest12746507042997727839/node2/TermInfo.properties does not exist 01:12:51,543 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node2: no eligible files found 01:12:51,543 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=downNode2 01:12:51,543 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=downNode1 01:12:51,543 AM [test-pekko.actor.default-dispatcher-5] [INFO] PekkoRecovery - node1: Local TermInfo store seeded with TermInfo{term=1, votedFor=downNode1} 01:12:51,543 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node1: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@2c169988 01:12:51,544 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PekkoRecovery - node2: Received ReplicatedLogEntry for recovery: index: 0, size: 163 01:12:51,544 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PeerInfos - 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:12:51,544 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PekkoRecovery - node2: Received apply journal entries for recovery, applying to state: 0 to 0 01:12:51,544 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to 0 01:12:51,544 AM [test-pekko.actor.default-dispatcher-17] [INFO] PekkoRecovery - node2: Recovery completed in 47.76 μs - Switching actor to Follower - last log index = 0, last log term = 1, snapshot index = -1, snapshot term = -1, journal size = 1 01:12:51,546 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=downNode2 01:12:51,546 AM [test-pekko.actor.default-dispatcher-17] [INFO] PekkoRecovery - node2: Local TermInfo store seeded with TermInfo{term=1, votedFor=downNode2} 01:12:51,546 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActor - node2: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@5e2e75bc 01:12:51,557 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]], state: Idle 01:12:51,557 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:51,557 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - node1: Sending local ElectionTimeout to start leader election 01:12:51,557 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PeerInfos - 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:12:51,557 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:12:51,557 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - node1 (Follower): Received TimeoutNow - switching to Candidate 01:12:51,557 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Candidate - node1 (Candidate): Election: Candidate has following voting peers: [node2] 01:12:51,559 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=2, votedFor=node1 01:12:51,559 AM [test-pekko.actor.default-dispatcher-6] [INFO] Candidate - node1 (Candidate): Starting new election term 2 01:12:51,560 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActorBehavior - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 01:12:52,68 AM [test-pekko.actor.default-dispatcher-6] [WARN] RaftActorVotingConfigSupport - node1: Leader election timed out - cannot apply operation ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]] 01:12:52,68 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PeerInfos - 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:12:52,68 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - node1: tryToForwardOperationToAnotherServer - servers already visited [] 01:12:52,68 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - node1: Returning NO_LEADER for operation ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]] 01:12:52,69 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - node1: Last sync leader does not match current leader downNode1, need to catch up to 0 [WARN] [06/29/2025 01:12:52.070] [test-pekko.actor.default-dispatcher-6] [pekko://test/deadLetters] received dead letter from TestActor[pekko://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] [06/29/2025 01:12:52.070] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/node1] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node1, initialSyncDone=false] 01:12:52,626 AM [main] [INFO] PeerInfos - node1: Peer address for peer node2 set to pekko://test/user/node2 01:12:52,626 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]], state: Idle 01:12:52,626 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 01:12:52,626 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - node1: Sending local ElectionTimeout to start leader election 01:12:52,626 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=pekko://test/user/node2, votingState=VOTING], PeerInfo [id=downNode2, address=null, votingState=NON_VOTING], PeerInfo [id=downNode1, address=null, votingState=NON_VOTING]] 01:12:52,627 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Follower - node1 (Follower): Received TimeoutNow - switching to Candidate 01:12:52,627 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Candidate - node1 (Candidate): Election: Candidate has following voting peers: [node2] 01:12:52,651 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=3, votedFor=node1 01:12:52,651 AM [test-pekko.actor.default-dispatcher-17] [INFO] Candidate - node1 (Candidate): Starting new election term 3 01:12:52,651 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] Candidate - node1 (Candidate): Sending RequestVote{term=3, candidateId=node1, lastLogIndex=0, lastLogTerm=1} to peer node2 01:12:52,652 AM [test-pekko.actor.default-dispatcher-17] [INFO] RaftActorBehavior - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 3 01:12:52,652 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - node2 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 01:12:52,652 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - node2 (Follower): Cluster state: [] 01:12:52,652 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - node2 (Follower): Candidate in requestVote:RequestVote{term=3, candidateId=node1, lastLogIndex=0, lastLogTerm=1} with higher term appears reachable, updating term. 01:12:52,652 AM [test-pekko.actor.default-dispatcher-6] [INFO] Follower - 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:12:52,655 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=3, votedFor=null 01:12:52,655 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - node2 (Follower): In requestVote: RequestVote{term=3, candidateId=node1, lastLogIndex=0, lastLogTerm=1} - currentTerm: 3, votedFor: null, lastIndex: 0, lastTerm: 1 01:12:52,657 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=3, votedFor=node1 01:12:52,657 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - node2 (Follower): requestVote returning: RequestVoteReply{term=3, voteGranted=true} 01:12:52,657 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Candidate - node1 (Candidate): RaftRPC message received RequestVoteReply{term=3, voteGranted=true}, my term is 3 01:12:52,657 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Candidate - node1 (Candidate): handleRequestVoteReply: RequestVoteReply{term=3, voteGranted=true}, current voteCount: 1 01:12:52,657 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - node1 (Leader): Election: Leader has following peers: [node2, downNode2, downNode1] 01:12:52,658 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - node1 (Leader): Checking sendAppendEntries for follower node2: active: false, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:12:52,658 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActorBehavior - node1 (Candidate) :- Switching from behavior Candidate to Leader, election term: 3 01:12:52,658 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - node1: New leader node1 elected 01:12:52,658 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - node2: Last sync leader does not match current leader node1, need to catch up to -1 01:12:52,658 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - node1: New server configuration : [ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]] 01:12:52,658 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActor - node1: Persist data index=1 term=3 command=VotingConfig{serverInfo=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]} 01:12:52,658 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] ReplicatedLogImpl - node1: Append log entry and persist JournaledLogEntry{index=1, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]}, pending=true} 01:12:52,658 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - node1 (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=9febeb1f-ba71-4ed6-8fa7-1449e30de4df}, logIndex: 1, isSendImmediate: true [WARN] [06/29/2025 01:12:52.658] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/node2] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node2, initialSyncDone=false] 01:12:52,658 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - node1 (Leader): Checking sendAppendEntries for follower node2: active: false, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:52,658 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - node1: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]] 01:12:52,658 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - node2: Lagging -1 entries behind leader node1 and reached 0 (of expected -1) 01:12:52,659 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - node1 (Leader): handleAppendEntriesReply - FollowerLogInformation for node2 updated: matchIndex: 0, nextIndex: 1 [WARN] [06/29/2025 01:12:52.659] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/node2] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node2, initialSyncDone=true] 01:12:52,659 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - node1 (Leader): Checking sendAppendEntries for follower node2: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:52,659 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - node1 (Leader): sendAppendEntries: 1 is present for follower node2 01:12:52,659 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - node1 (Leader): Sending AppendEntries to follower node2: AppendEntries{term=3, leaderId=node1, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]}, pending=true}]} 01:12:52,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node2 (Follower): handleAppendEntries: AppendEntries{term=3, leaderId=node1, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[JournaledLogEntry{index=1, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]}, pending=true}]} 01:12:52,659 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - node1 (Leader): sendAppendEntries: 1 is present for follower node2 01:12:52,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node2 (Follower): Number of entries to be appended = 1 01:12:52,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node2 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:12:52,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node2 (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]} 01:12:52,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - node2: Append log entry and persist JournaledLogEntry{index=1, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]}, pending=true} 01:12:52,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - 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:12:52,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node2 (Follower): Log size is now 2 01:12:52,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - 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:12:52,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - node2: Lagging 0 entries behind leader node1 and reached 0 (of expected -1) 01:12:52,659 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node1 (Leader): handleAppendEntriesReply - FollowerLogInformation for node2 updated: matchIndex: 1, nextIndex: 2 01:12:52,660 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node1 (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 01:12:52,660 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - node1 (Leader): Setting last applied to 1 01:12:52,660 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from 0 to 1 01:12:52,660 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - node1: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]} 01:12:52,660 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - node1: Persisting ApplyJournalEntries with index=1 01:12:52,660 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node1 (Leader): Checking sendAppendEntries for follower node2: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:12:52,660 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - node1: persist complete JournaledLogEntry{index=1, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]}, pending=false} 01:12:52,660 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActorVotingConfigSupport - node1: VotingConfig{serverInfo=[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:12:52,661 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - node2: persist complete JournaledLogEntry{index=1, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]}, pending=false} 01:12:52,661 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - node2 (Follower): Commit index set to 1 01:12:52,661 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - node2: Lagging 0 entries behind leader node1 and reached 1 (of expected -1) 01:12:52,661 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - node2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 01:12:52,661 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - node2 (Follower): Setting last applied to 1 01:12:52,661 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from 0 to 1 01:12:52,661 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - node2: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=node2, isVoting=true], ServerInfo[peerId=downNode2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=false], ServerInfo[peerId=node1, isVoting=true]]} 01:12:52,661 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - node2: Persisting ApplyJournalEntries with index=1 01:12:52,768 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SyncStatusTracker - node2: Lagging 0 entries behind leader node1 and reached 1 (of expected -1) 01:12:52,862 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeader ending 01:12:52,862 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower210] 01:12:52,873 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector211#1588494600] 01:12:52,873 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node1] 01:12:52,874 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 01:12:52,874 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 01:12:52,874 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector212#1279415501] 01:12:52,874 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node2] 01:12:52,874 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 01:12:52,874 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 01:12:52,876 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithPriorSnapshotCompleteTimeout starting [WARN] [06/29/2025 01:12:52.877] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server215]: org.opendaylight.controller.cluster.common.actor.Monitor@63439254 01:12:52,879 AM [test-pekko.actor.default-dispatcher-17] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 01:12:52,879 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: started executor 01:12:52,879 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: started executor 01:12:52,880 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17951401638776497899/new-server/TermInfo.properties does not exist 01:12:52,880 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: no eligible files found 01:12:52,880 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - 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:12:52,884 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 01:12:52,884 AM [test-pekko.actor.default-dispatcher-13] [INFO] PekkoRecovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 01:12:52,884 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - new-server: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@626b2d24 01:12:52,885 AM [test-pekko.actor.default-dispatcher-13] [INFO] DefaultConfigParamsImpl - Trying to use custom RaftPolicy org.opendaylight.controller.cluster.raft.policy.DisableElectionsRaftPolicy [WARN] [06/29/2025 01:12:52.885] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader216]: org.opendaylight.controller.cluster.common.actor.Monitor@75b30757 01:12:52,886 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:52,886 AM [test-pekko.actor.default-dispatcher-6] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 01:12:52,886 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: started executor 01:12:52,886 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorage - leader: started executor 01:12:52,887 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - /tmp/org.opendaylight.controller.cluster.raft.RaftActorVotingConfigSupportTest17951401638776497899/leader/TermInfo.properties does not exist 01:12:52,888 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - leader: no eligible files found 01:12:52,888 AM [test-pekko.actor.default-dispatcher-17] [INFO] PekkoRecovery - 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:12:52,890 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 01:12:52,890 AM [test-pekko.actor.default-dispatcher-17] [INFO] PekkoRecovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 01:12:52,890 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActor - leader: Pekko recovery completed with org.opendaylight.controller.cluster.raft.RecoveryLog@37deb507 01:12:52,890 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:12:52,891 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActor - leader: Take a snapshot of current state. lastReplicatedLog is null and replicatedToAllIndex is -1 01:12:52,891 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 01:12:52,891 AM [test-pekko.actor.default-dispatcher-17] [INFO] SnapshotManager - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true] 01:12:52,891 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SnapshotManager - leader: captured snapshot at lastSequenceNumber: -1 01:12:52,891 AM [test-pekko.actor.default-dispatcher-17] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 01:12:52,891 AM [test-pekko.actor.default-dispatcher-17] [INFO] MockRaftActor - leader: support() called 01:12:52,891 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SnapshotManager - leader: user triggered or root overwrite snapshot encountered, trimming log up to last applied index -1 01:12:52,891 AM [test-pekko.actor.default-dispatcher-17] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 01:12:52,898 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server215, votingMember=true], state: Idle 01:12:52,898 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server215, votingMember=true] 01:12:52,898 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SnapshotManager - leader: captureToInstall should not be called in state PersistCapture[lastSequenceNumber=-1, request=CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true]] 01:12:52,898 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - leader: Snapshot already in progress - waiting for completion 01:12:53,8 AM [test-pekko.actor.default-dispatcher-17] [INFO] Follower - new-server (Follower): Term 1 in "AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]}" message is greater than follower's term 0 - updating term 01:12:53,13 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 01:12:53,14 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 01:12:53,14 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: -1, nextIndex: 0 [WARN] [06/29/2025 01:12:53.014] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/new-server215] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 01:12:53,14 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: false, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:12:53,108 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - leader: handleInstallSnapshotTimeout for new server new-server 01:12:53,108 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftActorVotingConfigSupport - leader: Returning TIMEOUT for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server215, votingMember=true] 01:12:53,109 AM [test-pekko.actor.default-dispatcher-17] [WARN] RaftActorVotingConfigSupport - leader: Timeout occured for new server new-server while waiting for prior snapshot to complete 01:12:53,109 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithPriorSnapshotCompleteTimeout ending 01:12:53,109 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower213] 01:12:53,121 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector214#1082171231] 01:12:53,121 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server215] 01:12:53,121 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:53,121 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 01:12:53,121 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader216] 01:12:53,121 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 01:12:53,121 AM [test-pekko.actor.default-dispatcher-17] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks [INFO] [06/29/2025 01:12:53.123] [main] [CoordinatedShutdown(pekko://test)] Running CoordinatedShutdown with reason [ActorSystemTerminateReason] 01:12:53,123 AM [test-pekko.actor.default-dispatcher-6] [INFO] CoordinatedShutdown - Running CoordinatedShutdown with reason [ActorSystemTerminateReason] [WARN] [06/29/2025 01:12:53.124] [test-pekko.actor.default-dispatcher-6] [pekko://test/system/cluster/core/daemon] unhandled message from Actor[pekko://test/deadLetters]: Leave(pekko://test@10.30.170.224:17355) [INFO] [06/29/2025 01:12:53.125] [test-pekko.actor.internal-dispatcher-3] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.224:17355] - Exiting completed 01:12:53,125 AM [test-pekko.actor.default-dispatcher-17] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.224:17355] - Exiting completed [INFO] [06/29/2025 01:12:53.125] [test-pekko.actor.internal-dispatcher-3] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.224:17355] - Shutting down... 01:12:53,125 AM [test-pekko.actor.default-dispatcher-17] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.224:17355] - Shutting down... 01:12:53,125 AM [test-pekko.actor.default-dispatcher-17] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.224:17355] - Successfully shut down [INFO] [06/29/2025 01:12:53.125] [test-pekko.actor.internal-dispatcher-3] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.224:17355] - Successfully shut down [INFO] [06/29/2025 01:12:53.127] [test-pekko.remote.default-remote-dispatcher-9] [pekko://test@10.30.170.224:17355/system/remoting-terminator] Shutting down remote daemon. 01:12:53,127 AM [test-pekko.actor.default-dispatcher-6] [INFO] RemoteActorRefProvider$RemotingTerminator - Shutting down remote daemon. [INFO] [06/29/2025 01:12:53.127] [test-pekko.remote.default-remote-dispatcher-9] [pekko://test@10.30.170.224:17355/system/remoting-terminator] Remote daemon shut down; proceeding with flushing remote transports. 01:12:53,127 AM [test-pekko.actor.default-dispatcher-6] [INFO] RemoteActorRefProvider$RemotingTerminator - Remote daemon shut down; proceeding with flushing remote transports. [INFO] [06/29/2025 01:12:53.129] [test-pekko.remote.default-remote-dispatcher-9] [pekko://test@10.30.170.224:17355/system/remoting-terminator] Remoting shut down. 01:12:53,129 AM [test-pekko.actor.default-dispatcher-13] [INFO] RemoteActorRefProvider$RemotingTerminator - Remoting shut down. [DEBUG] [06/29/2025 01:12:53.129] [test-pekko.actor.internal-dispatcher-2] [EventStream] shutting down: StandardOutLogger