[DEBUG] [01/17/2026 02:39:22.789] [main] [EventStream(pekko://test)] logger log1-TestEventListener started 02:39:22,789 AM [test-pekko.actor.default-dispatcher-6] [INFO] Slf4jLogger - Slf4jLogger started [DEBUG] [01/17/2026 02:39:22.790] [main] [EventStream(pekko://test)] logger log2-Slf4jLogger started [DEBUG] [01/17/2026 02:39:22.790] [main] [EventStream(pekko://test)] Default Loggers started [INFO] [01/17/2026 02:39:22.808] [main] [ArteryTransport(pekko://test)] Remoting started with transport [Artery tcp]; listening on address [pekko://test@10.30.170.18:17355] with UID [-7849424397406554172] 02:39:22,808 AM [test-pekko.actor.default-dispatcher-5] [INFO] ArteryTransport - Remoting started with transport [Artery tcp]; listening on address [pekko://test@10.30.170.18:17355] with UID [-7849424397406554172] [INFO] [01/17/2026 02:39:22.809] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Starting up, Pekko version [1.2.1] ... 02:39:22,809 AM [test-pekko.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Starting up, Pekko version [1.2.1] ... [INFO] [01/17/2026 02:39:22.812] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Registered cluster JMX MBean [pekko:type=Cluster] 02:39:22,812 AM [test-pekko.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Registered cluster JMX MBean [pekko:type=Cluster] [INFO] [01/17/2026 02:39:22.812] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Started up successfully 02:39:22,812 AM [test-pekko.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Started up successfully [INFO] [01/17/2026 02:39:22.818] [test-pekko.actor.internal-dispatcher-3] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - No downing-provider-class configured, manual cluster downing required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#downing [INFO] [01/17/2026 02:39:22.818] [test-pekko.actor.internal-dispatcher-3] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - No seed-nodes configured, manual cluster join required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#joining 02:39:22,819 AM [test-pekko.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - No downing-provider-class configured, manual cluster downing required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#downing 02:39:22,819 AM [test-pekko.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - No seed-nodes configured, manual cluster join required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#joining 02:39:22,828 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithOperationInProgress starting 02:39:22,830 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server109] 02:39:22,831 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:22,831 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: started executor 02:39:22,831 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: started executor 02:39:22,831 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:22,832 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:22,832 AM [test-pekko.actor.default-dispatcher-7] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:22,832 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:22,832 AM [new-server-writer-35] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:22,832 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - /tmp/junit-2220823020953227736/new-server/TermInfo.properties does not exist 02:39:22,832 AM [new-server-writer-35] [DEBUG] JournalWriteTask - new-server: waiting to receive commands [WARN] [01/17/2026 02:39:22.832] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server109]: org.opendaylight.controller.cluster.common.actor.Monitor@3af38142 [INFO] [pekkoDeadLetter][01/17/2026 02:39:22.832] [test-pekko.actor.default-dispatcher-8] [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'. 02:39:22,833 AM [test-pekko.actor.default-dispatcher-8] [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'. 02:39:22,834 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:22,834 AM [test-pekko.actor.default-dispatcher-7] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:22,835 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/TermInfo.properties 02:39:22,835 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/journal-v1-1.log 02:39:22,835 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/metadata-v1-1.log 02:39:22,835 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:22,835 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:22,835 AM [test-pekko.actor.default-dispatcher-7] [INFO] Recovery - new-server: Recovery completed in in 2.887 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:22,835 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:22,842 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader110] [WARN] [01/17/2026 02:39:22.842] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader110]: org.opendaylight.controller.cluster.common.actor.Monitor@12f6dfb [INFO] [pekkoDeadLetter][01/17/2026 02:39:22.842] [test-pekko.actor.default-dispatcher-8] [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'. 02:39:22,842 AM [test-pekko.actor.default-dispatcher-8] [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'. 02:39:22,842 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:22,843 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:22,843 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: started executor 02:39:22,843 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: started executor 02:39:22,843 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:22,843 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:22,843 AM [test-pekko.actor.default-dispatcher-7] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:22,844 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:22,844 AM [leader-writer-36] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:22,844 AM [leader-writer-36] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:22,844 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - /tmp/junit-2220823020953227736/leader/TermInfo.properties does not exist 02:39:22,849 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:22,849 AM [test-pekko.actor.default-dispatcher-7] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:22,849 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/TermInfo.properties 02:39:22,849 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/journal-v1-1.log 02:39:22,849 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/metadata-v1-1.log 02:39:22,849 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorage - leader: no eligible files found 02:39:22,849 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:22,849 AM [test-pekko.actor.default-dispatcher-7] [INFO] Recovery - leader: Recovery completed in in 5.141 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:22,849 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:22,849 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 02:39:22,863 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server109, votingMember=true], state: Idle 02:39:22,870 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server109, votingMember=true] 02:39:22,870 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 02:39:22,870 AM [test-pekko.actor.default-dispatcher-7] [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 02:39:22,870 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: 0 02:39:22,870 AM [test-pekko.actor.default-dispatcher-7] [INFO] MockRaftActor - leader: support() called 02:39:22,870 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 02:39:22,871 AM [leader-%d44997] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:22,875 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:22,875 AM [test-pekko.actor.default-dispatcher-7] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 02:39:22,875 AM [test-pekko.actor.default-dispatcher-7] [INFO] MockRaftActor - leader: support() called 02:39:22,875 AM [test-pekko.actor.default-dispatcher-7] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 02:39:22,875 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 02:39:22,875 AM [leader-%d44998] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-34319E84.tmp 02:39:22,875 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 02:39:22,875 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 02:39:22,875 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 02:39:22,875 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server109), Chunk: 1/1 02:39:22,878 AM [leader-%d44998] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-34319E84.v1 02:39:22,878 AM [leader-%d44998] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-34319E84.v1 02:39:22,878 AM [leader-%d44998] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/TermInfo.properties 02:39:22,878 AM [leader-%d44998] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/journal-v1-1.log 02:39:22,878 AM [leader-%d44998] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/metadata-v1-1.log 02:39:22,878 AM [leader-%d44998] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:22.875667076Z, file=/tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-34319E84.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:22,878 AM [leader-%d44998] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:22,878 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:22,878 AM [test-pekko.actor.default-dispatcher-7] [INFO] SnapshotManager - leader: snapshot is durable as of 2026-01-17T02:39:22.875667076Z 02:39:22,878 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SnapshotManager - leader: Snapshot success, discarding journal entries up to 0 02:39:22,878 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 02:39:22,923 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower107, votingMember=false], state: InstallingSnapshot 02:39:22,923 AM [test-pekko.actor.default-dispatcher-6] [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 02:39:22,924 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorVotingConfigSupport - leader: Server operation already in progress - queueing AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower107, votingMember=false] 02:39:22,926 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 02:39:22,927 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot: InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=-1, lastIncludedTerm=-1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]} 02:39:22,927 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 -1 02:39:22,927 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 02:39:22,927 AM [test-pekko.actor.default-dispatcher-6] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 02:39:22,927 AM [test-pekko.actor.default-dispatcher-6] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 02:39:22,927 AM [test-pekko.actor.default-dispatcher-6] [INFO] MockRaftActor - new-server: support() called [WARN] [01/17/2026 02:39:22.927] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/new-server109] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] [INFO] [pekkoDeadLetter][01/17/2026 02:39:22.927] [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'. 02:39:22,927 AM [test-pekko.actor.default-dispatcher-8] [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'. 02:39:22,928 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 02:39:22,928 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] SnapshotManager - new-server: last applied journal index prior to persisting applied snapshot: 0 02:39:22,928 AM [test-pekko.actor.default-dispatcher-6] [INFO] MockRaftActor - new-server: support() called 02:39:22,929 AM [new-server-%d773564] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-375D72E3.tmp 02:39:22,930 AM [new-server-%d773564] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-375D72E3.v1 02:39:22,931 AM [new-server-%d773564] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-375D72E3.v1 02:39:22,931 AM [new-server-%d773564] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/TermInfo.properties 02:39:22,931 AM [new-server-%d773564] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/journal-v1-1.log 02:39:22,931 AM [new-server-%d773564] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/metadata-v1-1.log 02:39:22,931 AM [new-server-%d773564] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:22.928871139Z, file=/tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-375D72E3.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:22,931 AM [new-server-%d773564] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:22,931 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:22,931 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - new-server: snapshot is durable as of 2026-01-17T02:39:22.928871139Z 02:39:22,932 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - new-server: support() called 02:39:22,932 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - new-server: applySnapshot called 02:39:22,932 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 02:39:22,933 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - new-server: Snapshot success, discarding journal entries up to 0 02:39:22,933 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 02:39:22,933 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 02:39:22,933 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 02:39:22,933 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 02:39:22,933 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 02:39:22,934 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 02:39:22,934 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]]} 02:39:22,934 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} 02:39:22,934 AM [leader-%d44999] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-37B4A996.tmp 02:39:22,934 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=cd23f4d8-ff56-465b-99d1-2d9dc93ef4cd}, logIndex: 0, isSendImmediate: true 02:39:22,934 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 02:39:22,934 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:22,934 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}]} 02:39:22,935 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=-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}]} 02:39:22,935 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 02:39:22,935 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 02:39:22,935 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]]} 02:39:22,935 AM [test-pekko.actor.default-dispatcher-13] [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} 02:39:22,935 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 02:39:22,935 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): Log size is now 1 02:39:22,935 AM [new-server-%d773565] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-37C0DC09.tmp 02:39:22,935 AM [test-pekko.actor.default-dispatcher-13] [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} 02:39:22,935 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 02:39:22,935 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - new-server: awaiting more completions to resolve 1 synchronized callback(s) 02:39:22,935 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] 02:39:22,936 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 0, nextIndex: 1 02:39:22,936 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 02:39:22,936 AM [leader-%d44999] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-37B4A996.v1 02:39:22,937 AM [leader-%d44999] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-37B4A996.v1 02:39:22,937 AM [leader-%d44999] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-34319E84.v1 02:39:22,937 AM [leader-%d44999] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/TermInfo.properties 02:39:22,937 AM [leader-%d44999] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/journal-v1-1.log 02:39:22,937 AM [leader-%d44999] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/metadata-v1-1.log 02:39:22,937 AM [new-server-%d773565] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-37C0DC09.v1 02:39:22,937 AM [leader-%d44999] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:22.875667076Z, file=/tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-34319E84.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:22,937 AM [new-server-%d773565] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-37C0DC09.v1 02:39:22,937 AM [leader-%d44999] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:22.934586774Z, file=/tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-37B4A996.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:22,937 AM [leader-%d44999] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:22,937 AM [new-server-%d773565] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-375D72E3.v1 02:39:22,937 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:22,937 AM [new-server-%d773565] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/TermInfo.properties 02:39:22,937 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=true} 02:39:22,938 AM [new-server-%d773565] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/journal-v1-1.log 02:39:22,938 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 02:39:22,938 AM [new-server-%d773565] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/metadata-v1-1.log 02:39:22,938 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 02:39:22,938 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 02:39:22,938 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]]} 02:39:22,938 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 02:39:22,938 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower107, votingMember=false] 02:39:22,938 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] RaftActorVotingConfigSupport - leader: New follower is non-voting - directly persisting new server configuration 02:39:22,938 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]] 02:39:22,938 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]]} 02:39:22,938 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} 02:39:22,938 AM [new-server-%d773565] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:22.928871139Z, file=/tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-375D72E3.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:22,938 AM [new-server-%d773565] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:22.935386121Z, file=/tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-37C0DC09.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:22,938 AM [new-server-%d773565] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:22,938 AM [leader-%d45000] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-37EFEBFA.tmp 02:39:22,938 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:22,938 AM [test-pekko.actor.default-dispatcher-13] [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} 02:39:22,938 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - new-server: completed synchronized callback AppendReceivedCallback{entry=JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@340424ac} 02:39:22,938 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=673b04a9-1f56-4f57-9b88-8e2ec21d8c2c}, logIndex: 1, isSendImmediate: true 02:39:22,938 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 02:39:22,938 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower new-server 02:39:22,938 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - new-server: synchronized callbacks after 3.038 ms 02:39:22,938 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}]} 02:39:22,938 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 02:39:22,939 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] 02:39:22,939 AM [test-pekko.actor.default-dispatcher-6] [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'. 02:39:22,939 AM [test-pekko.actor.default-dispatcher-6] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server2 02:39:22,939 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}]} [WARN] [01/17/2026 02:39:22.939] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/new-server109] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=true] [INFO] [pekkoDeadLetter][01/17/2026 02:39:22.939] [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'. 02:39:22,939 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SyncStatusTracker - new-server2: Last sync leader does not match current leader leader, need to catch up to -1 02:39:22,940 AM [leader-%d45000] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-37EFEBFA.v1 02:39:22,940 AM [leader-%d45000] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-37EFEBFA.v1 02:39:22,940 AM [leader-%d45000] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-37B4A996.v1 02:39:22,940 AM [leader-%d45000] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/TermInfo.properties 02:39:22,940 AM [leader-%d45000] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/journal-v1-1.log 02:39:22,940 AM [leader-%d45000] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-2220823020953227736/leader/metadata-v1-1.log 02:39:22,940 AM [leader-%d45000] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:22.934586774Z, file=/tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-37B4A996.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:22,940 AM [leader-%d45000] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:22.938470394Z, file=/tmp/junit-2220823020953227736/leader/snapshot-00000000696AF65A-37EFEBFA.v1, size=100, entryCompress=NONE, stateCompress=NONE} 02:39:22,940 AM [leader-%d45000] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:22,940 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:22,940 AM [test-pekko.actor.default-dispatcher-15] [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=true} 02:39:22,941 AM [test-pekko.actor.default-dispatcher-13] [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=false}]} 02:39:22,941 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 02:39:22,941 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 02:39:22,941 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=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 02:39:22,941 AM [test-pekko.actor.default-dispatcher-13] [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=false} 02:39:22,941 AM [test-pekko.actor.default-dispatcher-13] [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]] 02:39:22,941 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): Log size is now 2 02:39:22,942 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): Commit index set to 0 02:39:22,942 AM [test-pekko.actor.default-dispatcher-13] [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} 02:39:22,942 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:22,942 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 1 02:39:22,942 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 1, nextIndex: 2 02:39:22,942 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 0 02:39:22,942 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 02:39:22,942 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to 0 02:39:22,942 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 02:39:22,942 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from 0 to 1 02:39:22,942 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - new-server: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 02:39:22,942 AM [test-pekko.actor.default-dispatcher-8] [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]]} 02:39:22,942 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - new-server: awaiting more completions to resolve 1 synchronized callback(s) 02:39:22,942 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:22,942 AM [test-pekko.actor.default-dispatcher-8] [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 02:39:22,944 AM [new-server-%d773566] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-382367A6.tmp 02:39:22,947 AM [test-pekko.actor.default-dispatcher-8] [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@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.trimLog(SnapshotManager.java:663) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.performSnapshotWithoutCapture(RaftActorBehavior.java:438) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:222) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.appendEntries(RaftActorBehavior.java:152) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:375) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:502) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.UntypedAbstractActor$$anon$1.applyOrElse(AbstractActor.scala:341) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive(Actor.scala:547) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive$(Actor.scala:481) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.AbstractActor.aroundReceive(AbstractActor.scala:229) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.ActorCell.receiveMessage(ActorCell.scala:590) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.ActorCell.invoke(ActorCell.scala:557) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.processMailbox(Mailbox.scala:273) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.run(Mailbox.scala:234) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.exec(Mailbox.scala:246) 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] [01/17/2026 02:39:22.946] [test-pekko.actor.internal-dispatcher-4] [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@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.trimLog(SnapshotManager.java:663) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.performSnapshotWithoutCapture(RaftActorBehavior.java:438) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:222) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.appendEntries(RaftActorBehavior.java:152) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:375) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:502) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.UntypedAbstractActor$$anon$1.applyOrElse(AbstractActor.scala:341) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive(Actor.scala:547) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive$(Actor.scala:481) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.AbstractActor.aroundReceive(AbstractActor.scala:229) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.ActorCell.receiveMessage(ActorCell.scala:590) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.ActorCell.invoke(ActorCell.scala:557) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.processMailbox(Mailbox.scala:273) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.run(Mailbox.scala:234) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.exec(Mailbox.scala:246) 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) 02:39:22,949 AM [new-server-%d773566] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-382367A6.v1 02:39:22,949 AM [new-server-%d773566] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-382367A6.v1 02:39:22,949 AM [new-server-%d773566] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-37C0DC09.v1 02:39:22,949 AM [new-server-%d773566] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/TermInfo.properties 02:39:22,949 AM [new-server-%d773566] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/journal-v1-1.log 02:39:22,949 AM [new-server-%d773566] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-2220823020953227736/new-server/metadata-v1-1.log 02:39:22,949 AM [new-server-%d773566] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:22.935386121Z, file=/tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-37C0DC09.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:22,949 AM [new-server-%d773566] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:22.941844390Z, file=/tmp/junit-2220823020953227736/new-server/snapshot-00000000696AF65A-382367A6.v1, size=100, entryCompress=NONE, stateCompress=NONE} 02:39:22,949 AM [new-server-%d773566] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:22,949 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:22,949 AM [test-pekko.actor.default-dispatcher-13] [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} 02:39:22,949 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - new-server: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@2f00c960} 02:39:22,949 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - new-server: synchronized callbacks after 7.480 ms 02:39:22,950 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): Commit index set to 1 02:39:22,950 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 02:39:22,950 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 02:39:22,950 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 1 02:39:22,950 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from 0 to 1 02:39:22,950 AM [test-pekko.actor.default-dispatcher-13] [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]]} 02:39:22,989 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithOperationInProgress ending 02:39:22,990 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower107] 02:39:23,1 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector108#251599816] 02:39:23,2 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server109] 02:39:23,2 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#261,new-server-writer-35]/waiting 02:39:23,2 AM [new-server-writer-35] [DEBUG] JournalWriteTask - new-server: received 1 commands after 170.2 ms 02:39:23,2 AM [new-server-writer-35] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 29.41 μs 02:39:23,2 AM [new-server-writer-35] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:23,3 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:23,3 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:23,3 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:23,3 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:23,3 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader110] 02:39:23,3 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#262,leader-writer-36]/waiting 02:39:23,3 AM [leader-writer-36] [DEBUG] JournalWriteTask - leader: received 1 commands after 159.8 ms 02:39:23,4 AM [leader-writer-36] [DEBUG] JournalWriteTask - leader: completed 1 commands in 19.94 μs 02:39:23,4 AM [leader-writer-36] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:23,4 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:23,4 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal closed 02:39:23,4 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:23,4 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:23,4 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector111] 02:39:23,10 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerNonExistentServer starting 02:39:23,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader113] [WARN] [01/17/2026 02:39:23.011] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader113]: org.opendaylight.controller.cluster.common.actor.Monitor@7d543cdb 02:39:23,11 AM [test-pekko.actor.default-dispatcher-13] [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'. [INFO] [pekkoDeadLetter][01/17/2026 02:39:23.011] [test-pekko.actor.default-dispatcher-13] [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'. 02:39:23,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:23,12 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:23,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:23,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:23,13 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:23,13 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:23,13 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:23,13 AM [leader-writer-37] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:23,13 AM [leader-writer-37] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:23,13 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:23,13 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-3337568138881871538/leader/TermInfo.properties does not exist 02:39:23,16 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:23,16 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:23,16 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-3337568138881871538/leader/TermInfo.properties 02:39:23,16 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-3337568138881871538/leader/journal-v1-1.log 02:39:23,16 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-3337568138881871538/leader/metadata-v1-1.log 02:39:23,16 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: no eligible files found 02:39:23,16 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:23,16 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Recovery completed in in 2.873 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:23,16 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:23,16 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 02:39:23,17 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 02:39:23,27 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: onRemoveServer: RemoveServer{serverId='new-server'}, state: Idle 02:39:23,29 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerNonExistentServer ending 02:39:23,29 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower112] 02:39:23,40 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader113] 02:39:23,41 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#274,leader-writer-37]/waiting 02:39:23,41 AM [leader-writer-37] [DEBUG] JournalWriteTask - leader: received 1 commands after 27.62 ms 02:39:23,41 AM [leader-writer-37] [DEBUG] JournalWriteTask - leader: completed 1 commands in 26.28 μs 02:39:23,41 AM [leader-writer-37] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:23,41 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:23,41 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal closed 02:39:23,41 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:23,41 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:23,46 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerWithNoLeader starting 02:39:23,47 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] MockRaftActor - Actor created TestActor[pekko://test/user/leader115] [WARN] [01/17/2026 02:39:23.048] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader115]: org.opendaylight.controller.cluster.common.actor.Monitor@7376d5ed [INFO] [pekkoDeadLetter][01/17/2026 02:39:23.048] [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'. 02:39:23,48 AM [test-pekko.actor.default-dispatcher-13] [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'. 02:39:23,49 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:23,49 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:23,49 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:23,50 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:23,51 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:23,51 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:23,51 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:23,51 AM [leader-writer-38] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:23,51 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-14403984846906865124/leader/TermInfo.properties does not exist 02:39:23,51 AM [leader-writer-38] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:23,53 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=0, votedFor=null 02:39:23,53 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=0} 02:39:23,53 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14403984846906865124/leader/TermInfo.properties 02:39:23,53 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14403984846906865124/leader/journal-v1-1.log 02:39:23,53 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14403984846906865124/leader/metadata-v1-1.log 02:39:23,53 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: no eligible files found 02:39:23,53 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:23,54 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Recovery completed in in 2.627 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:23,54 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:23,65 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: onRemoveServer: RemoveServer{serverId='follower'}, state: Idle 02:39:23,65 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: No leader - returning NO_LEADER reply 02:39:23,66 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerWithNoLeader ending 02:39:23,66 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower114] 02:39:23,78 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader115] 02:39:23,78 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#275,leader-writer-38]/waiting 02:39:23,78 AM [leader-writer-38] [DEBUG] JournalWriteTask - leader: received 1 commands after 27.24 ms 02:39:23,78 AM [leader-writer-38] [DEBUG] JournalWriteTask - leader: completed 1 commands in 32.20 μs 02:39:23,78 AM [leader-writer-38] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:23,79 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:23,79 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal closed 02:39:23,79 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:23,79 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:23,84 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerLeader starting 02:39:23,85 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader118] [WARN] [01/17/2026 02:39:23.085] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader118]: org.opendaylight.controller.cluster.common.actor.Monitor@449bd8d4 [INFO] [pekkoDeadLetter][01/17/2026 02:39:23.085] [test-pekko.actor.default-dispatcher-16] [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'. 02:39:23,85 AM [test-pekko.actor.default-dispatcher-16] [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'. 02:39:23,86 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:23,86 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:23,86 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:23,87 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:23,87 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:23,88 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:23,88 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:23,88 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:23,88 AM [leader-writer-39] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:23,88 AM [leader-writer-39] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:23,88 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-10437071468396189807/leader/TermInfo.properties does not exist 02:39:23,92 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:23,92 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:23,92 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10437071468396189807/leader/TermInfo.properties 02:39:23,92 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10437071468396189807/leader/journal-v1-1.log 02:39:23,92 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10437071468396189807/leader/metadata-v1-1.log 02:39:23,93 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: no eligible files found 02:39:23,93 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:23,93 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Recovery completed in in 4.678 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:23,93 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:23,93 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 02:39:23,93 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [01/17/2026 02:39:23.094] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/follower117] received dead letter from TestActor[pekko://test/user/leader118]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} 02:39:23,94 AM [test-pekko.actor.default-dispatcher-13] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader118] to Actor[pekko://test/user/follower117] was not delivered. [8] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower117] 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][01/17/2026 02:39:23.094] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower117] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader118] to Actor[pekko://test/user/follower117] was not delivered. [8] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower117] 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'. 02:39:23,97 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/follower117] [WARN] [01/17/2026 02:39:23.097] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower117]: org.opendaylight.controller.cluster.common.actor.Monitor@69970590 [INFO] [pekkoDeadLetter][01/17/2026 02:39:23.097] [test-pekko.actor.default-dispatcher-13] [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. [9] 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'. 02:39:23,97 AM [test-pekko.actor.default-dispatcher-8] [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. [9] 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'. 02:39:23,99 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 02:39:23,99 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: started executor 02:39:23,99 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: started executor 02:39:23,100 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - follower: metadata journal open: replayFrom=1 applyTo=0 02:39:23,101 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - follower: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:23,101 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - follower: journal open: applyTo=0 02:39:23,101 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - follower: recovering to non-persistent 02:39:23,101 AM [follower-writer-40] [DEBUG] JournalWriteTask - follower: journal writer started 02:39:23,101 AM [follower-writer-40] [DEBUG] JournalWriteTask - follower: waiting to receive commands 02:39:23,101 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-10437071468396189807/follower/TermInfo.properties does not exist 02:39:23,103 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 02:39:23,103 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - follower: Local TermInfo store seeded with TermInfo{term=0} 02:39:23,103 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10437071468396189807/follower/TermInfo.properties 02:39:23,103 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10437071468396189807/follower/journal-v1-1.log 02:39:23,103 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10437071468396189807/follower/metadata-v1-1.log 02:39:23,103 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: no eligible files found 02:39:23,103 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to -1 02:39:23,104 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - follower: Recovery completed in in 2.545 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:23,104 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - follower: Recovery completed and can restore from snapshot 02:39:23,115 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onRemoveServer: RemoveServer{serverId='leader'}, state: Idle 02:39:23,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower, isVoting=true]] 02:39:23,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]} 02:39:23,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - leader: Append log entry and persist JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]}, pending=true} 02:39:23,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=bfe43b1d-8534-4571-81bd-9fc5b03fd5d0}, logIndex: 0, isSendImmediate: true 02:39:23,118 AM [leader-%d537683] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-10437071468396189807/leader/snapshot-00000000696AF65B-070E3897.tmp 02:39:23,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:23,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation RemoveServer{serverId='leader'} 02:39:23,118 AM [test-pekko.actor.default-dispatcher-8] [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 02:39:23,122 AM [leader-%d537683] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-10437071468396189807/leader/snapshot-00000000696AF65B-070E3897.v1 02:39:23,122 AM [leader-%d537683] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10437071468396189807/leader/TermInfo.properties 02:39:23,122 AM [leader-%d537683] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10437071468396189807/leader/journal-v1-1.log 02:39:23,122 AM [leader-%d537683] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-10437071468396189807/leader/snapshot-00000000696AF65B-070E3897.v1 02:39:23,122 AM [leader-%d537683] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10437071468396189807/leader/metadata-v1-1.log 02:39:23,122 AM [leader-%d537683] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:23.118372503Z, file=/tmp/junit-10437071468396189807/leader/snapshot-00000000696AF65B-070E3897.v1, size=75, entryCompress=NONE, stateCompress=NONE} 02:39:23,122 AM [leader-%d537683] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:23,122 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:23,122 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - leader: persist complete JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]}, pending=true} 02:39:23,123 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 02:39:23,123 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 02:39:23,123 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 02:39:23,123 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:23,123 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 02:39:23,123 AM [test-pekko.actor.default-dispatcher-16] [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=false}]} 02:39:23,123 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=false}]} 02:39:23,123 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 02:39:23,123 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 02:39:23,123 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]} 02:39:23,123 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=false} [WARN] [01/17/2026 02:39:23.123] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/follower117] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] [INFO] [pekkoDeadLetter][01/17/2026 02:39:23.123] [test-pekko.actor.default-dispatcher-8] [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'. 02:39:23,124 AM [test-pekko.actor.default-dispatcher-16] [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'. 02:39:23,124 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - follower: Updated server config: isVoting: true, peers: [] 02:39:23,124 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Log size is now 1 02:39:23,124 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} 02:39:23,124 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 02:39:23,124 AM [follower-%d252971] [DEBUG] RaftStorage - follower: starting snapshot writeout to /tmp/junit-10437071468396189807/follower/snapshot-00000000696AF65B-076307F0.tmp 02:39:23,124 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 02:39:23,124 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - follower: awaiting more completions to resolve 1 synchronized callback(s) 02:39:23,124 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 02:39:23,124 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 02:39:23,124 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 02:39:23,124 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]} 02:39:23,124 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:23,124 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActorVotingConfigSupport - leader: VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]} has been successfully replicated to a majority of followers [WARN] [01/17/2026 02:39:23.125] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/leader118] unhandled message from TestActor[pekko://test/user/leader118]: ServerRemoved [serverId=leader] 02:39:23,126 AM [follower-%d252971] [DEBUG] RaftStorage - follower: finished snapshot writeout to /tmp/junit-10437071468396189807/follower/snapshot-00000000696AF65B-076307F0.v1 02:39:23,126 AM [follower-%d252971] [DEBUG] RaftStorage - follower: selected SNAPSHOT_V1 to handle file /tmp/junit-10437071468396189807/follower/snapshot-00000000696AF65B-076307F0.v1 02:39:23,126 AM [follower-%d252971] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10437071468396189807/follower/TermInfo.properties 02:39:23,126 AM [follower-%d252971] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10437071468396189807/follower/journal-v1-1.log 02:39:23,126 AM [follower-%d252971] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10437071468396189807/follower/metadata-v1-1.log 02:39:23,126 AM [follower-%d252971] [DEBUG] RaftStorage - follower: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:23.123930608Z, file=/tmp/junit-10437071468396189807/follower/snapshot-00000000696AF65B-076307F0.v1, size=75, entryCompress=NONE, stateCompress=NONE} 02:39:23,126 AM [follower-%d252971] [DEBUG] RaftStorageCompleter - follower: 1 completion(s) pending 02:39:23,126 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - follower: running 1 completion(s) 02:39:23,126 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} 02:39:23,126 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - follower: completed synchronized callback AppendReceivedCallback{entry=JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=follower, isVoting=true]]}, pending=false}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@77e19110} 02:39:23,126 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - follower: synchronized callbacks after 2.664 ms 02:39:23,127 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Commit index set to 0 02:39:23,127 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:23,127 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 02:39:23,127 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 02:39:23,127 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to 0 02:39:23,127 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] [01/17/2026 02:39:23.127] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/follower117] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=true] 02:39:23,169 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerLeader ending 02:39:23,170 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower116] 02:39:23,181 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader118] 02:39:23,181 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#276,leader-writer-39]/waiting 02:39:23,182 AM [leader-writer-39] [DEBUG] JournalWriteTask - leader: received 1 commands after 93.68 ms 02:39:23,182 AM [leader-writer-39] [DEBUG] JournalWriteTask - leader: completed 1 commands in 37.38 μs 02:39:23,182 AM [leader-writer-39] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:23,182 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:23,182 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal closed 02:39:23,182 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:23,182 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:23,183 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector119] 02:39:23,183 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector120#1092300548] 02:39:23,184 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower117] 02:39:23,184 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - follower: terminating thread VirtualThread[#277,follower-writer-40]/waiting 02:39:23,184 AM [follower-writer-40] [DEBUG] JournalWriteTask - follower: received 1 commands after 83.06 ms 02:39:23,184 AM [follower-writer-40] [DEBUG] JournalWriteTask - follower: completed 1 commands in 26.20 μs 02:39:23,184 AM [follower-writer-40] [DEBUG] JournalWriteTask - follower: journal writer stopped 02:39:23,184 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - follower: journal closed 02:39:23,184 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - follower: journal closed 02:39:23,184 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:23,185 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:23,295 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndOtherLeaderElected starting 02:39:23,299 AM [main] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 02:39:23,299 AM [main] [DEBUG] EntryJournalV1 - node1: metadata journal open: replayFrom=1 applyTo=0 02:39:23,300 AM [main] [DEBUG] EntryJournalV1 - node1: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:23,304 AM [main] [DEBUG] EntryJournalV1 - node1: journal closed 02:39:23,306 AM [main] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 02:39:23,307 AM [main] [DEBUG] EntryJournalV1 - node2: metadata journal open: replayFrom=1 applyTo=0 02:39:23,307 AM [main] [DEBUG] EntryJournalV1 - node2: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:23,312 AM [main] [DEBUG] EntryJournalV1 - node2: journal closed 02:39:23,313 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/node1] [WARN] [01/17/2026 02:39:23.314] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@12933dea 02:39:23,315 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - node1: Starting recovery with journal batch size 1000 02:39:23,315 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node1: started executor 02:39:23,315 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node1: started executor 02:39:23,316 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - node1: metadata journal open: replayFrom=1 applyTo=0 02:39:23,317 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - node1: journal open: firstIndex=1 lastIndex=1 replayFrom=1 fileEntries=0 02:39:23,317 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - node1: journal open: applyTo=0 02:39:23,317 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: journal writer started 02:39:23,317 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: waiting to receive commands 02:39:23,317 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - node1: starting journal recovery 02:39:23,317 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 02:39:23,318 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-17202105104764845096/node1/TermInfo.properties 02:39:23,318 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-17202105104764845096/node1/journal-v1-1.log 02:39:23,318 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-17202105104764845096/node1/metadata-v1-1.log 02:39:23,318 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node1: no eligible files found 02:39:23,318 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to -1 02:39:23,318 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] JournalRecovery - node1: applying entries up to 0 02:39:23,318 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] JournalRecovery - node1: recovered journal DefaultLogEntry[index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=true]]}] 02:39:23,319 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PeerInfos - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 02:39:23,319 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to -1 02:39:23,319 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - node1: Recovery completed in in 1.517 ms: last log index = 0, last log term = 1, napshot index = -1, snapshot term = -1, journal size = 1 02:39:23,319 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - node1: Recovery completed and cannot restore from snapshot 02:39:23,320 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/node2] [WARN] [01/17/2026 02:39:23.321] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node2]: org.opendaylight.controller.cluster.common.actor.Monitor@66efecbf 02:39:23,321 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - node2: Starting recovery with journal batch size 1000 02:39:23,321 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node2: started executor 02:39:23,321 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node2: started executor 02:39:23,322 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - node2: metadata journal open: replayFrom=1 applyTo=0 02:39:23,322 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - node2: journal open: firstIndex=1 lastIndex=1 replayFrom=1 fileEntries=0 02:39:23,322 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - node2: journal open: applyTo=0 02:39:23,322 AM [node2-writer-42] [DEBUG] JournalWriteTask - node2: journal writer started 02:39:23,322 AM [node2-writer-42] [DEBUG] JournalWriteTask - node2: waiting to receive commands 02:39:23,322 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - node2: starting journal recovery 02:39:23,322 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 02:39:23,322 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-17202105104764845096/node2/TermInfo.properties 02:39:23,322 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-17202105104764845096/node2/journal-v1-1.log 02:39:23,322 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-17202105104764845096/node2/metadata-v1-1.log 02:39:23,322 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - node2: no eligible files found 02:39:23,322 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to -1 02:39:23,323 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] JournalRecovery - node2: applying entries up to 0 02:39:23,323 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] JournalRecovery - node2: recovered journal DefaultLogEntry[index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=true]]}] 02:39:23,323 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PeerInfos - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=null, votingState=NON_VOTING]] 02:39:23,323 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to -1 02:39:23,323 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - node2: Recovery completed in in 695.3 μs: last log index = 0, last log term = 1, napshot index = -1, snapshot term = -1, journal size = 1 02:39:23,323 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - node2: Recovery completed and cannot restore from snapshot 02:39:23,432 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]], state: Idle 02:39:23,437 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 02:39:23,437 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - node1: Sending local ElectionTimeout to start leader election 02:39:23,437 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 02:39:23,438 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - node1 (Follower): Received TimeoutNow - switching to Candidate 02:39:23,438 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Candidate - node1 (Candidate): Election: Candidate has following voting peers: [node2] 02:39:23,442 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=2, votedFor=node1 02:39:23,442 AM [test-pekko.actor.default-dispatcher-16] [INFO] Candidate - node1 (Candidate): Starting new election term 2 02:39:23,442 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Candidate - node1 (Candidate): Sending RequestVote{term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1} to peer node2 02:39:23,442 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActorBehavior - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 02:39:23,482 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - node2 (Follower): Received TimeoutNow - switching to Candidate 02:39:23,483 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Candidate - node2 (Candidate): Election: Candidate has following voting peers: [] 02:39:23,487 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=2, votedFor=node2 02:39:23,487 AM [test-pekko.actor.default-dispatcher-16] [INFO] Candidate - node2 (Candidate): Starting new election term 2 02:39:23,487 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActorBehavior - node2 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 02:39:23,487 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Candidate - node2 (Candidate): Received ElectionTimeout 02:39:23,487 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - node2 (Leader): Election: Leader has following peers: [node1] 02:39:23,487 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:23,487 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActorBehavior - node2 (Candidate) :- Switching from behavior Candidate to Leader, election term: 2 02:39:23,488 AM [test-pekko.actor.default-dispatcher-15] [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 02:39:23,488 AM [test-pekko.actor.default-dispatcher-15] [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==[]} 02:39:23,488 AM [test-pekko.actor.default-dispatcher-15] [INFO] Candidate - node1 (Candidate): New Leader node2 sent an AppendEntries to Candidate for term 2 - will switch to Follower 02:39:23,488 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActorBehavior - node1 (Candidate) :- Switching from behavior Candidate to Follower, election term: 2 02:39:23,604 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - node1: Last sync leader does not match current leader node2, need to catch up to -1 02:39:23,604 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 0, nextIndex: 1 02:39:23,604 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - node1: New leader node2 elected 02:39:23,604 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - node1: Forwarding ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]] to new leader 02:39:23,604 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 02:39:23,604 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=pekko://test/user/node2, votingState=VOTING]] 02:39:23,604 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:23,604 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - node1: getLeaderAddress leaderId = node2 peerAddress = pekko://test/user/node2 02:39:23,604 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - node1: Not leader - forwarding to leader ActorSelection[Anchor(pekko://test/), Path(/user/node2)] 02:39:23,605 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - node2: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]], state: Idle 02:39:23,605 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState [WARN] [01/17/2026 02:39:23.605] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/node1] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node1, initialSyncDone=false] 02:39:23,605 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PeerInfos - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=pekko://test/user/node1, votingState=VOTING]] 02:39:23,605 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - node2: New server configuration : [ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]] 02:39:23,605 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - node2: Persist data index=1 term=2 command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 02:39:23,605 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:23,605 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=0b828183-b414-4220-baff-9e3aa5687f5f}, logIndex: 1, isSendImmediate: true 02:39:23,606 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:23,606 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): sendAppendEntries: 1 is present for follower node1 02:39:23,606 AM [node2-writer-42] [DEBUG] JournalWriteTask - node2: received 1 commands after 283.3 ms 02:39:23,606 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:23,606 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - node2: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]] 02:39:23,606 AM [test-pekko.actor.default-dispatcher-16] [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}]} 02:39:23,606 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - node1 (Follower): Number of entries to be appended = 1 02:39:23,606 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - node1 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 02:39:23,606 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - node1 (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 02:39:23,606 AM [test-pekko.actor.default-dispatcher-16] [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} 02:39:23,607 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: received 1 commands after 289.8 ms 02:39:23,608 AM [node2-writer-42] [DEBUG] RaftStorageCompleter - node2: 1 completion(s) pending 02:39:23,608 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=pekko://test/user/node2, votingState=VOTING]] 02:39:23,608 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - node1 (Follower): Log size is now 2 02:39:23,608 AM [test-pekko.actor.default-dispatcher-16] [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} 02:39:23,608 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - node2: running 1 completion(s) 02:39:23,608 AM [node1-writer-41] [DEBUG] RaftStorageCompleter - node1: 1 completion(s) pending 02:39:23,608 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] ReplicatedLogImpl - node2: persist complete JournaledLogEntry{index=1, term=2, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=true} 02:39:23,608 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: completed 1 commands in 1.183 ms 02:39:23,608 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 02:39:23,608 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: waiting to receive commands 02:39:23,608 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached -1 (of expected -1) 02:39:23,608 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 1, nextIndex: 2 02:39:23,608 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 02:39:23,608 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: -1 02:39:23,608 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - node1: running 1 completion(s) 02:39:23,608 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - node2 (Leader): Setting last applied to 0 02:39:23,608 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to 0 02:39:23,608 AM [test-pekko.actor.default-dispatcher-16] [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} 02:39:23,608 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - node2: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=true]]} 02:39:23,608 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - node2 (Leader): Setting last applied to 1 02:39:23,609 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from 0 to 1 02:39:23,609 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - node2: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 02:39:23,609 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - node2: fakeSnapshot purging log to 0 for term 2 02:39:23,609 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 02:39:23,609 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActorVotingConfigSupport - node2: VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} has been successfully replicated to a majority of followers 02:39:23,608 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - node1: completed synchronized callback AppendReceivedCallback{entry=JournaledLogEntry{index=1, term=2, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=false}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@61f89a3} 02:39:23,608 AM [node2-writer-42] [DEBUG] JournalWriteTask - node2: completed 1 commands in 2.338 ms 02:39:23,609 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - node1: synchronized callbacks after 631.2 μs 02:39:23,609 AM [node2-writer-42] [DEBUG] JournalWriteTask - node2: received 1 commands after 16.83 μs 02:39:23,609 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - node1 (Follower): Commit index set to 1 02:39:23,609 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 1 (of expected -1) 02:39:23,609 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - node1 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 1 02:39:23,609 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - node1 (Follower): Setting last applied to 0 02:39:23,609 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to 0 02:39:23,609 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - node1: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=true]]} 02:39:23,609 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - node1 (Follower): Setting last applied to 1 02:39:23,609 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from 0 to 1 02:39:23,609 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - node1: Applying state for log index 1 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 02:39:23,610 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: received 1 commands after 1.279 ms 02:39:23,610 AM [node2-writer-42] [DEBUG] EntryJournalV1 - node2: updated meta to JournalMeta[replayFrom=1, applyTo=2] 02:39:23,610 AM [node2-writer-42] [DEBUG] RaftStorageCompleter - node2: 1 completion(s) pending 02:39:23,610 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - node2: running 1 completion(s) 02:39:23,610 AM [node2-writer-42] [DEBUG] JournalWriteTask - node2: completed 1 commands in 521.1 μs 02:39:23,610 AM [node2-writer-42] [DEBUG] JournalWriteTask - node2: waiting to receive commands 02:39:23,610 AM [node1-writer-41] [DEBUG] EntryJournalV1 - node1: updated meta to JournalMeta[replayFrom=1, applyTo=2] 02:39:23,610 AM [node1-writer-41] [DEBUG] RaftStorageCompleter - node1: 1 completion(s) pending 02:39:23,610 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: completed 1 commands in 272.3 μs 02:39:23,610 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: waiting to receive commands 02:39:23,610 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - node1: fakeSnapshot purging log to 0 for term 2 02:39:23,610 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - node1: running 1 completion(s) [WARN] [01/17/2026 02:39:23.610] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/node1] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node1, initialSyncDone=true] 02:39:23,723 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 1 (of expected -1) 02:39:23,809 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndOtherLeaderElected ending 02:39:23,809 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower122] 02:39:23,821 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector123#-53261402] 02:39:23,821 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node1] 02:39:23,822 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EnabledRaftStorage - node1: terminating thread VirtualThread[#280,node1-writer-41]/waiting 02:39:23,822 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: received 1 commands after 211.8 ms 02:39:23,822 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: completed 1 commands in 26.49 μs 02:39:23,822 AM [node1-writer-41] [DEBUG] JournalWriteTask - node1: journal writer stopped 02:39:23,823 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - node1: journal closed 02:39:23,823 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - node1: journal closed 02:39:23,823 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 02:39:23,823 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 02:39:23,823 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector124#-501061750] 02:39:23,824 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node2] 02:39:23,824 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EnabledRaftStorage - node2: terminating thread VirtualThread[#281,node2-writer-42]/waiting 02:39:23,824 AM [node2-writer-42] [DEBUG] JournalWriteTask - node2: received 1 commands after 214.6 ms 02:39:23,824 AM [node2-writer-42] [DEBUG] JournalWriteTask - node2: completed 1 commands in 20.28 μs 02:39:23,825 AM [node2-writer-42] [DEBUG] JournalWriteTask - node2: journal writer stopped 02:39:23,825 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - node2: journal closed 02:39:23,825 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - node2: journal closed 02:39:23,825 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 02:39:23,825 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 02:39:23,829 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithInstallSnapshotTimeout starting 02:39:23,831 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server127] [WARN] [01/17/2026 02:39:23.831] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server127]: org.opendaylight.controller.cluster.common.actor.Monitor@32e62b45 02:39:23,832 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:23,832 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: started executor 02:39:23,832 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: started executor 02:39:23,833 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:23,834 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:23,834 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:23,834 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:23,834 AM [new-server-writer-43] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:23,834 AM [new-server-writer-43] [DEBUG] JournalWriteTask - new-server: waiting to receive commands 02:39:23,834 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/junit-11756133565222007024/new-server/TermInfo.properties does not exist 02:39:23,836 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:23,836 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:23,836 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-11756133565222007024/new-server/TermInfo.properties 02:39:23,836 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-11756133565222007024/new-server/journal-v1-1.log 02:39:23,836 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-11756133565222007024/new-server/metadata-v1-1.log 02:39:23,836 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:23,837 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:23,837 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - new-server: Recovery completed in in 2.761 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:23,837 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:23,838 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader128] [WARN] [01/17/2026 02:39:23.838] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader128]: org.opendaylight.controller.cluster.common.actor.Monitor@3f2ca68d 02:39:23,838 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:23,838 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:23,839 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 02:39:23,839 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 02:39:23,839 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:23,839 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:23,839 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:23,840 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:23,840 AM [leader-writer-44] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:23,840 AM [leader-writer-44] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:23,840 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/junit-11756133565222007024/leader/TermInfo.properties does not exist 02:39:23,843 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:23,843 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:23,844 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-11756133565222007024/leader/TermInfo.properties 02:39:23,844 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-11756133565222007024/leader/journal-v1-1.log 02:39:23,844 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-11756133565222007024/leader/metadata-v1-1.log 02:39:23,844 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: no eligible files found 02:39:23,844 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:23,844 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - leader: Recovery completed in in 4.093 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:23,844 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:23,844 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 02:39:23,855 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server127, votingMember=true], state: Idle 02:39:23,855 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server127, votingMember=true] 02:39:23,855 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 02:39:23,855 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 02:39:23,855 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: 0 02:39:23,855 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - leader: support() called 02:39:23,855 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 02:39:23,855 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=bogus] 02:39:23,855 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: Dropping UnInitializedFollowerSnapshotReply for server bogus: server Id doesn't match 02:39:23,856 AM [leader-%d756022] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:23,856 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:23,856 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 02:39:23,856 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - leader: support() called 02:39:23,856 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 02:39:23,856 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 02:39:23,856 AM [leader-%d756023] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-11756133565222007024/leader/snapshot-00000000696AF65B-330D57D5.tmp 02:39:23,856 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 02:39:23,856 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 02:39:23,856 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 02:39:23,856 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server127), Chunk: 1/1 02:39:23,858 AM [leader-%d756023] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-11756133565222007024/leader/snapshot-00000000696AF65B-330D57D5.v1 02:39:23,859 AM [leader-%d756023] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-11756133565222007024/leader/snapshot-00000000696AF65B-330D57D5.v1 02:39:23,859 AM [leader-%d756023] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-11756133565222007024/leader/TermInfo.properties 02:39:23,859 AM [leader-%d756023] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-11756133565222007024/leader/journal-v1-1.log 02:39:23,859 AM [leader-%d756023] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-11756133565222007024/leader/metadata-v1-1.log 02:39:23,859 AM [leader-%d756023] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:23.856512469Z, file=/tmp/junit-11756133565222007024/leader/snapshot-00000000696AF65B-330D57D5.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:23,859 AM [leader-%d756023] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:23,859 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:23,859 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - leader: snapshot is durable as of 2026-01-17T02:39:23.856512469Z 02:39:23,859 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - leader: Snapshot success, discarding journal entries up to 0 02:39:23,859 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 02:39:23,974 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 02:39:23,977 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 02:39:23,977 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 02:39:23,977 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: -1, nextIndex: 0 [WARN] [01/17/2026 02:39:23.977] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/new-server127] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 02:39:24,74 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: handleInstallSnapshotTimeout for new server new-server 02:39:24,74 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: Returning TIMEOUT for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server127, votingMember=true] 02:39:24,74 AM [test-pekko.actor.default-dispatcher-15] [WARN] RaftActorVotingConfigSupport - leader: Timeout occured for new server new-server while installing snapshot 02:39:24,75 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithInstallSnapshotTimeout ending 02:39:24,75 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower125] 02:39:24,86 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector126#-172344192] 02:39:24,87 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server127] 02:39:24,87 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#284,new-server-writer-43]/waiting 02:39:24,87 AM [new-server-writer-43] [DEBUG] JournalWriteTask - new-server: received 1 commands after 253.3 ms 02:39:24,87 AM [new-server-writer-43] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 29.78 μs 02:39:24,87 AM [new-server-writer-43] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:24,88 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:24,88 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:24,88 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:24,88 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:24,88 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader128] 02:39:24,89 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#285,leader-writer-44]/waiting 02:39:24,89 AM [leader-writer-44] [DEBUG] JournalWriteTask - leader: received 1 commands after 249.1 ms 02:39:24,89 AM [leader-writer-44] [DEBUG] JournalWriteTask - leader: completed 1 commands in 19.34 μs 02:39:24,89 AM [leader-writer-44] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:24,89 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:24,89 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal closed 02:39:24,89 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:24,89 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:24,94 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoExistingFollower starting 02:39:24,95 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server131] [WARN] [01/17/2026 02:39:24.096] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server131]: org.opendaylight.controller.cluster.common.actor.Monitor@22b3bd04 02:39:24,96 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:24,96 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: started executor 02:39:24,97 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: started executor 02:39:24,97 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:24,98 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:24,98 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:24,98 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:24,98 AM [new-server-writer-45] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:24,98 AM [new-server-writer-45] [DEBUG] JournalWriteTask - new-server: waiting to receive commands 02:39:24,98 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-16632183794215466239/new-server/TermInfo.properties does not exist 02:39:24,100 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:24,100 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:24,101 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-16632183794215466239/new-server/TermInfo.properties 02:39:24,101 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-16632183794215466239/new-server/journal-v1-1.log 02:39:24,101 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-16632183794215466239/new-server/metadata-v1-1.log 02:39:24,101 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:24,101 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:24,101 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - new-server: Recovery completed in in 2.961 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:24,101 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:24,101 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 02:39:24,102 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader132] [WARN] [01/17/2026 02:39:24.103] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader132]: org.opendaylight.controller.cluster.common.actor.Monitor@1d8b5727 02:39:24,104 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:24,104 AM [test-pekko.actor.default-dispatcher-8] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:24,104 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 02:39:24,104 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: started executor 02:39:24,105 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:24,105 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:24,105 AM [test-pekko.actor.default-dispatcher-8] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:24,105 AM [leader-writer-46] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:24,105 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:24,105 AM [leader-writer-46] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:24,105 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - /tmp/junit-16632183794215466239/leader/TermInfo.properties does not exist 02:39:24,107 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:24,107 AM [test-pekko.actor.default-dispatcher-8] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:24,107 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16632183794215466239/leader/TermInfo.properties 02:39:24,107 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16632183794215466239/leader/journal-v1-1.log 02:39:24,107 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16632183794215466239/leader/metadata-v1-1.log 02:39:24,107 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorage - leader: no eligible files found 02:39:24,108 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:24,108 AM [test-pekko.actor.default-dispatcher-8] [INFO] Recovery - leader: Recovery completed in in 2.167 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:24,108 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:24,108 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 02:39:24,110 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 02:39:24,110 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server131, votingMember=true] 02:39:24,110 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 02:39:24,110 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: 2 02:39:24,110 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - leader: support() called 02:39:24,110 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 02:39:24,110 AM [leader-%d577779] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:24,111 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:24,111 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=1, term=1]/EntryInfo[index=1, term=1] 02:39:24,111 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - leader: support() called 02:39:24,111 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 02:39:24,111 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 02:39:24,111 AM [leader-%d577780] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-16632183794215466239/leader/snapshot-00000000696AF65C-06A26A69.tmp 02:39:24,111 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 02:39:24,111 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 02:39:24,111 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 02:39:24,111 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server131), Chunk: 1/1 02:39:24,111 AM [test-pekko.actor.default-dispatcher-15] [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 02:39:24,113 AM [leader-%d577780] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-16632183794215466239/leader/snapshot-00000000696AF65C-06A26A69.v1 02:39:24,113 AM [leader-%d577780] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16632183794215466239/leader/TermInfo.properties 02:39:24,113 AM [leader-%d577780] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16632183794215466239/leader/journal-v1-1.log 02:39:24,113 AM [leader-%d577780] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-16632183794215466239/leader/snapshot-00000000696AF65C-06A26A69.v1 02:39:24,114 AM [leader-%d577780] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16632183794215466239/leader/metadata-v1-1.log 02:39:24,114 AM [leader-%d577780] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:24.111307369Z, file=/tmp/junit-16632183794215466239/leader/snapshot-00000000696AF65C-06A26A69.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:24,114 AM [leader-%d577780] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:24,114 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:24,114 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - leader: snapshot is durable as of 2026-01-17T02:39:24.111307369Z 02:39:24,114 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: Snapshot success, discarding journal entries up to 2 02:39:24,114 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 02:39:24,114 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 02:39:24,114 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot: InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=1, lastIncludedTerm=1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]} 02:39:24,114 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to 1 02:39:24,114 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 02:39:24,114 AM [test-pekko.actor.default-dispatcher-15] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 02:39:24,115 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 02:39:24,115 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - new-server: support() called [WARN] [01/17/2026 02:39:24.115] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/new-server131] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 02:39:24,115 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 02:39:24,115 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - new-server: last applied journal index prior to persisting applied snapshot: 0 02:39:24,115 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - new-server: support() called 02:39:24,116 AM [new-server-%d476547] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-16632183794215466239/new-server/snapshot-00000000696AF65C-06EBBDB0.tmp 02:39:24,118 AM [new-server-%d476547] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-16632183794215466239/new-server/snapshot-00000000696AF65C-06EBBDB0.v1 02:39:24,118 AM [new-server-%d476547] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-16632183794215466239/new-server/snapshot-00000000696AF65C-06EBBDB0.v1 02:39:24,118 AM [new-server-%d476547] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-16632183794215466239/new-server/TermInfo.properties 02:39:24,118 AM [new-server-%d476547] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-16632183794215466239/new-server/journal-v1-1.log 02:39:24,118 AM [new-server-%d476547] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-16632183794215466239/new-server/metadata-v1-1.log 02:39:24,118 AM [new-server-%d476547] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:24.116112816Z, file=/tmp/junit-16632183794215466239/new-server/snapshot-00000000696AF65C-06EBBDB0.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:24,118 AM [new-server-%d476547] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:24,118 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:24,118 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - new-server: snapshot is durable as of 2026-01-17T02:39:24.116112816Z 02:39:24,118 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - new-server: support() called 02:39:24,118 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - new-server: applySnapshot called 02:39:24,118 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 02:39:24,118 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - new-server: Snapshot success, discarding journal entries up to 0 02:39:24,119 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to 1, nextIndex set to 2 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Persist data index=2 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [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} 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=5ae3ff24-3ab8-4b5c-bb76-fe8267408be9}, logIndex: 2, isSendImmediate: true 02:39:24,119 AM [leader-%d577781] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-16632183794215466239/leader/snapshot-00000000696AF65C-071FADFF.tmp 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower new-server 02:39:24,119 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=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}]} 02:39:24,119 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server131, votingMember=true] 02:39:24,119 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:24,120 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 02:39:24,120 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: 1, entries to be added from: 0 02:39:24,120 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 02:39:24,120 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:24,120 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PeerInfos - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 02:39:24,120 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Log size is now 1 02:39:24,120 AM [new-server-%d476548] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-16632183794215466239/new-server/snapshot-00000000696AF65C-072C0A97.tmp 02:39:24,120 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:24,120 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 1 (of expected 1) 02:39:24,120 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: awaiting more completions to resolve 1 synchronized callback(s) 02:39:24,120 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 2, nextIndex: 3 02:39:24,121 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 0 02:39:24,121 AM [leader-%d577781] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-16632183794215466239/leader/snapshot-00000000696AF65C-071FADFF.v1 02:39:24,121 AM [leader-%d577781] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-16632183794215466239/leader/snapshot-00000000696AF65C-071FADFF.v1 02:39:24,121 AM [leader-%d577781] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16632183794215466239/leader/TermInfo.properties 02:39:24,121 AM [leader-%d577781] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16632183794215466239/leader/journal-v1-1.log 02:39:24,121 AM [leader-%d577781] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-16632183794215466239/leader/snapshot-00000000696AF65C-06A26A69.v1 02:39:24,121 AM [leader-%d577781] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16632183794215466239/leader/metadata-v1-1.log 02:39:24,122 AM [leader-%d577781] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:24.111307369Z, file=/tmp/junit-16632183794215466239/leader/snapshot-00000000696AF65C-06A26A69.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:24,122 AM [leader-%d577781] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:24.119516671Z, file=/tmp/junit-16632183794215466239/leader/snapshot-00000000696AF65C-071FADFF.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:24,122 AM [leader-%d577781] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:24,122 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:24,122 AM [test-pekko.actor.default-dispatcher-8] [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=true} 02:39:24,122 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 02:39:24,122 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 02:39:24,122 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from 1 to 2 02:39:24,122 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Applying state for log index 2 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 02:39:24,122 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 02:39:24,122 AM [test-pekko.actor.default-dispatcher-8] [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 02:39:24,122 AM [new-server-%d476548] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-16632183794215466239/new-server/snapshot-00000000696AF65C-072C0A97.v1 02:39:24,122 AM [new-server-%d476548] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-16632183794215466239/new-server/snapshot-00000000696AF65C-06EBBDB0.v1 02:39:24,122 AM [new-server-%d476548] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-16632183794215466239/new-server/snapshot-00000000696AF65C-072C0A97.v1 02:39:24,122 AM [new-server-%d476548] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-16632183794215466239/new-server/TermInfo.properties 02:39:24,122 AM [new-server-%d476548] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-16632183794215466239/new-server/journal-v1-1.log 02:39:24,122 AM [new-server-%d476548] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-16632183794215466239/new-server/metadata-v1-1.log 02:39:24,122 AM [new-server-%d476548] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:24.116112816Z, file=/tmp/junit-16632183794215466239/new-server/snapshot-00000000696AF65C-06EBBDB0.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:24,122 AM [new-server-%d476548] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:24.120326807Z, file=/tmp/junit-16632183794215466239/new-server/snapshot-00000000696AF65C-072C0A97.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:24,122 AM [new-server-%d476548] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:24,123 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:24,123 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:24,123 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: completed synchronized callback AppendReceivedCallback{entry=JournaledLogEntry{index=2, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@314097b9} 02:39:24,123 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: synchronized callbacks after 2.515 ms [WARN] [01/17/2026 02:39:24.123] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/new-server131] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=true] 02:39:24,223 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Commit index set to 2 02:39:24,223 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 2 (of expected 1) 02:39:24,223 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): 1, lastIndex(): 2 02:39:24,224 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 2 02:39:24,224 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from 1 to 2 02:39:24,224 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - new-server: Applying state for log index 2 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 02:39:24,262 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoExistingFollower ending 02:39:24,262 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower129] 02:39:24,263 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector130#-1548729955] 02:39:24,264 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server131] 02:39:24,264 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#288,new-server-writer-45]/waiting 02:39:24,264 AM [new-server-writer-45] [DEBUG] JournalWriteTask - new-server: received 1 commands after 166.5 ms 02:39:24,264 AM [new-server-writer-45] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 32.06 μs 02:39:24,264 AM [new-server-writer-45] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:24,265 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:24,265 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:24,265 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:24,265 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:24,265 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader132] 02:39:24,266 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#289,leader-writer-46]/waiting 02:39:24,266 AM [leader-writer-46] [DEBUG] JournalWriteTask - leader: received 1 commands after 160.3 ms 02:39:24,266 AM [leader-writer-46] [DEBUG] JournalWriteTask - leader: completed 1 commands in 17.07 μs 02:39:24,266 AM [leader-writer-46] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:24,266 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:24,266 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal closed 02:39:24,266 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:24,266 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:24,266 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector133] 02:39:24,271 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndForwardedToOtherNodeAfterElectionTimeout starting 02:39:24,274 AM [main] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 02:39:24,275 AM [main] [DEBUG] EntryJournalV1 - node1: metadata journal open: replayFrom=1 applyTo=0 02:39:24,276 AM [main] [DEBUG] EntryJournalV1 - node1: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:24,279 AM [main] [DEBUG] EntryJournalV1 - node1: journal closed 02:39:24,281 AM [main] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 02:39:24,281 AM [main] [DEBUG] EntryJournalV1 - node2: metadata journal open: replayFrom=1 applyTo=0 02:39:24,282 AM [main] [DEBUG] EntryJournalV1 - node2: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:24,286 AM [main] [DEBUG] EntryJournalV1 - node2: updated meta to JournalMeta[replayFrom=1, applyTo=2] 02:39:24,286 AM [main] [DEBUG] EntryJournalV1 - node2: journal closed 02:39:24,288 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/node1] [WARN] [01/17/2026 02:39:24.288] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@58f8e4d 02:39:24,289 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - node1: Starting recovery with journal batch size 1000 02:39:24,289 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node1: started executor 02:39:24,289 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node1: started executor 02:39:24,290 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - node1: metadata journal open: replayFrom=1 applyTo=0 02:39:24,291 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - node1: journal open: firstIndex=1 lastIndex=1 replayFrom=1 fileEntries=0 02:39:24,291 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - node1: journal open: applyTo=0 02:39:24,291 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - node1: starting journal recovery 02:39:24,291 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: journal writer started 02:39:24,291 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: waiting to receive commands 02:39:24,291 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 02:39:24,291 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-9036886177697830406/node1/TermInfo.properties 02:39:24,291 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-9036886177697830406/node1/journal-v1-1.log 02:39:24,291 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-9036886177697830406/node1/metadata-v1-1.log 02:39:24,291 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node1: no eligible files found 02:39:24,291 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to -1 02:39:24,291 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] JournalRecovery - node1: applying entries up to 0 02:39:24,292 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] JournalRecovery - node1: recovered journal DefaultLogEntry[index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=false]]}] 02:39:24,292 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PeerInfos - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=NON_VOTING]] 02:39:24,292 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to -1 02:39:24,292 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - node1: Recovery completed in in 1.386 ms: last log index = 0, last log term = 1, napshot index = -1, snapshot term = -1, journal size = 1 02:39:24,292 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - node1: Recovery completed and cannot restore from snapshot 02:39:24,293 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/node2] [WARN] [01/17/2026 02:39:24.294] [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@491909d3 02:39:24,294 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - node2: Starting recovery with journal batch size 1000 02:39:24,294 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node2: started executor 02:39:24,294 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node2: started executor 02:39:24,295 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - node2: metadata journal open: replayFrom=1 applyTo=2 02:39:24,295 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - node2: journal open: firstIndex=1 lastIndex=2 replayFrom=1 fileEntries=0 02:39:24,295 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - node2: journal open: applyTo=2 02:39:24,295 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - node2: starting journal recovery 02:39:24,295 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: journal writer started 02:39:24,295 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: waiting to receive commands 02:39:24,295 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 02:39:24,295 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-9036886177697830406/node2/TermInfo.properties 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-9036886177697830406/node2/journal-v1-1.log 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-9036886177697830406/node2/metadata-v1-1.log 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node2: no eligible files found 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to -1 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] JournalRecovery - node2: applying entries up to 2 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] JournalRecovery - node2: recovered journal DefaultLogEntry[index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=false]]}] 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PeerInfos - node2: Updated server config: isVoting: false, peers: [PeerInfo [id=node1, address=null, votingState=NON_VOTING]] 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] JournalRecovery - node2: recovered journal DefaultLogEntry[index=1, term=1, command=2] 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to 1 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - node2: Recovery completed in in 985.4 μs: last log index = 1, last log term = 1, napshot index = -1, snapshot term = -1, journal size = 2 02:39:24,296 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - node2: Recovery completed and cannot restore from snapshot 02:39:24,297 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]], state: Idle 02:39:24,298 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 02:39:24,298 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - node1: Sending local ElectionTimeout to start leader election 02:39:24,298 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 02:39:24,298 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - node1 (Follower): Received TimeoutNow - switching to Candidate 02:39:24,298 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Candidate - node1 (Candidate): Election: Candidate has following voting peers: [node2] 02:39:24,300 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=2, votedFor=node1 02:39:24,300 AM [test-pekko.actor.default-dispatcher-15] [INFO] Candidate - node1 (Candidate): Starting new election term 2 02:39:24,300 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Candidate - node1 (Candidate): Sending RequestVote{term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1} to peer node2 02:39:24,300 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActorBehavior - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 02:39:24,300 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - node2 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 02:39:24,300 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - node2 (Follower): Cluster state: [] 02:39:24,300 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - node2 (Follower): Candidate in requestVote:RequestVote{term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1} with higher term appears reachable, updating term. 02:39:24,300 AM [test-pekko.actor.default-dispatcher-13] [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 02:39:24,302 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=2, votedFor=null 02:39:24,303 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - node2 (Follower): In requestVote: RequestVote{term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1} - currentTerm: 2, votedFor: null, lastIndex: 1, lastTerm: 1 02:39:24,303 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - node2 (Follower): requestVote returning: RequestVoteReply{term=2, voteGranted=false} 02:39:24,303 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Candidate - node1 (Candidate): RaftRPC message received RequestVoteReply{term=2, voteGranted=false}, my term is 2 02:39:24,303 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Candidate - node1 (Candidate): handleRequestVoteReply: RequestVoteReply{term=2, voteGranted=false}, current voteCount: 1 02:39:24,613 AM [test-pekko.actor.default-dispatcher-5] [WARN] RaftActorVotingConfigSupport - node1: Leader election timed out - cannot apply operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[]] 02:39:24,614 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=NON_VOTING]] 02:39:24,614 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node1: tryToForwardOperationToAnotherServer - servers already visited [] 02:39:24,615 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node1: Found server ActorSelection[Anchor(pekko://test/), Path(/user/node2)] to forward to 02:39:24,615 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node2: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[node1]], state: Idle 02:39:24,615 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 02:39:24,615 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node2: Sending local ElectionTimeout to start leader election 02:39:24,615 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=null, votingState=VOTING]] 02:39:24,615 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node2 (Follower): Received TimeoutNow - switching to Candidate 02:39:24,616 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Candidate - node2 (Candidate): Election: Candidate has following voting peers: [node1] 02:39:24,619 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=3, votedFor=node2 02:39:24,619 AM [test-pekko.actor.default-dispatcher-5] [INFO] Candidate - node2 (Candidate): Starting new election term 3 02:39:24,619 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Candidate - node2 (Candidate): Sending RequestVote{term=3, candidateId=node2, lastLogIndex=1, lastLogTerm=1} to peer node1 02:39:24,619 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActorBehavior - node2 (Follower) :- Switching from behavior Follower to Candidate, election term: 3 02:39:24,619 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - node1 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 02:39:24,619 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - node1 (Follower): Cluster state: [] 02:39:24,619 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - node1 (Follower): Candidate in requestVote:RequestVote{term=3, candidateId=node2, lastLogIndex=1, lastLogTerm=1} with higher term appears reachable, updating term. 02:39:24,619 AM [test-pekko.actor.default-dispatcher-15] [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 02:39:24,621 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=3, votedFor=null 02:39:24,622 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - node1 (Follower): In requestVote: RequestVote{term=3, candidateId=node2, lastLogIndex=1, lastLogTerm=1} - currentTerm: 3, votedFor: null, lastIndex: 0, lastTerm: 1 02:39:24,623 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=3, votedFor=node2 02:39:24,623 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - node1 (Follower): requestVote returning: RequestVoteReply{term=3, voteGranted=true} 02:39:24,623 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Candidate - node2 (Candidate): RaftRPC message received RequestVoteReply{term=3, voteGranted=true}, my term is 3 02:39:24,623 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Candidate - node2 (Candidate): handleRequestVoteReply: RequestVoteReply{term=3, voteGranted=true}, current voteCount: 1 02:39:24,624 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): Election: Leader has following peers: [node1] 02:39:24,624 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:24,624 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActorBehavior - node2 (Candidate) :- Switching from behavior Candidate to Leader, election term: 3 02:39:24,624 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - node2: New leader node2 elected 02:39:24,624 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - node2: New server configuration : [ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]] 02:39:24,624 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - node2: Persist data index=2 term=3 command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 02:39:24,624 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:24,624 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - node1: Last sync leader does not match current leader node2, need to catch up to -1 02:39:24,624 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=ef1775f8-efb4-46e7-85aa-51cde24ebced}, logIndex: 2, isSendImmediate: true 02:39:24,624 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 02:39:24,624 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: received 1 commands after 328.7 ms [WARN] [01/17/2026 02:39:24.624] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/node1] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node1, initialSyncDone=false] 02:39:24,624 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached -1 (of expected -1) [WARN] [01/17/2026 02:39:24.625] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/node1] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node1, initialSyncDone=true] 02:39:24,625 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - node2: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true, node2=true}, serversVisited=[node1]] 02:39:24,625 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 0, nextIndex: 1 02:39:24,625 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - node2: fakeSnapshot purging log to 0 for term 3 02:39:24,625 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: 0 02:39:24,625 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): sendAppendEntries: 1 is present for follower node1 02:39:24,625 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:24,625 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - node2 (Leader): sendAppendEntries: 1 is present for follower node1 02:39:24,625 AM [test-pekko.actor.default-dispatcher-5] [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}]} 02:39:24,625 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): Number of entries to be appended = 2 02:39:24,625 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 02:39:24,625 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): Append entry to log 2 02:39:24,625 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - node1: Append log entry and persist JournaledLogEntry{index=1, term=1, command=2, pending=false} 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [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=true} 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=pekko://test/user/node2, votingState=VOTING]] 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): Log size is now 3 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): Commit index set to 1 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [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} 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 1 (of expected -1) 02:39:24,626 AM [node2-writer-48] [DEBUG] RaftStorageCompleter - node2: 1 completion(s) pending 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 2 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - node1 (Follower): Setting last applied to 0 02:39:24,626 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - node2: running 1 completion(s) 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to 0 02:39:24,626 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=false]]} 02:39:24,626 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] ReplicatedLogImpl - node2: persist complete JournaledLogEntry{index=2, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=true} 02:39:24,626 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: completed 1 commands in 1.515 ms 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - node1 (Follower): Setting last applied to 1 02:39:24,626 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: waiting to receive commands 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from 0 to 1 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node1: Applying state for log index 1 data 2 02:39:24,626 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - node2 (Leader): handleAppendEntriesReply - FollowerLogInformation for node1 updated: matchIndex: 2, nextIndex: 3 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - node1: applyState called: 2 02:39:24,626 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - node2 (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 02:39:24,626 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - node2 (Leader): Setting last applied to 2 02:39:24,626 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from 1 to 2 02:39:24,626 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: received 2 commands after 335.2 ms 02:39:24,626 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - node2: Applying state for log index 2 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - node1: fakeSnapshot purging log to 0 for term 3 02:39:24,626 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - node2: fakeSnapshot purging log to 1 for term 3 02:39:24,626 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - node1: awaiting more completions to resolve 2 synchronized callback(s) 02:39:24,626 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - node2 (Leader): Checking sendAppendEntries for follower node1: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 02:39:24,626 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: received 1 commands after 287.6 μs 02:39:24,626 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 02:39:24,626 AM [node2-writer-48] [DEBUG] EntryJournalV1 - node2: updated meta to JournalMeta[replayFrom=1, applyTo=3] 02:39:24,627 AM [node2-writer-48] [DEBUG] RaftStorageCompleter - node2: 1 completion(s) pending 02:39:24,627 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: completed 1 commands in 327.7 μs 02:39:24,627 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: waiting to receive commands 02:39:24,627 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - node2: running 1 completion(s) 02:39:24,628 AM [node1-writer-47] [DEBUG] RaftStorageCompleter - node1: 2 completion(s) pending 02:39:24,628 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - node1: running 2 completion(s) 02:39:24,628 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: completed 2 commands in 2.287 ms 02:39:24,628 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] ReplicatedLogImpl - node1: persist complete JournaledLogEntry{index=1, term=1, command=2, pending=false} 02:39:24,628 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: received 1 commands after 5.830 μs 02:39:24,628 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - node1: completed synchronized callback AppendReceivedCallback{entry=JournaledLogEntry{index=1, term=1, command=2, pending=false}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@4f35ac0} 02:39:24,628 AM [test-pekko.actor.default-dispatcher-5] [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} 02:39:24,628 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - node1: completed synchronized callback AppendReceivedCallback{entry=JournaledLogEntry{index=2, term=3, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]}, pending=false}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@4f35ac0} 02:39:24,629 AM [node1-writer-47] [DEBUG] EntryJournalV1 - node1: updated meta to JournalMeta[replayFrom=1, applyTo=2] 02:39:24,629 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - node1: synchronized callbacks after 2.436 ms 02:39:24,629 AM [node1-writer-47] [DEBUG] RaftStorageCompleter - node1: 1 completion(s) pending 02:39:24,629 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - node1: running 1 completion(s) 02:39:24,629 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: completed 1 commands in 200.5 μs 02:39:24,629 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: waiting to receive commands 02:39:24,629 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): Commit index set to 2 02:39:24,629 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 2 (of expected -1) 02:39:24,629 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): 1, lastIndex(): 2 02:39:24,629 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - node1 (Follower): Setting last applied to 2 02:39:24,629 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from 1 to 2 02:39:24,629 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node1: Applying state for log index 2 data VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=true], ServerInfo[peerId=node2, isVoting=true]]} 02:39:24,629 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - node1: fakeSnapshot purging log to 1 for term 3 02:39:24,629 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: received 1 commands after 426.6 μs 02:39:24,629 AM [node1-writer-47] [DEBUG] EntryJournalV1 - node1: updated meta to JournalMeta[replayFrom=1, applyTo=3] 02:39:24,629 AM [node1-writer-47] [DEBUG] RaftStorageCompleter - node1: 1 completion(s) pending 02:39:24,629 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: completed 1 commands in 178.1 μs 02:39:24,629 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - node1: running 1 completion(s) 02:39:24,629 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: waiting to receive commands 02:39:24,744 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - node1: Lagging 0 entries behind leader node2 and reached 2 (of expected -1) 02:39:24,827 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndForwardedToOtherNodeAfterElectionTimeout ending 02:39:24,828 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower134] 02:39:24,830 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector135#1452336053] 02:39:24,831 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node1] 02:39:24,831 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - node1: terminating thread VirtualThread[#295,node1-writer-47]/waiting 02:39:24,831 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: received 1 commands after 201.6 ms 02:39:24,831 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: completed 1 commands in 33.25 μs 02:39:24,831 AM [node1-writer-47] [DEBUG] JournalWriteTask - node1: journal writer stopped 02:39:24,832 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - node1: journal closed 02:39:24,832 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - node1: journal closed 02:39:24,832 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 02:39:24,832 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 02:39:24,832 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector136#-603548253] 02:39:24,832 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node2] 02:39:24,833 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - node2: terminating thread VirtualThread[#296,node2-writer-48]/waiting 02:39:24,833 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: received 1 commands after 206.2 ms 02:39:24,833 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: completed 1 commands in 20.34 μs 02:39:24,833 AM [node2-writer-48] [DEBUG] JournalWriteTask - node2: journal writer stopped 02:39:24,833 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - node2: journal closed 02:39:24,833 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - node2: journal closed 02:39:24,833 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 02:39:24,833 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 02:39:24,839 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoConsensusReached starting 02:39:24,840 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server139] [WARN] [01/17/2026 02:39:24.840] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server139]: org.opendaylight.controller.cluster.common.actor.Monitor@4f5ec9f3 02:39:24,841 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:24,841 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: started executor 02:39:24,841 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: started executor 02:39:24,842 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:24,842 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:24,842 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:24,843 AM [new-server-writer-49] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:24,843 AM [new-server-writer-49] [DEBUG] JournalWriteTask - new-server: waiting to receive commands 02:39:24,843 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:24,843 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-6689784544971169496/new-server/TermInfo.properties does not exist 02:39:24,846 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:24,846 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:24,846 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-6689784544971169496/new-server/TermInfo.properties 02:39:24,846 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-6689784544971169496/new-server/journal-v1-1.log 02:39:24,846 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-6689784544971169496/new-server/metadata-v1-1.log 02:39:24,846 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:24,846 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:24,846 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - new-server: Recovery completed in in 3.213 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:24,846 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:24,847 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader140] [WARN] [01/17/2026 02:39:24.847] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader140]: org.opendaylight.controller.cluster.common.actor.Monitor@7eb1f8a7 02:39:24,848 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:24,848 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:24,848 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:24,848 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:24,849 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:24,849 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:24,849 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:24,849 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:24,849 AM [leader-writer-50] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:24,849 AM [leader-writer-50] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:24,849 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-6689784544971169496/leader/TermInfo.properties does not exist 02:39:24,853 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:24,853 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:24,853 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-6689784544971169496/leader/TermInfo.properties 02:39:24,853 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-6689784544971169496/leader/journal-v1-1.log 02:39:24,853 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-6689784544971169496/leader/metadata-v1-1.log 02:39:24,853 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: no eligible files found 02:39:24,853 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:24,853 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Recovery completed in in 3.926 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:24,853 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:24,854 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 02:39:24,960 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server139, votingMember=true], state: Idle 02:39:24,960 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server139, votingMember=true] 02:39:24,960 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 02:39:24,960 AM [test-pekko.actor.default-dispatcher-16] [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 02:39:24,960 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: 0 02:39:24,960 AM [test-pekko.actor.default-dispatcher-16] [INFO] MockRaftActor - leader: support() called 02:39:24,961 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 02:39:24,961 AM [leader-%d611327] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:24,961 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:24,961 AM [test-pekko.actor.default-dispatcher-16] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 02:39:24,961 AM [test-pekko.actor.default-dispatcher-16] [INFO] MockRaftActor - leader: support() called 02:39:24,962 AM [test-pekko.actor.default-dispatcher-16] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 02:39:24,962 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 02:39:24,962 AM [leader-%d611328] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-6689784544971169496/leader/snapshot-00000000696AF65C-395AC866.tmp 02:39:24,962 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 02:39:24,962 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 02:39:24,962 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 02:39:24,962 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server139), Chunk: 1/1 02:39:24,962 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 02:39:24,965 AM [leader-%d611328] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-6689784544971169496/leader/snapshot-00000000696AF65C-395AC866.v1 02:39:24,965 AM [leader-%d611328] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-6689784544971169496/leader/snapshot-00000000696AF65C-395AC866.v1 02:39:24,965 AM [leader-%d611328] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-6689784544971169496/leader/TermInfo.properties 02:39:24,965 AM [leader-%d611328] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-6689784544971169496/leader/journal-v1-1.log 02:39:24,965 AM [leader-%d611328] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-6689784544971169496/leader/metadata-v1-1.log 02:39:24,965 AM [leader-%d611328] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:24.962250854Z, file=/tmp/junit-6689784544971169496/leader/snapshot-00000000696AF65C-395AC866.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:24,965 AM [leader-%d611328] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:24,966 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:24,966 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - leader: snapshot is durable as of 2026-01-17T02:39:24.962250854Z 02:39:24,966 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - leader: Snapshot success, discarding journal entries up to 0 02:39:24,966 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 02:39:24,966 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 02:39:24,966 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]} 02:39:24,966 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 02:39:24,966 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 02:39:24,966 AM [test-pekko.actor.default-dispatcher-16] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 02:39:24,966 AM [test-pekko.actor.default-dispatcher-16] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 02:39:24,966 AM [test-pekko.actor.default-dispatcher-16] [INFO] MockRaftActor - new-server: support() called [WARN] [01/17/2026 02:39:24.967] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/new-server139] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 02:39:24,967 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 02:39:24,967 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - new-server: last applied journal index prior to persisting applied snapshot: 0 02:39:24,967 AM [test-pekko.actor.default-dispatcher-16] [INFO] MockRaftActor - new-server: support() called 02:39:24,968 AM [new-server-%d256608] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-6689784544971169496/new-server/snapshot-00000000696AF65C-39B1AB70.tmp 02:39:24,970 AM [new-server-%d256608] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-6689784544971169496/new-server/snapshot-00000000696AF65C-39B1AB70.v1 02:39:24,970 AM [new-server-%d256608] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-6689784544971169496/new-server/snapshot-00000000696AF65C-39B1AB70.v1 02:39:24,970 AM [new-server-%d256608] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-6689784544971169496/new-server/TermInfo.properties 02:39:24,970 AM [new-server-%d256608] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-6689784544971169496/new-server/journal-v1-1.log 02:39:24,970 AM [new-server-%d256608] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-6689784544971169496/new-server/metadata-v1-1.log 02:39:24,970 AM [new-server-%d256608] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:24.967945072Z, file=/tmp/junit-6689784544971169496/new-server/snapshot-00000000696AF65C-39B1AB70.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:24,971 AM [new-server-%d256608] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:24,971 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:24,971 AM [test-pekko.actor.default-dispatcher-16] [INFO] SnapshotManager - new-server: snapshot is durable as of 2026-01-17T02:39:24.967945072Z 02:39:24,971 AM [test-pekko.actor.default-dispatcher-16] [INFO] MockRaftActor - new-server: support() called 02:39:24,971 AM [test-pekko.actor.default-dispatcher-16] [INFO] MockRaftActor - new-server: applySnapshot called 02:39:24,971 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 02:39:24,971 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - new-server: Snapshot success, discarding journal entries up to 0 02:39:24,971 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 02:39:24,971 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 02:39:24,971 AM [test-pekko.actor.default-dispatcher-15] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to -1, nextIndex set to 0 02:39:24,971 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 02:39:25,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 02:39:25,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 02:39:25,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 02:39:25,10 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:25,11 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=b8db064a-be03-4e5b-9ffa-4c394b315768}, logIndex: 0, isSendImmediate: true 02:39:25,11 AM [leader-%d611329] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-6689784544971169496/leader/snapshot-00000000696AF65D-00A7E69C.tmp 02:39:25,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:25,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:25,12 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:25,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server139, votingMember=true] 02:39:25,13 AM [leader-%d611329] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-6689784544971169496/leader/snapshot-00000000696AF65D-00A7E69C.v1 02:39:25,13 AM [leader-%d611329] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-6689784544971169496/leader/snapshot-00000000696AF65C-395AC866.v1 02:39:25,13 AM [leader-%d611329] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-6689784544971169496/leader/snapshot-00000000696AF65D-00A7E69C.v1 02:39:25,14 AM [leader-%d611329] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-6689784544971169496/leader/TermInfo.properties 02:39:25,14 AM [leader-%d611329] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-6689784544971169496/leader/journal-v1-1.log 02:39:25,14 AM [leader-%d611329] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-6689784544971169496/leader/metadata-v1-1.log 02:39:25,14 AM [leader-%d611329] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:24.962250854Z, file=/tmp/junit-6689784544971169496/leader/snapshot-00000000696AF65C-395AC866.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:25,14 AM [leader-%d611329] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:25.011003548Z, file=/tmp/junit-6689784544971169496/leader/snapshot-00000000696AF65D-00A7E69C.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:25,14 AM [leader-%d611329] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:25,14 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:25,14 AM [test-pekko.actor.default-dispatcher-15] [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=true} 02:39:25,60 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=, votingMember=false], state: Persisting 02:39:25,61 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: Server operation already in progress - queueing AddServer [newServerId=new-server2, newServerAddress=, votingMember=false] 02:39:25,73 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:25,194 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:25,194 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:25,313 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:25,314 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=-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}]} 02:39:25,433 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:25,434 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:25,553 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:25,554 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:25,673 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:25,673 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:25,793 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:25,794 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=-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}]} 02:39:25,913 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:25,913 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=-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}]} 02:39:27,23 AM [test-pekko.actor.default-dispatcher-16] [WARN] RaftActorVotingConfigSupport - leader: Timeout occured while replicating the new server configuration for new-server 02:39:27,23 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Returning PRIOR_REQUEST_CONSENSUS_TIMEOUT for operation AddServer [newServerId=new-server2, newServerAddress=, votingMember=false] 02:39:27,24 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=, votingMember=false], state: Persisting 02:39:27,24 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Returning PRIOR_REQUEST_CONSENSUS_TIMEOUT for operation AddServer [newServerId=new-server2, newServerAddress=, votingMember=false] 02:39:27,24 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoConsensusReached ending 02:39:27,25 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower137] 02:39:27,36 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector138#-1202518605] 02:39:27,37 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server139] 02:39:27,37 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#299,new-server-writer-49]/waiting 02:39:27,37 AM [new-server-writer-49] [DEBUG] JournalWriteTask - new-server: received 1 commands after 2.195 s 02:39:27,37 AM [new-server-writer-49] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 36.18 μs 02:39:27,37 AM [new-server-writer-49] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:27,38 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:27,38 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:27,38 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:27,38 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:27,38 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader140] 02:39:27,38 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#300,leader-writer-50]/waiting 02:39:27,39 AM [leader-writer-50] [DEBUG] JournalWriteTask - leader: received 1 commands after 2.189 s 02:39:27,39 AM [leader-writer-50] [DEBUG] JournalWriteTask - leader: completed 1 commands in 20.97 μs 02:39:27,39 AM [leader-writer-50] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:27,39 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:27,39 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal closed 02:39:27,39 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:27,39 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:27,39 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector141] 02:39:27,40 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-serverCollector142] 02:39:27,45 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerLeaderWithNoFollowers starting 02:39:27,46 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader144] [WARN] [01/17/2026 02:39:27.046] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader144]: org.opendaylight.controller.cluster.common.actor.Monitor@7ca9868d 02:39:27,47 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:27,47 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:27,47 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:27,47 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:27,48 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:27,48 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:27,48 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:27,48 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:27,48 AM [leader-writer-51] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:27,48 AM [leader-writer-51] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:27,48 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-10531239716027233619/leader/TermInfo.properties does not exist 02:39:27,51 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:27,52 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:27,52 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10531239716027233619/leader/TermInfo.properties 02:39:27,52 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10531239716027233619/leader/journal-v1-1.log 02:39:27,52 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10531239716027233619/leader/metadata-v1-1.log 02:39:27,52 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: no eligible files found 02:39:27,52 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:27,52 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Recovery completed in in 3.549 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:27,52 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:27,52 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 02:39:27,63 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onRemoveServer: RemoveServer{serverId='leader'}, state: Idle 02:39:27,63 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerLeaderWithNoFollowers ending 02:39:27,63 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower143] 02:39:27,74 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader144] 02:39:27,75 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#305,leader-writer-51]/waiting 02:39:27,75 AM [leader-writer-51] [DEBUG] JournalWriteTask - leader: received 1 commands after 26.62 ms 02:39:27,75 AM [leader-writer-51] [DEBUG] JournalWriteTask - leader: completed 1 commands in 25.14 μs 02:39:27,75 AM [leader-writer-51] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:27,75 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:27,75 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal closed 02:39:27,75 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:27,75 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:27,79 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithLeaderChangeBeforePriorSnapshotComplete starting 02:39:27,80 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server147] [WARN] [01/17/2026 02:39:27.081] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server147]: org.opendaylight.controller.cluster.common.actor.Monitor@e8f8916 02:39:27,82 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:27,82 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: started executor 02:39:27,82 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: started executor 02:39:27,83 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:27,84 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:27,84 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:27,84 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:27,84 AM [new-server-writer-52] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:27,84 AM [new-server-writer-52] [DEBUG] JournalWriteTask - new-server: waiting to receive commands 02:39:27,84 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-9847118123045044671/new-server/TermInfo.properties does not exist 02:39:27,87 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:27,87 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:27,87 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-9847118123045044671/new-server/TermInfo.properties 02:39:27,87 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-9847118123045044671/new-server/journal-v1-1.log 02:39:27,87 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-9847118123045044671/new-server/metadata-v1-1.log 02:39:27,87 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:27,87 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:27,87 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - new-server: Recovery completed in in 3.170 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:27,87 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:27,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader148] [WARN] [01/17/2026 02:39:27.088] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader148]: org.opendaylight.controller.cluster.common.actor.Monitor@45e0ebb9 02:39:27,89 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:27,89 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:27,89 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:27,89 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:27,90 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:27,91 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:27,91 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:27,91 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:27,91 AM [leader-writer-53] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:27,91 AM [leader-writer-53] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:27,91 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-9847118123045044671/leader/TermInfo.properties does not exist 02:39:27,93 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:27,93 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:27,93 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-9847118123045044671/leader/TermInfo.properties 02:39:27,93 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-9847118123045044671/leader/journal-v1-1.log 02:39:27,93 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-9847118123045044671/leader/metadata-v1-1.log 02:39:27,94 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: no eligible files found 02:39:27,94 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:27,94 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Recovery completed in in 2.781 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:27,94 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:27,94 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 02:39:27,96 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Take a snapshot of current state. lastReplicatedLog is null and replicatedToAllIndex is -1 02:39:27,96 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 02:39:27,96 AM [test-pekko.actor.default-dispatcher-16] [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] 02:39:27,96 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - leader: captured snapshot at lastSequenceNumber: 0 02:39:27,96 AM [test-pekko.actor.default-dispatcher-16] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 02:39:27,96 AM [test-pekko.actor.default-dispatcher-16] [INFO] MockRaftActor - leader: support() called 02:39:27,97 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - leader: user triggered or root overwrite snapshot encountered, trimming log up to last applied index -1 02:39:27,97 AM [test-pekko.actor.default-dispatcher-16] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 02:39:27,97 AM [leader-%d398405] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-9847118123045044671/leader/snapshot-00000000696AF65F-05CAD82E.tmp 02:39:27,99 AM [leader-%d398405] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-9847118123045044671/leader/snapshot-00000000696AF65F-05CAD82E.v1 02:39:27,100 AM [leader-%d398405] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-9847118123045044671/leader/snapshot-00000000696AF65F-05CAD82E.v1 02:39:27,100 AM [leader-%d398405] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-9847118123045044671/leader/TermInfo.properties 02:39:27,100 AM [leader-%d398405] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-9847118123045044671/leader/journal-v1-1.log 02:39:27,100 AM [leader-%d398405] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-9847118123045044671/leader/metadata-v1-1.log 02:39:27,100 AM [leader-%d398405] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:27.097179694Z, file=/tmp/junit-9847118123045044671/leader/snapshot-00000000696AF65F-05CAD82E.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:27,100 AM [leader-%d398405] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:27,100 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:27,107 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server147, votingMember=true], state: Idle 02:39:27,107 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server147, votingMember=true] 02:39:27,107 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - leader: captureToInstall should not be called in state PersistCapture[lastJournalIndex=0, request=CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true]] 02:39:27,107 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Snapshot already in progress - waiting for completion 02:39:27,210 AM [main] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:27,210 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:27,210 AM [test-pekko.actor.default-dispatcher-16] [INFO] SnapshotManager - leader: snapshot is durable as of 2026-01-17T02:39:27.097179694Z 02:39:27,210 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SnapshotManager - leader: Snapshot success, discarding journal entries up to 0 02:39:27,210 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onSnapshotComplete 02:39:27,210 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: No longer the leader 02:39:27,210 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 02:39:27,211 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: handleInstallSnapshotTimeout for new server new-server 02:39:27,211 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Returning NO_LEADER for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server147, votingMember=true] 02:39:27,211 AM [test-pekko.actor.default-dispatcher-16] [WARN] RaftActorVotingConfigSupport - leader: Timeout occured for new server new-server while waiting for prior snapshot to complete 02:39:27,211 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithLeaderChangeBeforePriorSnapshotComplete ending 02:39:27,211 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower145] 02:39:27,223 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector146#1598365169] 02:39:27,223 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server147] 02:39:27,223 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#306,new-server-writer-52]/waiting 02:39:27,223 AM [new-server-writer-52] [DEBUG] JournalWriteTask - new-server: received 1 commands after 139.5 ms 02:39:27,224 AM [new-server-writer-52] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 47.21 μs 02:39:27,224 AM [new-server-writer-52] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:27,224 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:27,224 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:27,224 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:27,224 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:27,224 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader148] 02:39:27,225 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#307,leader-writer-53]/waiting 02:39:27,225 AM [leader-writer-53] [DEBUG] JournalWriteTask - leader: received 1 commands after 134.0 ms 02:39:27,225 AM [leader-writer-53] [DEBUG] JournalWriteTask - leader: completed 1 commands in 20.20 μs 02:39:27,225 AM [leader-writer-53] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:27,225 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:27,225 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal closed 02:39:27,225 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:27,225 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:27,230 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServersAsNonVoting starting 02:39:27,231 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server151] [WARN] [01/17/2026 02:39:27.231] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server151]: org.opendaylight.controller.cluster.common.actor.Monitor@41eb5fc7 02:39:27,232 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:27,232 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: started executor 02:39:27,232 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: started executor 02:39:27,233 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:27,233 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:27,233 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:27,234 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:27,234 AM [new-server-writer-54] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:27,234 AM [new-server-writer-54] [DEBUG] JournalWriteTask - new-server: waiting to receive commands 02:39:27,234 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-10403304069733203096/new-server/TermInfo.properties does not exist 02:39:27,236 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:27,236 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:27,236 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10403304069733203096/new-server/TermInfo.properties 02:39:27,236 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10403304069733203096/new-server/journal-v1-1.log 02:39:27,237 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10403304069733203096/new-server/metadata-v1-1.log 02:39:27,237 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:27,237 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:27,237 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - new-server: Recovery completed in in 3.033 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:27,237 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:27,238 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader152] [WARN] [01/17/2026 02:39:27.238] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader152]: org.opendaylight.controller.cluster.common.actor.Monitor@43123c53 02:39:27,238 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:27,238 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:27,238 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:27,238 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:27,239 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:27,239 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:27,239 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:27,239 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:27,239 AM [leader-writer-55] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:27,239 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-10403304069733203096/leader/TermInfo.properties does not exist 02:39:27,239 AM [leader-writer-55] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:27,241 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:27,241 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:27,242 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10403304069733203096/leader/TermInfo.properties 02:39:27,242 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10403304069733203096/leader/journal-v1-1.log 02:39:27,242 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10403304069733203096/leader/metadata-v1-1.log 02:39:27,242 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: no eligible files found 02:39:27,242 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:27,242 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Recovery completed in in 2.236 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:27,242 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:27,242 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 02:39:27,254 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server151, votingMember=false], state: Idle 02:39:27,254 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server151, votingMember=false] 02:39:27,254 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: New follower is non-voting - directly persisting new server configuration 02:39:27,254 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 02:39:27,254 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 02:39:27,254 AM [test-pekko.actor.default-dispatcher-16] [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} 02:39:27,254 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=3eb43792-f480-43bd-bb08-4bf4e03e6296}, logIndex: 0, isSendImmediate: true 02:39:27,254 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 02:39:27,254 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 02:39:27,254 AM [leader-%d618417] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-10403304069733203096/leader/snapshot-00000000696AF65F-0F2E23C3.tmp 02:39:27,254 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 02:39:27,255 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:27,255 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server151, votingMember=false] 02:39:27,255 AM [test-pekko.actor.default-dispatcher-15] [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 02:39:27,255 AM [test-pekko.actor.default-dispatcher-16] [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 02:39:27,257 AM [leader-%d618417] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-10403304069733203096/leader/snapshot-00000000696AF65F-0F2E23C3.v1 02:39:27,257 AM [leader-%d618417] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-10403304069733203096/leader/snapshot-00000000696AF65F-0F2E23C3.v1 02:39:27,257 AM [leader-%d618417] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10403304069733203096/leader/TermInfo.properties 02:39:27,257 AM [leader-%d618417] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10403304069733203096/leader/journal-v1-1.log 02:39:27,257 AM [leader-%d618417] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10403304069733203096/leader/metadata-v1-1.log 02:39:27,258 AM [leader-%d618417] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:27.254682051Z, file=/tmp/junit-10403304069733203096/leader/snapshot-00000000696AF65F-0F2E23C3.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:27,258 AM [leader-%d618417] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:27,258 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:27,258 AM [test-pekko.actor.default-dispatcher-16] [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=true} 02:39:27,258 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 02:39:27,258 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to -1 02:39:27,258 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: -1, nextIndex: 0 02:39:27,259 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:27,259 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:27,259 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=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}]} [WARN] [01/17/2026 02:39:27.259] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/new-server151] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Append entry to log VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PeerInfos - new-server: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 02:39:27,259 AM [new-server-%d642043] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-10403304069733203096/new-server/snapshot-00000000696AF65F-0F79DCE8.tmp 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Log size is now 1 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Commit index set to 0 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:27,259 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 02:39:27,260 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 0 02:39:27,260 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to 0 02:39:27,260 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 0, nextIndex: 1 02:39:27,260 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]} 02:39:27,260 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:27,260 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: awaiting more completions to resolve 1 synchronized callback(s) 02:39:27,261 AM [new-server-%d642043] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-10403304069733203096/new-server/snapshot-00000000696AF65F-0F79DCE8.v1 02:39:27,262 AM [new-server-%d642043] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-10403304069733203096/new-server/snapshot-00000000696AF65F-0F79DCE8.v1 02:39:27,262 AM [new-server-%d642043] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10403304069733203096/new-server/TermInfo.properties 02:39:27,262 AM [new-server-%d642043] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10403304069733203096/new-server/journal-v1-1.log 02:39:27,262 AM [new-server-%d642043] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10403304069733203096/new-server/metadata-v1-1.log 02:39:27,262 AM [new-server-%d642043] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:27.259644648Z, file=/tmp/junit-10403304069733203096/new-server/snapshot-00000000696AF65F-0F79DCE8.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:27,262 AM [new-server-%d642043] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:27,262 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:27,262 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:27,262 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: completed synchronized callback AppendReceivedCallback{entry=JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@52c33a0} 02:39:27,262 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: synchronized callbacks after 2.607 ms [WARN] [01/17/2026 02:39:27.263] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/new-server151] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=true] 02:39:27,374 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:27,493 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:27,614 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:27,734 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:27,809 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower149, votingMember=false], state: Idle 02:39:27,809 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower149, votingMember=false] 02:39:27,809 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: New follower is non-voting - directly persisting new server configuration 02:39:27,809 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=false], ServerInfo[peerId=new-server2, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 02:39:27,809 AM [test-pekko.actor.default-dispatcher-16] [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]]} 02:39:27,810 AM [test-pekko.actor.default-dispatcher-16] [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} 02:39:27,810 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=86ea2cf4-2a20-4d1d-aa8f-16a230a5129f}, logIndex: 1, isSendImmediate: true 02:39:27,810 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 02:39:27,810 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from 0 to 1 02:39:27,810 AM [leader-%d618418] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-10403304069733203096/leader/snapshot-00000000696AF65F-304B25A1.tmp 02:39:27,810 AM [test-pekko.actor.default-dispatcher-16] [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]]} 02:39:27,810 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:27,810 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower new-server 02:39:27,810 AM [test-pekko.actor.default-dispatcher-16] [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}]} 02:39:27,810 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server2: active: false, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:27,811 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 02:39:27,811 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:27,811 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 02:39:27,811 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server2, newServerAddress=pekko://test/user/follower149, votingMember=false] 02:39:27,811 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 02:39:27,811 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:27,811 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:27,811 AM [test-pekko.actor.default-dispatcher-16] [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 02:39:27,811 AM [new-server-%d642044] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-10403304069733203096/new-server/snapshot-00000000696AF65F-305F8B4D.tmp 02:39:27,812 AM [test-pekko.actor.default-dispatcher-5] [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@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.trimLog(SnapshotManager.java:663) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.performSnapshotWithoutCapture(RaftActorBehavior.java:438) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:222) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.appendEntries(RaftActorBehavior.java:152) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:375) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:502) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.UntypedAbstractActor$$anon$1.applyOrElse(AbstractActor.scala:341) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive(Actor.scala:547) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive$(Actor.scala:481) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.AbstractActor.aroundReceive(AbstractActor.scala:229) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.ActorCell.receiveMessage(ActorCell.scala:590) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.ActorCell.invoke(ActorCell.scala:557) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.processMailbox(Mailbox.scala:273) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.run(Mailbox.scala:234) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.exec(Mailbox.scala:246) 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) 02:39:27,812 AM [test-pekko.actor.default-dispatcher-15] [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]] [ERROR] [01/17/2026 02:39:27.811] [test-pekko.actor.internal-dispatcher-3] [pekko://test/user/follower149] 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@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.trimLog(SnapshotManager.java:663) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.performSnapshotWithoutCapture(RaftActorBehavior.java:438) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleAppendEntries(Follower.java:222) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.appendEntries(RaftActorBehavior.java:152) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:375) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Follower.handleMessage(Follower.java:502) at org.opendaylight.controller.cluster.raft@12.0.4-SNAPSHOT/org.opendaylight.controller.cluster.raft.ForwardMessageToBehaviorActor.onReceive(ForwardMessageToBehaviorActor.java:25) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.UntypedAbstractActor$$anon$1.applyOrElse(AbstractActor.scala:341) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive(Actor.scala:547) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.Actor.aroundReceive$(Actor.scala:481) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.AbstractActor.aroundReceive(AbstractActor.scala:229) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.ActorCell.receiveMessage(ActorCell.scala:590) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.actor.ActorCell.invoke(ActorCell.scala:557) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.processMailbox(Mailbox.scala:273) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.run(Mailbox.scala:234) at org.opendaylight.controller.repackaged.pekko@12.0.4-SNAPSHOT/org.apache.pekko.dispatch.Mailbox.exec(Mailbox.scala:246) 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) 02:39:27,812 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Log size is now 2 02:39:27,812 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Commit index set to 1 02:39:27,812 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:27,812 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 02:39:27,812 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server2 02:39:27,813 AM [test-pekko.actor.default-dispatcher-16] [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}]} 02:39:27,813 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 1, nextIndex: 2 02:39:27,813 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 02:39:27,813 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 1 02:39:27,813 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:27,813 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from 0 to 1 02:39:27,813 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:27,813 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: awaiting more completions to resolve 1 synchronized callback(s) 02:39:27,814 AM [new-server-%d642044] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-10403304069733203096/new-server/snapshot-00000000696AF65F-305F8B4D.v1 02:39:27,814 AM [leader-%d618418] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-10403304069733203096/leader/snapshot-00000000696AF65F-304B25A1.v1 02:39:27,814 AM [leader-%d618418] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-10403304069733203096/leader/snapshot-00000000696AF65F-0F2E23C3.v1 02:39:27,814 AM [new-server-%d642044] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-10403304069733203096/new-server/snapshot-00000000696AF65F-305F8B4D.v1 02:39:27,814 AM [leader-%d618418] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-10403304069733203096/leader/snapshot-00000000696AF65F-304B25A1.v1 02:39:27,814 AM [new-server-%d642044] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-10403304069733203096/new-server/snapshot-00000000696AF65F-0F79DCE8.v1 02:39:27,815 AM [leader-%d618418] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10403304069733203096/leader/TermInfo.properties 02:39:27,815 AM [leader-%d618418] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10403304069733203096/leader/journal-v1-1.log 02:39:27,815 AM [new-server-%d642044] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10403304069733203096/new-server/TermInfo.properties 02:39:27,815 AM [leader-%d618418] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10403304069733203096/leader/metadata-v1-1.log 02:39:27,815 AM [new-server-%d642044] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10403304069733203096/new-server/journal-v1-1.log 02:39:27,815 AM [new-server-%d642044] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10403304069733203096/new-server/metadata-v1-1.log 02:39:27,815 AM [leader-%d618418] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:27.254682051Z, file=/tmp/junit-10403304069733203096/leader/snapshot-00000000696AF65F-0F2E23C3.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:27,815 AM [leader-%d618418] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:27.810231201Z, file=/tmp/junit-10403304069733203096/leader/snapshot-00000000696AF65F-304B25A1.v1, size=100, entryCompress=NONE, stateCompress=NONE} 02:39:27,815 AM [leader-%d618418] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:27,815 AM [new-server-%d642044] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:27.259644648Z, file=/tmp/junit-10403304069733203096/new-server/snapshot-00000000696AF65F-0F79DCE8.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:27,815 AM [new-server-%d642044] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:27.811567949Z, file=/tmp/junit-10403304069733203096/new-server/snapshot-00000000696AF65F-305F8B4D.v1, size=100, entryCompress=NONE, stateCompress=NONE} 02:39:27,815 AM [new-server-%d642044] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:27,815 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:27,815 AM [test-pekko.actor.default-dispatcher-16] [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=true} 02:39:27,815 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:27,815 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:27,815 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@45c6ef94} 02:39:27,815 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: synchronized callbacks after 2.079 ms 02:39:27,862 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServersAsNonVoting ending 02:39:27,862 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower149] 02:39:27,874 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector150#-1146049309] 02:39:27,874 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server151] 02:39:27,874 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#310,new-server-writer-54]/waiting 02:39:27,875 AM [new-server-writer-54] [DEBUG] JournalWriteTask - new-server: received 1 commands after 640.9 ms 02:39:27,875 AM [new-server-writer-54] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 33.91 μs 02:39:27,875 AM [new-server-writer-54] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:27,875 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:27,875 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:27,875 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:27,875 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:27,876 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader152] 02:39:27,876 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#311,leader-writer-55]/waiting 02:39:27,876 AM [leader-writer-55] [DEBUG] JournalWriteTask - leader: received 1 commands after 636.4 ms 02:39:27,876 AM [leader-writer-55] [DEBUG] JournalWriteTask - leader: completed 1 commands in 21.88 μs 02:39:27,876 AM [leader-writer-55] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:27,876 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:27,876 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal closed 02:39:27,876 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:27,876 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:27,877 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector153] 02:39:27,882 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithPriorSnapshotInProgress starting 02:39:27,884 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server156] [WARN] [01/17/2026 02:39:27.884] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server156]: org.opendaylight.controller.cluster.common.actor.Monitor@580f9e1 02:39:27,885 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:27,885 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: started executor 02:39:27,885 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: started executor 02:39:27,886 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:27,886 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:27,886 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:27,886 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:27,886 AM [new-server-writer-56] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:27,886 AM [new-server-writer-56] [DEBUG] JournalWriteTask - new-server: waiting to receive commands 02:39:27,886 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-5352519623537623000/new-server/TermInfo.properties does not exist 02:39:27,889 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:27,889 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:27,889 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-5352519623537623000/new-server/TermInfo.properties 02:39:27,889 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-5352519623537623000/new-server/journal-v1-1.log 02:39:27,889 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-5352519623537623000/new-server/metadata-v1-1.log 02:39:27,889 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:27,889 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:27,889 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - new-server: Recovery completed in in 2.747 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:27,889 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:27,890 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader157] [WARN] [01/17/2026 02:39:27.890] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader157]: org.opendaylight.controller.cluster.common.actor.Monitor@580e070e 02:39:27,891 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:27,892 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:27,892 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:27,892 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:27,893 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:27,893 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:27,893 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:27,894 AM [leader-writer-57] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:27,894 AM [leader-writer-57] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:27,894 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:27,894 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-5352519623537623000/leader/TermInfo.properties does not exist 02:39:27,896 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:27,896 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:27,896 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/TermInfo.properties 02:39:27,896 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/journal-v1-1.log 02:39:27,896 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/metadata-v1-1.log 02:39:27,896 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: no eligible files found 02:39:27,896 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:27,896 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Recovery completed in in 2.440 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:27,896 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:27,896 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 02:39:27,898 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: Take a snapshot of current state. lastReplicatedLog is null and replicatedToAllIndex is -1 02:39:27,898 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 02:39:27,898 AM [test-pekko.actor.default-dispatcher-15] [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] 02:39:27,898 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - leader: captured snapshot at lastSequenceNumber: 0 02:39:27,898 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 02:39:27,898 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - leader: support() called 02:39:27,898 AM [leader-%d504500] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF65F-358CB350.tmp 02:39:27,898 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - leader: user triggered or root overwrite snapshot encountered, trimming log up to last applied index -1 02:39:27,898 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 02:39:27,900 AM [leader-%d504500] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF65F-358CB350.v1 02:39:27,900 AM [leader-%d504500] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF65F-358CB350.v1 02:39:27,900 AM [leader-%d504500] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/TermInfo.properties 02:39:27,900 AM [leader-%d504500] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/journal-v1-1.log 02:39:27,900 AM [leader-%d504500] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/metadata-v1-1.log 02:39:27,900 AM [leader-%d504500] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:27.898413392Z, file=/tmp/junit-5352519623537623000/leader/snapshot-00000000696AF65F-358CB350.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:27,900 AM [leader-%d504500] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:27,900 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:28,9 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server156, votingMember=true], state: Idle 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server156, votingMember=true] 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - leader: captureToInstall should not be called in state PersistCapture[lastJournalIndex=0, request=CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true]] 02:39:28,10 AM [main] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: Snapshot already in progress - waiting for completion 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - leader: snapshot is durable as of 2026-01-17T02:39:27.898413392Z 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - leader: Snapshot success, discarding journal entries up to 0 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: onSnapshotComplete 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [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 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: 0 02:39:28,10 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - leader: support() called 02:39:28,11 AM [leader-%d504501] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:28,11 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 02:39:28,11 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 02:39:28,11 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:28,11 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 02:39:28,11 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - leader: support() called 02:39:28,11 AM [leader-%d504502] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF660-00B24129.tmp 02:39:28,12 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 02:39:28,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 02:39:28,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 02:39:28,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 02:39:28,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 02:39:28,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server156), Chunk: 1/1 02:39:28,12 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 02:39:28,16 AM [leader-%d504502] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF660-00B24129.v1 02:39:28,16 AM [leader-%d504502] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF65F-358CB350.v1 02:39:28,16 AM [leader-%d504502] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF660-00B24129.v1 02:39:28,16 AM [leader-%d504502] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/TermInfo.properties 02:39:28,16 AM [leader-%d504502] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/journal-v1-1.log 02:39:28,16 AM [leader-%d504502] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/metadata-v1-1.log 02:39:28,16 AM [leader-%d504502] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:27.898413392Z, file=/tmp/junit-5352519623537623000/leader/snapshot-00000000696AF65F-358CB350.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:28,16 AM [leader-%d504502] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.011682089Z, file=/tmp/junit-5352519623537623000/leader/snapshot-00000000696AF660-00B24129.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:28,17 AM [leader-%d504502] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:28,17 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:28,17 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 02:39:28,17 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - leader: snapshot is durable as of 2026-01-17T02:39:28.011682089Z 02:39:28,17 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]} 02:39:28,17 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - leader: Snapshot success, discarding journal entries up to 0 02:39:28,17 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 02:39:28,17 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 02:39:28,17 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 02:39:28,17 AM [test-pekko.actor.default-dispatcher-8] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 02:39:28,17 AM [test-pekko.actor.default-dispatcher-8] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 02:39:28,17 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - new-server: support() called [WARN] [01/17/2026 02:39:28.017] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/new-server156] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 02:39:28,18 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 02:39:28,18 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SnapshotManager - new-server: last applied journal index prior to persisting applied snapshot: 0 02:39:28,18 AM [test-pekko.actor.default-dispatcher-8] [INFO] MockRaftActor - new-server: support() called 02:39:28,19 AM [new-server-%d331318] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-5352519623537623000/new-server/snapshot-00000000696AF660-011F9D7E.tmp 02:39:28,20 AM [new-server-%d331318] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-5352519623537623000/new-server/snapshot-00000000696AF660-011F9D7E.v1 02:39:28,20 AM [new-server-%d331318] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-5352519623537623000/new-server/snapshot-00000000696AF660-011F9D7E.v1 02:39:28,21 AM [new-server-%d331318] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-5352519623537623000/new-server/TermInfo.properties 02:39:28,21 AM [new-server-%d331318] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-5352519623537623000/new-server/journal-v1-1.log 02:39:28,21 AM [new-server-%d331318] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-5352519623537623000/new-server/metadata-v1-1.log 02:39:28,21 AM [new-server-%d331318] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.018849150Z, file=/tmp/junit-5352519623537623000/new-server/snapshot-00000000696AF660-011F9D7E.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:28,21 AM [new-server-%d331318] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:28,21 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:28,21 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - new-server: snapshot is durable as of 2026-01-17T02:39:28.018849150Z 02:39:28,21 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - new-server: support() called 02:39:28,21 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - new-server: applySnapshot called 02:39:28,21 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 02:39:28,22 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - new-server: Snapshot success, discarding journal entries up to 0 02:39:28,22 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 02:39:28,22 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 02:39:28,22 AM [test-pekko.actor.default-dispatcher-8] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to -1, nextIndex set to 0 02:39:28,22 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 02:39:28,22 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 02:39:28,22 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 02:39:28,22 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActor - leader: Persist data index=0 term=1 command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 02:39:28,22 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=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 02:39:28,22 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=4e56da98-6ac6-4bd1-9730-8a4199c23286}, logIndex: 0, isSendImmediate: true 02:39:28,22 AM [leader-%d504503] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF660-01585C7D.tmp 02:39:28,22 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,22 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower new-server 02:39:28,22 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=true}]} 02:39:28,22 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server156, votingMember=true] 02:39:28,22 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}]} 02:39:28,23 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 02:39:28,23 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 02:39:28,23 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]]} 02:39:28,23 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} 02:39:28,23 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PeerInfos - new-server: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=null, votingState=VOTING]] 02:39:28,23 AM [new-server-%d331319] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-5352519623537623000/new-server/snapshot-00000000696AF660-01634616.tmp 02:39:28,23 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - new-server (Follower): Log size is now 1 02:39:28,23 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} 02:39:28,23 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 02:39:28,23 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - new-server: awaiting more completions to resolve 1 synchronized callback(s) 02:39:28,23 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 0, nextIndex: 1 02:39:28,23 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 02:39:28,24 AM [leader-%d504503] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF660-01585C7D.v1 02:39:28,24 AM [leader-%d504503] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF660-00B24129.v1 02:39:28,24 AM [leader-%d504503] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-5352519623537623000/leader/snapshot-00000000696AF660-01585C7D.v1 02:39:28,25 AM [leader-%d504503] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/TermInfo.properties 02:39:28,25 AM [leader-%d504503] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/journal-v1-1.log 02:39:28,25 AM [leader-%d504503] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-5352519623537623000/leader/metadata-v1-1.log 02:39:28,25 AM [leader-%d504503] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.011682089Z, file=/tmp/junit-5352519623537623000/leader/snapshot-00000000696AF660-00B24129.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:28,25 AM [leader-%d504503] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.022568061Z, file=/tmp/junit-5352519623537623000/leader/snapshot-00000000696AF660-01585C7D.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:28,25 AM [leader-%d504503] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:28,25 AM [new-server-%d331319] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-5352519623537623000/new-server/snapshot-00000000696AF660-01634616.v1 02:39:28,25 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:28,25 AM [test-pekko.actor.default-dispatcher-15] [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=true} 02:39:28,25 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 02:39:28,25 AM [new-server-%d331319] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-5352519623537623000/new-server/snapshot-00000000696AF660-01634616.v1 02:39:28,25 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 02:39:28,25 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 02:39:28,25 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: Applying state for log index 0 data VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]} 02:39:28,25 AM [new-server-%d331319] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-5352519623537623000/new-server/snapshot-00000000696AF660-011F9D7E.v1 02:39:28,25 AM [test-pekko.actor.default-dispatcher-15] [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 02:39:28,25 AM [new-server-%d331319] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-5352519623537623000/new-server/TermInfo.properties 02:39:28,25 AM [new-server-%d331319] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-5352519623537623000/new-server/journal-v1-1.log 02:39:28,25 AM [new-server-%d331319] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-5352519623537623000/new-server/metadata-v1-1.log 02:39:28,25 AM [new-server-%d331319] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.018849150Z, file=/tmp/junit-5352519623537623000/new-server/snapshot-00000000696AF660-011F9D7E.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:28,26 AM [new-server-%d331319] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.023283222Z, file=/tmp/junit-5352519623537623000/new-server/snapshot-00000000696AF660-01634616.v1, size=86, entryCompress=NONE, stateCompress=NONE} 02:39:28,26 AM [new-server-%d331319] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:28,26 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:28,26 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} 02:39:28,26 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - new-server: completed synchronized callback AppendReceivedCallback{entry=JournaledLogEntry{index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]]}, pending=false}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@457e7238} 02:39:28,26 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - new-server: synchronized callbacks after 2.675 ms [WARN] [01/17/2026 02:39:28.026] [test-pekko.actor.default-dispatcher-16] [pekko://test/user/new-server156] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=true] 02:39:28,74 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithPriorSnapshotInProgress ending 02:39:28,74 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower154] 02:39:28,86 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector155#-1325208409] 02:39:28,86 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server156] 02:39:28,86 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#316,new-server-writer-56]/waiting 02:39:28,87 AM [new-server-writer-56] [DEBUG] JournalWriteTask - new-server: received 1 commands after 200.3 ms 02:39:28,87 AM [new-server-writer-56] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 61.27 μs 02:39:28,87 AM [new-server-writer-56] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:28,87 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:28,87 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:28,87 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:28,87 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:28,88 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader157] 02:39:28,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#317,leader-writer-57]/waiting 02:39:28,88 AM [leader-writer-57] [DEBUG] JournalWriteTask - leader: received 1 commands after 194.3 ms 02:39:28,88 AM [leader-writer-57] [DEBUG] JournalWriteTask - leader: completed 1 commands in 19.27 μs 02:39:28,88 AM [leader-writer-57] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:28,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:28,88 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal closed 02:39:28,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,88 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,89 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector158] 02:39:28,94 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeLeaderToNonVotingInSingleNode starting 02:39:28,94 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader160] [WARN] [01/17/2026 02:39:28.095] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader160]: org.opendaylight.controller.cluster.common.actor.Monitor@76765ae8 02:39:28,95 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:28,95 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:28,95 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:28,95 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:28,96 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:28,96 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,96 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:28,96 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:28,96 AM [leader-writer-58] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:28,96 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-17034281552071561837/leader/TermInfo.properties does not exist 02:39:28,96 AM [leader-writer-58] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:28,99 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:28,99 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:28,99 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-17034281552071561837/leader/TermInfo.properties 02:39:28,99 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-17034281552071561837/leader/journal-v1-1.log 02:39:28,99 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-17034281552071561837/leader/metadata-v1-1.log 02:39:28,99 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: no eligible files found 02:39:28,99 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:28,99 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Recovery completed in in 2.633 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,99 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:28,99 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 02:39:28,100 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]], state: Idle 02:39:28,100 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 02:39:28,100 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Returning INVALID_REQUEST for operation ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]] 02:39:28,101 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeLeaderToNonVotingInSingleNode ending 02:39:28,101 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower159] 02:39:28,102 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader160] 02:39:28,102 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#325,leader-writer-58]/waiting 02:39:28,102 AM [leader-writer-58] [DEBUG] JournalWriteTask - leader: received 1 commands after 5.853 ms 02:39:28,102 AM [leader-writer-58] [DEBUG] JournalWriteTask - leader: completed 1 commands in 23.75 μs 02:39:28,102 AM [leader-writer-58] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:28,103 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:28,103 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal closed 02:39:28,103 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,103 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,106 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeLeaderToNonVoting starting 02:39:28,106 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader164] [WARN] [01/17/2026 02:39:28.107] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader164]: org.opendaylight.controller.cluster.common.actor.Monitor@1293640 02:39:28,107 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:28,107 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:28,107 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:28,107 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: started executor 02:39:28,108 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:28,109 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,109 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:28,109 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:28,109 AM [leader-writer-59] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:28,109 AM [leader-writer-59] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:28,109 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-18347004923968781834/leader/TermInfo.properties does not exist 02:39:28,111 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:28,111 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:28,111 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-18347004923968781834/leader/TermInfo.properties 02:39:28,111 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-18347004923968781834/leader/journal-v1-1.log 02:39:28,111 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-18347004923968781834/leader/metadata-v1-1.log 02:39:28,111 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - leader: no eligible files found 02:39:28,111 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:28,112 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - leader: Recovery completed in in 2.498 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,112 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:28,112 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower2, follower] 02:39:28,112 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 02:39:28,112 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [01/17/2026 02:39:28.112] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/follower2163] received dead letter from TestActor[pekko://test/user/leader164]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [WARN] [01/17/2026 02:39:28.112] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/follower162] received dead letter from TestActor[pekko://test/user/leader164]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} 02:39:28,114 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/follower162] [WARN] [01/17/2026 02:39:28.114] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower162]: org.opendaylight.controller.cluster.common.actor.Monitor@3000c469 02:39:28,115 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 02:39:28,115 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: started executor 02:39:28,115 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: started executor 02:39:28,115 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - follower: metadata journal open: replayFrom=1 applyTo=0 02:39:28,116 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - follower: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,116 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - follower: journal open: applyTo=0 02:39:28,116 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - follower: recovering to non-persistent 02:39:28,116 AM [follower-writer-60] [DEBUG] JournalWriteTask - follower: journal writer started 02:39:28,116 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-18347004923968781834/follower/TermInfo.properties does not exist 02:39:28,116 AM [follower-writer-60] [DEBUG] JournalWriteTask - follower: waiting to receive commands 02:39:28,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 02:39:28,118 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - follower: Local TermInfo store seeded with TermInfo{term=0} 02:39:28,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-18347004923968781834/follower/TermInfo.properties 02:39:28,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-18347004923968781834/follower/journal-v1-1.log 02:39:28,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-18347004923968781834/follower/metadata-v1-1.log 02:39:28,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower: no eligible files found 02:39:28,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to -1 02:39:28,118 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - follower: Recovery completed in in 2.179 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,118 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - follower: Recovery completed and can restore from snapshot 02:39:28,119 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/follower2163] [WARN] [01/17/2026 02:39:28.119] [test-pekko.actor.default-dispatcher-8] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower2163]: org.opendaylight.controller.cluster.common.actor.Monitor@6a271339 02:39:28,120 AM [test-pekko.actor.default-dispatcher-16] [INFO] RaftActor - follower2: Starting recovery with journal batch size 1000 02:39:28,120 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: started executor 02:39:28,120 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: started executor 02:39:28,120 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - follower2: metadata journal open: replayFrom=1 applyTo=0 02:39:28,121 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] EntryJournalV1 - follower2: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,121 AM [test-pekko.actor.default-dispatcher-16] [INFO] EnabledRaftStorage - follower2: journal open: applyTo=0 02:39:28,121 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - follower2: recovering to non-persistent 02:39:28,121 AM [follower2-writer-61] [DEBUG] JournalWriteTask - follower2: journal writer started 02:39:28,121 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - /tmp/junit-18347004923968781834/follower2/TermInfo.properties does not exist 02:39:28,121 AM [follower2-writer-61] [DEBUG] JournalWriteTask - follower2: waiting to receive commands 02:39:28,123 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=0, votedFor=null 02:39:28,123 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - follower2: Local TermInfo store seeded with TermInfo{term=0} 02:39:28,123 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-18347004923968781834/follower2/TermInfo.properties 02:39:28,123 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-18347004923968781834/follower2/journal-v1-1.log 02:39:28,123 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-18347004923968781834/follower2/metadata-v1-1.log 02:39:28,123 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorage - follower2: no eligible files found 02:39:28,123 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from -1 to -1 02:39:28,123 AM [test-pekko.actor.default-dispatcher-16] [INFO] Recovery - follower2: Recovery completed in in 2.271 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,123 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - follower2: Recovery completed and can restore from snapshot 02:39:28,134 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]], state: Idle 02:39:28,134 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 02:39:28,134 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] PeerInfos - leader: Updated server config: isVoting: false, peers: [PeerInfo [id=follower2, address=pekko://test/user/follower2163, votingState=VOTING], PeerInfo [id=follower, address=pekko://test/user/follower162, votingState=VOTING]] 02:39:28,134 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]] 02:39:28,134 AM [test-pekko.actor.default-dispatcher-16] [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]]} 02:39:28,134 AM [test-pekko.actor.default-dispatcher-16] [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} 02:39:28,135 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=b0a86190-1834-457a-a0bd-61d9ca3a7be6}, logIndex: 0, isSendImmediate: true 02:39:28,135 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,135 AM [leader-%d587299] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-18347004923968781834/leader/snapshot-00000000696AF660-080EA5C4.tmp 02:39:28,135 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,135 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={leader=false}, serversVisited=[]] 02:39:28,135 AM [test-pekko.actor.default-dispatcher-8] [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 02:39:28,135 AM [test-pekko.actor.default-dispatcher-15] [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 02:39:28,138 AM [leader-%d587299] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-18347004923968781834/leader/snapshot-00000000696AF660-080EA5C4.v1 02:39:28,138 AM [leader-%d587299] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-18347004923968781834/leader/snapshot-00000000696AF660-080EA5C4.v1 02:39:28,138 AM [leader-%d587299] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-18347004923968781834/leader/TermInfo.properties 02:39:28,138 AM [leader-%d587299] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-18347004923968781834/leader/journal-v1-1.log 02:39:28,138 AM [leader-%d587299] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-18347004923968781834/leader/metadata-v1-1.log 02:39:28,138 AM [leader-%d587299] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.135177668Z, file=/tmp/junit-18347004923968781834/leader/snapshot-00000000696AF660-080EA5C4.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,139 AM [leader-%d587299] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:28,139 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:28,139 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=1, votedFor=null 02:39:28,139 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 02:39:28,139 AM [test-pekko.actor.default-dispatcher-8] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader leader, need to catch up to -1 02:39:28,139 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 02:39:28,139 AM [test-pekko.actor.default-dispatcher-16] [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=true} [WARN] [01/17/2026 02:39:28.139] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower2163] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=false] [WARN] [01/17/2026 02:39:28.139] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower162] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] 02:39:28,140 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: -1, nextIndex: 0 02:39:28,140 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,140 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower2 02:39:28,140 AM [test-pekko.actor.default-dispatcher-16] [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=false}]} 02:39:28,140 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=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false}]} 02:39:28,140 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 02:39:28,140 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower2 (Follower): Number of entries to be appended = 1 02:39:28,140 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower2 (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 02:39:28,140 AM [test-pekko.actor.default-dispatcher-5] [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]]} 02:39:28,140 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=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false} 02:39:28,140 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,140 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 02:39:28,140 AM [test-pekko.actor.default-dispatcher-16] [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=false}]} 02:39:28,140 AM [follower2-%d926813] [DEBUG] RaftStorage - follower2: starting snapshot writeout to /tmp/junit-18347004923968781834/follower2/snapshot-00000000696AF660-086095AC.tmp 02:39:28,140 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - follower2: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=pekko://test/user/leader164, votingState=NON_VOTING], PeerInfo [id=follower, address=pekko://test/user/follower162, votingState=VOTING]] 02:39:28,140 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower2 (Follower): Log size is now 1 02:39:28,140 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} 02:39:28,140 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 02:39:28,140 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower2: awaiting more completions to resolve 1 synchronized callback(s) 02:39:28,141 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 02:39:28,141 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 02:39:28,141 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 02:39:28,141 AM [test-pekko.actor.default-dispatcher-7] [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=false}]} 02:39:28,141 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 02:39:28,141 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 02:39:28,141 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 02:39:28,141 AM [test-pekko.actor.default-dispatcher-16] [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]]} 02:39:28,141 AM [test-pekko.actor.default-dispatcher-7] [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]]} 02:39:28,141 AM [test-pekko.actor.default-dispatcher-7] [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=false} 02:39:28,141 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,141 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PeerInfos - follower: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=pekko://test/user/leader164, votingState=NON_VOTING], PeerInfo [id=follower2, address=pekko://test/user/follower2163, votingState=VOTING]] 02:39:28,141 AM [test-pekko.actor.default-dispatcher-16] [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 02:39:28,141 AM [follower-%d871482] [DEBUG] RaftStorage - follower: starting snapshot writeout to /tmp/junit-18347004923968781834/follower/snapshot-00000000696AF660-0873EC3D.tmp 02:39:28,141 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Follower - follower (Follower): Log size is now 1 02:39:28,142 AM [test-pekko.actor.default-dispatcher-7] [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} 02:39:28,142 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorVotingConfigSupport - Leader changed to non-voting - trying leadership transfer 02:39:28,142 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 02:39:28,142 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorageCompleter - follower: awaiting more completions to resolve 1 synchronized callback(s) 02:39:28,142 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActor - leader: Initiating leader transfer 02:39:28,143 AM [follower2-%d926813] [DEBUG] RaftStorage - follower2: finished snapshot writeout to /tmp/junit-18347004923968781834/follower2/snapshot-00000000696AF660-086095AC.v1 02:39:28,143 AM [follower2-%d926813] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-18347004923968781834/follower2/TermInfo.properties 02:39:28,143 AM [follower2-%d926813] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-18347004923968781834/follower2/journal-v1-1.log 02:39:28,143 AM [follower2-%d926813] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-18347004923968781834/follower2/metadata-v1-1.log 02:39:28,143 AM [follower2-%d926813] [DEBUG] RaftStorage - follower2: selected SNAPSHOT_V1 to handle file /tmp/junit-18347004923968781834/follower2/snapshot-00000000696AF660-086095AC.v1 02:39:28,143 AM [follower2-%d926813] [DEBUG] RaftStorage - follower2: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.140547500Z, file=/tmp/junit-18347004923968781834/follower2/snapshot-00000000696AF660-086095AC.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,143 AM [follower2-%d926813] [DEBUG] RaftStorageCompleter - follower2: 1 completion(s) pending 02:39:28,143 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower2: running 1 completion(s) 02:39:28,143 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=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false} 02:39:28,143 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower2: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@30c190a2} 02:39:28,144 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower2: synchronized callbacks after 3.093 ms 02:39:28,144 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower2 (Follower): Commit index set to 0 02:39:28,144 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:28,144 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 02:39:28,144 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - follower2 (Follower): Setting last applied to 0 02:39:28,144 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from -1 to 0 02:39:28,144 AM [follower-%d871482] [DEBUG] RaftStorage - follower: finished snapshot writeout to /tmp/junit-18347004923968781834/follower/snapshot-00000000696AF660-0873EC3D.v1 02:39:28,144 AM [test-pekko.actor.default-dispatcher-5] [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]]} 02:39:28,144 AM [follower-%d871482] [DEBUG] RaftStorage - follower: selected SNAPSHOT_V1 to handle file /tmp/junit-18347004923968781834/follower/snapshot-00000000696AF660-0873EC3D.v1 [WARN] [01/17/2026 02:39:28.144] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower2163] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=true] 02:39:28,144 AM [follower-%d871482] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-18347004923968781834/follower/TermInfo.properties 02:39:28,144 AM [follower-%d871482] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-18347004923968781834/follower/journal-v1-1.log 02:39:28,144 AM [follower-%d871482] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-18347004923968781834/follower/metadata-v1-1.log 02:39:28,144 AM [follower-%d871482] [DEBUG] RaftStorage - follower: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.141814845Z, file=/tmp/junit-18347004923968781834/follower/snapshot-00000000696AF660-0873EC3D.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,144 AM [follower-%d871482] [DEBUG] RaftStorageCompleter - follower: 1 completion(s) pending 02:39:28,144 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActor - follower2: onLeaderTransitioning: LeaderTransitioning [leaderId=leader] 02:39:28,145 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorageCompleter - follower: running 1 completion(s) 02:39:28,145 AM [test-pekko.actor.default-dispatcher-7] [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} 02:39:28,145 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorageCompleter - follower: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@2b57ccb1} 02:39:28,145 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorageCompleter - follower: synchronized callbacks after 3.119 ms 02:39:28,145 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActor - follower: onLeaderTransitioning: LeaderTransitioning [leaderId=leader] [WARN] [01/17/2026 02:39:28.145] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower162] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=true] 02:39:28,145 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorLeadershipTransferCohort - leader: pauseLeader successfully completed - doing transfer 02:39:28,145 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 02:39:28,145 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [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=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false}]} 02:39:28,146 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [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=true], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=false]]}, pending=false}]} 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 02:39:28,146 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower (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 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 0, entries to be added from: 1 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower (Follower): Log size is now 1 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower (Follower): Commit index set to 0 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [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} 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to 0 02:39:28,146 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,146 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]]} 02:39:28,146 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: 0, lastIndex: 0, isVoting: true 02:39:28,146 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 02:39:28,146 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,146 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,146 AM [test-pekko.actor.default-dispatcher-16] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:28,146 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Leader - leader (Leader): Leader transfer complete 02:39:28,146 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:28,146 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorLeadershipTransferCohort - leader: leader transfer complete - waiting for new leader 02:39:28,146 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Received TimeoutNow - switching to Candidate 02:39:28,147 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Candidate - follower (Candidate): Election: Candidate has following voting peers: [follower2] 02:39:28,151 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=2, votedFor=follower 02:39:28,151 AM [test-pekko.actor.default-dispatcher-5] [INFO] Candidate - follower (Candidate): Starting new election term 2 02:39:28,151 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Candidate - follower (Candidate): Sending RequestVote{term=2, candidateId=follower, lastLogIndex=0, lastLogTerm=1} to peer follower2 02:39:28,151 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActorBehavior - follower (Follower) :- Switching from behavior Follower to Candidate, election term: 2 02:39:28,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - follower2 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 02:39:28,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - follower2 (Follower): Cluster state: [] 02:39:28,151 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - follower2 (Follower): Candidate in requestVote:RequestVote{term=2, candidateId=follower, lastLogIndex=0, lastLogTerm=1} with higher term appears reachable, updating term. 02:39:28,151 AM [test-pekko.actor.default-dispatcher-7] [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 02:39:28,155 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=2, votedFor=null 02:39:28,155 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - follower2 (Follower): In requestVote: RequestVote{term=2, candidateId=follower, lastLogIndex=0, lastLogTerm=1} - currentTerm: 2, votedFor: null, lastIndex: 0, lastTerm: 1 02:39:28,157 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=2, votedFor=follower 02:39:28,157 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - follower2 (Follower): requestVote returning: RequestVoteReply{term=2, voteGranted=true} 02:39:28,157 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Candidate - follower (Candidate): RaftRPC message received RequestVoteReply{term=2, voteGranted=true}, my term is 2 02:39:28,157 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] Candidate - follower (Candidate): handleRequestVoteReply: RequestVoteReply{term=2, voteGranted=true}, current voteCount: 1 02:39:28,158 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - follower (Leader): Election: Leader has following peers: [leader, follower2] 02:39:28,158 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - follower (Leader): Checking sendAppendEntries for follower leader: active: false, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,158 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - follower (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,158 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActorBehavior - follower (Candidate) :- Switching from behavior Candidate to Leader, election term: 2 02:39:28,158 AM [test-pekko.actor.default-dispatcher-7] [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 02:39:28,158 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader follower, need to catch up to -1 02:39:28,158 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - follower (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 [WARN] [01/17/2026 02:39:28.158] [test-pekko.actor.default-dispatcher-14] [pekko://test/user/follower2163] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=false] 02:39:28,159 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - follower (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,159 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader follower and reached 0 (of expected -1) [WARN] [01/17/2026 02:39:28.159] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower2163] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=true] 02:39:28,160 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=2, votedFor=null 02:39:28,160 AM [test-pekko.actor.default-dispatcher-7] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 2 02:39:28,673 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader follower and reached 0 (of expected -1) 02:39:28,674 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - leader: Last sync leader does not match current leader follower, need to catch up to -1 02:39:28,674 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorLeadershipTransferCohort - leader: leader changed to follower 02:39:28,674 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActorLeadershipTransferCohort - leader: Successfully transferred leadership to follower in 531.0 ms 02:39:28,674 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - follower (Leader): handleAppendEntriesReply - FollowerLogInformation for leader updated: matchIndex: 0, nextIndex: 1 02:39:28,674 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: leader transfer succeeded after change to non-voting 02:39:28,674 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - follower (Leader): Checking sendAppendEntries for follower leader: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,674 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - leader: Lagging 0 entries behind leader follower and reached 0 (of expected -1) [WARN] [01/17/2026 02:39:28.675] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/leader164] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=leader, initialSyncDone=false] [WARN] [01/17/2026 02:39:28.675] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/leader164] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=leader, initialSyncDone=true] 02:39:28,688 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeLeaderToNonVoting ending 02:39:28,689 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower161] 02:39:28,700 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader164] 02:39:28,701 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#326,leader-writer-59]/waiting 02:39:28,701 AM [leader-writer-59] [DEBUG] JournalWriteTask - leader: received 1 commands after 591.7 ms 02:39:28,701 AM [leader-writer-59] [DEBUG] JournalWriteTask - leader: completed 1 commands in 58.18 μs 02:39:28,701 AM [leader-writer-59] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:28,701 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:28,701 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - leader: journal closed 02:39:28,701 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,701 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,702 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector165] 02:39:28,702 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector166#309451611] 02:39:28,703 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower162] 02:39:28,703 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EnabledRaftStorage - follower: terminating thread VirtualThread[#327,follower-writer-60]/waiting 02:39:28,703 AM [follower-writer-60] [DEBUG] JournalWriteTask - follower: received 1 commands after 587.4 ms 02:39:28,703 AM [follower-writer-60] [DEBUG] JournalWriteTask - follower: completed 1 commands in 43.96 μs 02:39:28,703 AM [follower-writer-60] [DEBUG] JournalWriteTask - follower: journal writer stopped 02:39:28,704 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - follower: journal closed 02:39:28,704 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - follower: journal closed 02:39:28,704 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:28,704 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:28,704 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector167#420460724] 02:39:28,705 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower2163] 02:39:28,705 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EnabledRaftStorage - follower2: terminating thread VirtualThread[#328,follower2-writer-61]/waiting 02:39:28,705 AM [follower2-writer-61] [DEBUG] JournalWriteTask - follower2: received 1 commands after 583.9 ms 02:39:28,705 AM [follower2-writer-61] [DEBUG] JournalWriteTask - follower2: completed 1 commands in 20.96 μs 02:39:28,705 AM [follower2-writer-61] [DEBUG] JournalWriteTask - follower2: journal writer stopped 02:39:28,705 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - follower2: journal closed 02:39:28,705 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - follower2: journal closed 02:39:28,705 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 02:39:28,705 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 02:39:28,710 AM [main] [INFO] RaftActorVotingConfigSupportTest - testOnApplyState starting 02:39:28,710 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] MockRaftActor - Actor created TestActor[pekko://test/user/leader169] [WARN] [01/17/2026 02:39:28.711] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader169]: org.opendaylight.controller.cluster.common.actor.Monitor@33103919 02:39:28,711 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:28,712 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 02:39:28,712 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 02:39:28,712 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:28,713 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,713 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:28,713 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:28,713 AM [leader-writer-62] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:28,713 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/junit-9274468569457505646/leader/TermInfo.properties does not exist 02:39:28,713 AM [leader-writer-62] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:28,718 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=0, votedFor=null 02:39:28,718 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=0} 02:39:28,718 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-9274468569457505646/leader/TermInfo.properties 02:39:28,718 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-9274468569457505646/leader/journal-v1-1.log 02:39:28,718 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-9274468569457505646/leader/metadata-v1-1.log 02:39:28,718 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: no eligible files found 02:39:28,718 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:28,718 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - leader: Recovery completed in in 5.254 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,718 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:28,719 AM [main] [INFO] RaftActorVotingConfigSupportTest - testOnApplyState ending 02:39:28,719 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower168] 02:39:28,730 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader169] 02:39:28,730 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#332,leader-writer-62]/waiting 02:39:28,731 AM [leader-writer-62] [DEBUG] JournalWriteTask - leader: received 1 commands after 17.68 ms 02:39:28,731 AM [leader-writer-62] [DEBUG] JournalWriteTask - leader: completed 1 commands in 36.08 μs 02:39:28,731 AM [leader-writer-62] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:28,731 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:28,731 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - leader: journal closed 02:39:28,731 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,731 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,735 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServer starting 02:39:28,736 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader173] [WARN] [01/17/2026 02:39:28.736] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader173]: org.opendaylight.controller.cluster.common.actor.Monitor@4f0e5837 02:39:28,737 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:28,737 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:28,737 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 02:39:28,737 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 02:39:28,738 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:28,739 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,739 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:28,739 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:28,739 AM [leader-writer-63] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:28,739 AM [leader-writer-63] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:28,739 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/junit-16590056791971005086/leader/TermInfo.properties does not exist 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16590056791971005086/leader/TermInfo.properties 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16590056791971005086/leader/journal-v1-1.log 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16590056791971005086/leader/metadata-v1-1.log 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: no eligible files found 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - leader: Recovery completed in in 2.504 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower2, follower, downNode] 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 02:39:28,742 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower downNode: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [01/17/2026 02:39:28.742] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower2172] received dead letter from TestActor[pekko://test/user/leader173]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [WARN] [01/17/2026 02:39:28.743] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower171] received dead letter from TestActor[pekko://test/user/leader173]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [WARN] [01/17/2026 02:39:28.743] [test-pekko.actor.default-dispatcher-15] [pekko://test/] unhandled message from TestActor[pekko://test/user/leader173]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} 02:39:28,745 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/follower171] [WARN] [01/17/2026 02:39:28.745] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower171]: org.opendaylight.controller.cluster.common.actor.Monitor@681bd9a5 02:39:28,746 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 02:39:28,746 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower: started executor 02:39:28,746 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower: started executor 02:39:28,746 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - follower: metadata journal open: replayFrom=1 applyTo=0 02:39:28,747 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - follower: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,747 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - follower: journal open: applyTo=0 02:39:28,747 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - follower: recovering to non-persistent 02:39:28,747 AM [follower-writer-64] [DEBUG] JournalWriteTask - follower: journal writer started 02:39:28,747 AM [follower-writer-64] [DEBUG] JournalWriteTask - follower: waiting to receive commands 02:39:28,747 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-16590056791971005086/follower/TermInfo.properties does not exist 02:39:28,752 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 02:39:28,752 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - follower: Local TermInfo store seeded with TermInfo{term=0} 02:39:28,752 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-16590056791971005086/follower/TermInfo.properties 02:39:28,752 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-16590056791971005086/follower/journal-v1-1.log 02:39:28,752 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-16590056791971005086/follower/metadata-v1-1.log 02:39:28,752 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower: no eligible files found 02:39:28,752 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to -1 02:39:28,752 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - follower: Recovery completed in in 4.420 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,752 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - follower: Recovery completed and can restore from snapshot 02:39:28,753 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/follower2172] [WARN] [01/17/2026 02:39:28.754] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower2172]: org.opendaylight.controller.cluster.common.actor.Monitor@4a015d61 02:39:28,754 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - follower2: Starting recovery with journal batch size 1000 02:39:28,754 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower2: started executor 02:39:28,754 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower2: started executor 02:39:28,755 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - follower2: metadata journal open: replayFrom=1 applyTo=0 02:39:28,755 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - follower2: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,755 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - follower2: journal open: applyTo=0 02:39:28,755 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - follower2: recovering to non-persistent 02:39:28,755 AM [follower2-writer-65] [DEBUG] JournalWriteTask - follower2: journal writer started 02:39:28,755 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-16590056791971005086/follower2/TermInfo.properties does not exist 02:39:28,755 AM [follower2-writer-65] [DEBUG] JournalWriteTask - follower2: waiting to receive commands 02:39:28,757 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=0, votedFor=null 02:39:28,758 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - follower2: Local TermInfo store seeded with TermInfo{term=0} 02:39:28,758 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-16590056791971005086/follower2/TermInfo.properties 02:39:28,758 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-16590056791971005086/follower2/journal-v1-1.log 02:39:28,758 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-16590056791971005086/follower2/metadata-v1-1.log 02:39:28,758 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower2: no eligible files found 02:39:28,758 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from -1 to -1 02:39:28,758 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - follower2: Recovery completed in in 2.325 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,758 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - follower2: Recovery completed and can restore from snapshot 02:39:28,769 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: onRemoveServer: RemoveServer{serverId='follower'}, state: Idle 02:39:28,769 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=true], ServerInfo[peerId=downNode, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 02:39:28,769 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:28,769 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:28,769 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=fba5c7a7-9de1-4451-a3ff-164626208db5}, logIndex: 0, isSendImmediate: true 02:39:28,769 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,769 AM [leader-%d332442] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-16590056791971005086/leader/snapshot-00000000696AF660-2DE0EA83.tmp 02:39:28,770 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower downNode: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,770 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation RemoveServer{serverId='follower'} 02:39:28,770 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 [WARN] [01/17/2026 02:39:28.770] [test-pekko.actor.default-dispatcher-7] [pekko://test/] unhandled message from TestActor[pekko://test/user/leader173]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} 02:39:28,772 AM [leader-%d332442] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-16590056791971005086/leader/snapshot-00000000696AF660-2DE0EA83.v1 02:39:28,772 AM [leader-%d332442] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-16590056791971005086/leader/snapshot-00000000696AF660-2DE0EA83.v1 02:39:28,772 AM [leader-%d332442] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16590056791971005086/leader/TermInfo.properties 02:39:28,772 AM [leader-%d332442] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16590056791971005086/leader/journal-v1-1.log 02:39:28,772 AM [leader-%d332442] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-16590056791971005086/leader/metadata-v1-1.log 02:39:28,772 AM [leader-%d332442] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.769714819Z, file=/tmp/junit-16590056791971005086/leader/snapshot-00000000696AF660-2DE0EA83.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,772 AM [leader-%d332442] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:28,773 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:28,773 AM [test-pekko.actor.default-dispatcher-7] [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=true} 02:39:28,773 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=1, votedFor=null 02:39:28,773 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 02:39:28,773 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: -1, nextIndex: 0 02:39:28,773 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,773 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower2 [WARN] [01/17/2026 02:39:28.773] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/follower2172] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=false] 02:39:28,773 AM [test-pekko.actor.default-dispatcher-7] [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=false}]} 02:39:28,774 AM [test-pekko.actor.default-dispatcher-15] [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=false}]} 02:39:28,774 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): Number of entries to be appended = 1 02:39:28,774 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 02:39:28,774 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:28,774 AM [test-pekko.actor.default-dispatcher-15] [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=false} 02:39:28,774 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PeerInfos - follower2: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=pekko://test/user/leader173, votingState=VOTING], PeerInfo [id=downNode, address=, votingState=VOTING]] 02:39:28,774 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): Log size is now 1 02:39:28,774 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:28,774 AM [follower2-%d902058] [DEBUG] RaftStorage - follower2: starting snapshot writeout to /tmp/junit-16590056791971005086/follower2/snapshot-00000000696AF660-2E27B3C4.tmp 02:39:28,774 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached -1 (of expected -1) 02:39:28,774 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: awaiting more completions to resolve 1 synchronized callback(s) 02:39:28,774 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 02:39:28,775 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 02:39:28,775 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 02:39:28,775 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 02:39:28,775 AM [test-pekko.actor.default-dispatcher-7] [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]]} 02:39:28,775 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,775 AM [test-pekko.actor.default-dispatcher-7] [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 [WARN] [01/17/2026 02:39:28.775] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower171] unhandled message from TestActor[pekko://test/user/leader173]: ServerRemoved [serverId=follower] 02:39:28,776 AM [follower2-%d902058] [DEBUG] RaftStorage - follower2: finished snapshot writeout to /tmp/junit-16590056791971005086/follower2/snapshot-00000000696AF660-2E27B3C4.v1 02:39:28,777 AM [follower2-%d902058] [DEBUG] RaftStorage - follower2: selected SNAPSHOT_V1 to handle file /tmp/junit-16590056791971005086/follower2/snapshot-00000000696AF660-2E27B3C4.v1 02:39:28,777 AM [follower2-%d902058] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-16590056791971005086/follower2/TermInfo.properties 02:39:28,777 AM [follower2-%d902058] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-16590056791971005086/follower2/journal-v1-1.log 02:39:28,777 AM [follower2-%d902058] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-16590056791971005086/follower2/metadata-v1-1.log 02:39:28,777 AM [follower2-%d902058] [DEBUG] RaftStorage - follower2: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.774353860Z, file=/tmp/junit-16590056791971005086/follower2/snapshot-00000000696AF660-2E27B3C4.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,777 AM [follower2-%d902058] [DEBUG] RaftStorageCompleter - follower2: 1 completion(s) pending 02:39:28,777 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: running 1 completion(s) 02:39:28,777 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:28,777 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@4b081b0a} 02:39:28,777 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: synchronized callbacks after 3.209 ms 02:39:28,778 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): Commit index set to 0 02:39:28,778 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:28,778 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 02:39:28,778 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - follower2 (Follower): Setting last applied to 0 02:39:28,778 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from -1 to 0 02:39:28,778 AM [test-pekko.actor.default-dispatcher-15] [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] [01/17/2026 02:39:28.778] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/follower2172] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=true] 02:39:28,821 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServer ending 02:39:28,821 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower170] 02:39:28,823 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader173] 02:39:28,823 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#333,leader-writer-63]/waiting 02:39:28,823 AM [leader-writer-63] [DEBUG] JournalWriteTask - leader: received 1 commands after 83.61 ms 02:39:28,823 AM [leader-writer-63] [DEBUG] JournalWriteTask - leader: completed 1 commands in 31.44 μs 02:39:28,823 AM [leader-writer-63] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:28,824 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:28,824 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal closed 02:39:28,824 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,824 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,824 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector174] 02:39:28,824 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector175#1608331000] 02:39:28,825 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower171] 02:39:28,825 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - follower: terminating thread VirtualThread[#334,follower-writer-64]/waiting 02:39:28,825 AM [follower-writer-64] [DEBUG] JournalWriteTask - follower: received 1 commands after 77.79 ms 02:39:28,825 AM [follower-writer-64] [DEBUG] JournalWriteTask - follower: completed 1 commands in 17.62 μs 02:39:28,825 AM [follower-writer-64] [DEBUG] JournalWriteTask - follower: journal writer stopped 02:39:28,825 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - follower: journal closed 02:39:28,826 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - follower: journal closed 02:39:28,826 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:28,826 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:28,826 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector176#-66590007] 02:39:28,826 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower2172] 02:39:28,826 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - follower2: terminating thread VirtualThread[#335,follower2-writer-65]/waiting 02:39:28,826 AM [follower2-writer-65] [DEBUG] JournalWriteTask - follower2: received 1 commands after 71.09 ms 02:39:28,827 AM [follower2-writer-65] [DEBUG] JournalWriteTask - follower2: completed 1 commands in 16.46 μs 02:39:28,827 AM [follower2-writer-65] [DEBUG] JournalWriteTask - follower2: journal writer stopped 02:39:28,827 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - follower2: journal closed 02:39:28,827 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - follower2: journal closed 02:39:28,827 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 02:39:28,827 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 02:39:28,833 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoLeader starting 02:39:28,834 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server179] [WARN] [01/17/2026 02:39:28.834] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server179]: org.opendaylight.controller.cluster.common.actor.Monitor@67abb5cd 02:39:28,835 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:28,835 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: started executor 02:39:28,835 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: started executor 02:39:28,836 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:28,837 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,837 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:28,837 AM [new-server-writer-66] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:28,837 AM [new-server-writer-66] [DEBUG] JournalWriteTask - new-server: waiting to receive commands 02:39:28,837 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:28,837 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-10776609824338844044/new-server/TermInfo.properties does not exist 02:39:28,840 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:28,840 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:28,840 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10776609824338844044/new-server/TermInfo.properties 02:39:28,840 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10776609824338844044/new-server/journal-v1-1.log 02:39:28,840 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-10776609824338844044/new-server/metadata-v1-1.log 02:39:28,840 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:28,840 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:28,840 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - new-server: Recovery completed in in 2.949 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,840 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:28,841 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] MockRaftActor - Actor created TestActor[pekko://test/user/leader180] [WARN] [01/17/2026 02:39:28.842] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader180]: org.opendaylight.controller.cluster.common.actor.Monitor@514b8e6c 02:39:28,842 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:28,842 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:28,842 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:28,843 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:28,843 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,843 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:28,843 AM [leader-writer-67] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:28,843 AM [leader-writer-67] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:28,843 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:28,843 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-10776609824338844044/leader/TermInfo.properties does not exist 02:39:28,845 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=0, votedFor=null 02:39:28,845 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=0} 02:39:28,845 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10776609824338844044/leader/TermInfo.properties 02:39:28,845 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10776609824338844044/leader/journal-v1-1.log 02:39:28,845 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10776609824338844044/leader/metadata-v1-1.log 02:39:28,845 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: no eligible files found 02:39:28,845 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:28,845 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Recovery completed in in 1.950 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,845 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:28,846 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server179, votingMember=true], state: Idle 02:39:28,846 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: No leader - returning NO_LEADER reply 02:39:28,846 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithNoLeader ending 02:39:28,846 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower177] 02:39:28,847 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector178#1238387442] 02:39:28,848 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server179] 02:39:28,848 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#338,new-server-writer-66]/waiting 02:39:28,848 AM [new-server-writer-66] [DEBUG] JournalWriteTask - new-server: received 1 commands after 10.97 ms 02:39:28,848 AM [new-server-writer-66] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 17.50 μs 02:39:28,848 AM [new-server-writer-66] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:28,848 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:28,848 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:28,848 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:28,848 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:28,849 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader180] 02:39:28,849 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#339,leader-writer-67]/waiting 02:39:28,849 AM [leader-writer-67] [DEBUG] JournalWriteTask - leader: received 1 commands after 5.714 ms 02:39:28,849 AM [leader-writer-67] [DEBUG] JournalWriteTask - leader: completed 1 commands in 11.31 μs 02:39:28,849 AM [leader-writer-67] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:28,849 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:28,849 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal closed 02:39:28,849 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,849 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,852 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeServersVotingStatus starting 02:39:28,852 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader184] [WARN] [01/17/2026 02:39:28.853] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader184]: org.opendaylight.controller.cluster.common.actor.Monitor@11e12b71 02:39:28,853 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:28,853 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:28,854 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:28,854 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: started executor 02:39:28,854 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:28,855 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,855 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:28,855 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:28,855 AM [leader-writer-68] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:28,855 AM [leader-writer-68] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:28,855 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-10250697267191282188/leader/TermInfo.properties does not exist 02:39:28,857 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:28,857 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:28,857 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10250697267191282188/leader/TermInfo.properties 02:39:28,857 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10250697267191282188/leader/journal-v1-1.log 02:39:28,857 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10250697267191282188/leader/metadata-v1-1.log 02:39:28,857 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: no eligible files found 02:39:28,857 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:28,857 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - leader: Recovery completed in in 2.523 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,857 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:28,858 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower2, follower] 02:39:28,858 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 02:39:28,858 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [01/17/2026 02:39:28.858] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower2183] received dead letter from TestActor[pekko://test/user/leader184]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [WARN] [01/17/2026 02:39:28.858] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower182] received dead letter from TestActor[pekko://test/user/leader184]: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} 02:39:28,859 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/follower182] [WARN] [01/17/2026 02:39:28.859] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower182]: org.opendaylight.controller.cluster.common.actor.Monitor@2fe253b5 02:39:28,860 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 02:39:28,860 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: started executor 02:39:28,860 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: started executor 02:39:28,861 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - follower: metadata journal open: replayFrom=1 applyTo=0 02:39:28,861 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - follower: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,861 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - follower: journal open: applyTo=0 02:39:28,861 AM [follower-writer-69] [DEBUG] JournalWriteTask - follower: journal writer started 02:39:28,861 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower: recovering to non-persistent 02:39:28,861 AM [follower-writer-69] [DEBUG] JournalWriteTask - follower: waiting to receive commands 02:39:28,861 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/junit-10250697267191282188/follower/TermInfo.properties does not exist 02:39:28,864 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 02:39:28,864 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - follower: Local TermInfo store seeded with TermInfo{term=0} 02:39:28,864 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10250697267191282188/follower/TermInfo.properties 02:39:28,864 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10250697267191282188/follower/journal-v1-1.log 02:39:28,864 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10250697267191282188/follower/metadata-v1-1.log 02:39:28,864 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: no eligible files found 02:39:28,864 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to -1 02:39:28,864 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - follower: Recovery completed in in 2.515 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,864 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower: Recovery completed and can restore from snapshot 02:39:28,865 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/follower2183] [WARN] [01/17/2026 02:39:28.865] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower2183]: org.opendaylight.controller.cluster.common.actor.Monitor@7230f22e 02:39:28,866 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - follower2: Starting recovery with journal batch size 1000 02:39:28,866 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower2: started executor 02:39:28,866 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower2: started executor 02:39:28,866 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - follower2: metadata journal open: replayFrom=1 applyTo=0 02:39:28,867 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - follower2: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:28,867 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - follower2: journal open: applyTo=0 02:39:28,867 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower2: recovering to non-persistent 02:39:28,867 AM [follower2-writer-70] [DEBUG] JournalWriteTask - follower2: journal writer started 02:39:28,867 AM [follower2-writer-70] [DEBUG] JournalWriteTask - follower2: waiting to receive commands 02:39:28,867 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/junit-10250697267191282188/follower2/TermInfo.properties does not exist 02:39:28,868 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=0, votedFor=null 02:39:28,868 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - follower2: Local TermInfo store seeded with TermInfo{term=0} 02:39:28,868 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-10250697267191282188/follower2/TermInfo.properties 02:39:28,868 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-10250697267191282188/follower2/journal-v1-1.log 02:39:28,868 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-10250697267191282188/follower2/metadata-v1-1.log 02:39:28,868 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower2: no eligible files found 02:39:28,868 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from -1 to -1 02:39:28,869 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - follower2: Recovery completed in in 1.866 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:28,869 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower2: Recovery completed and can restore from snapshot 02:39:28,870 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={follower2=false, follower=false}, serversVisited=[]], state: Idle 02:39:28,870 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 02:39:28,870 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PeerInfos - leader: Updated server config: isVoting: true, peers: [PeerInfo [id=follower2, address=pekko://test/user/follower2183, votingState=NON_VOTING], PeerInfo [id=follower, address=pekko://test/user/follower182, votingState=NON_VOTING]] 02:39:28,870 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]] 02:39:28,870 AM [test-pekko.actor.default-dispatcher-13] [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]]} 02:39:28,870 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=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=true} 02:39:28,870 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=50331c09-6c85-457a-a2de-56ffaaa7489c}, logIndex: 0, isSendImmediate: true 02:39:28,870 AM [leader-%d678538] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-10250697267191282188/leader/snapshot-00000000696AF660-33E427A0.tmp 02:39:28,870 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 02:39:28,870 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to 0 02:39:28,870 AM [test-pekko.actor.default-dispatcher-13] [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]]} 02:39:28,870 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,871 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,871 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={follower2=false, follower=false}, serversVisited=[]] 02:39:28,871 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 02:39:28,871 AM [test-pekko.actor.default-dispatcher-15] [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 02:39:28,871 AM [test-pekko.actor.default-dispatcher-13] [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 02:39:28,873 AM [leader-%d678538] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-10250697267191282188/leader/snapshot-00000000696AF660-33E427A0.v1 02:39:28,873 AM [leader-%d678538] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-10250697267191282188/leader/snapshot-00000000696AF660-33E427A0.v1 02:39:28,873 AM [leader-%d678538] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10250697267191282188/leader/TermInfo.properties 02:39:28,873 AM [leader-%d678538] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10250697267191282188/leader/journal-v1-1.log 02:39:28,873 AM [leader-%d678538] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10250697267191282188/leader/metadata-v1-1.log 02:39:28,873 AM [leader-%d678538] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.870590368Z, file=/tmp/junit-10250697267191282188/leader/snapshot-00000000696AF660-33E427A0.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,873 AM [leader-%d678538] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:28,873 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:28,873 AM [test-pekko.actor.default-dispatcher-13] [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=true} 02:39:28,874 AM [test-pekko.actor.default-dispatcher-7] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 02:39:28,874 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - follower2: Set currentTerm=1, votedFor=null 02:39:28,874 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 02:39:28,874 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 [WARN] [01/17/2026 02:39:28.874] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower182] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] 02:39:28,874 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower2: Last sync leader does not match current leader leader, need to catch up to -1 02:39:28,874 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,874 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 02:39:28,874 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=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}]} [WARN] [01/17/2026 02:39:28.874] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower2183] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=false] 02:39:28,874 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: -1, nextIndex: 0 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [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}]} 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 02:39:28,874 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 02:39:28,874 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower2 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [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]]} 02:39:28,874 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=false], ServerInfo[peerId=follower, isVoting=false], ServerInfo[peerId=leader, isVoting=true]]}, pending=false} 02:39:28,874 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=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}]} 02:39:28,874 AM [follower-%d958140] [DEBUG] RaftStorage - follower: starting snapshot writeout to /tmp/junit-10250697267191282188/follower/snapshot-00000000696AF660-34232DD7.tmp 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - follower: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=pekko://test/user/leader184, votingState=VOTING], PeerInfo [id=follower2, address=pekko://test/user/follower2183, votingState=NON_VOTING]] 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Log size is now 1 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Commit index set to 0 02:39:28,874 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} 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to 0 02:39:28,874 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 02:39:28,874 AM [test-pekko.actor.default-dispatcher-5] [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]]} 02:39:28,875 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,875 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower: awaiting more completions to resolve 1 synchronized callback(s) 02:39:28,875 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:28,875 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): Number of entries to be appended = 1 02:39:28,875 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 02:39:28,875 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:28,875 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:28,875 AM [follower2-%d246437] [DEBUG] RaftStorage - follower2: starting snapshot writeout to /tmp/junit-10250697267191282188/follower2/snapshot-00000000696AF660-342CD3C0.tmp 02:39:28,875 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PeerInfos - follower2: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=pekko://test/user/leader184, votingState=VOTING], PeerInfo [id=follower, address=pekko://test/user/follower182, votingState=NON_VOTING]] 02:39:28,875 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): Log size is now 1 02:39:28,875 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): Commit index set to 0 02:39:28,875 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:28,875 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 0 (of expected -1) 02:39:28,876 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 0, context.getLastApplied(): -1, lastIndex(): 0 02:39:28,876 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - follower2 (Follower): Setting last applied to 0 02:39:28,876 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 0, nextIndex: 1 02:39:28,876 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from -1 to 0 02:39:28,876 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:28,876 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:28,876 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: awaiting more completions to resolve 1 synchronized callback(s) 02:39:28,876 AM [follower-%d958140] [DEBUG] RaftStorage - follower: finished snapshot writeout to /tmp/junit-10250697267191282188/follower/snapshot-00000000696AF660-34232DD7.v1 02:39:28,876 AM [follower-%d958140] [DEBUG] RaftStorage - follower: selected SNAPSHOT_V1 to handle file /tmp/junit-10250697267191282188/follower/snapshot-00000000696AF660-34232DD7.v1 02:39:28,876 AM [follower-%d958140] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10250697267191282188/follower/TermInfo.properties 02:39:28,876 AM [follower-%d958140] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10250697267191282188/follower/journal-v1-1.log 02:39:28,876 AM [follower-%d958140] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10250697267191282188/follower/metadata-v1-1.log 02:39:28,876 AM [follower-%d958140] [DEBUG] RaftStorage - follower: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.874720727Z, file=/tmp/junit-10250697267191282188/follower/snapshot-00000000696AF660-34232DD7.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,876 AM [follower-%d958140] [DEBUG] RaftStorageCompleter - follower: 1 completion(s) pending 02:39:28,876 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower: running 1 completion(s) 02:39:28,876 AM [test-pekko.actor.default-dispatcher-5] [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} 02:39:28,877 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@7ed642d3} 02:39:28,877 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower: synchronized callbacks after 2.013 ms 02:39:28,877 AM [follower2-%d246437] [DEBUG] RaftStorage - follower2: finished snapshot writeout to /tmp/junit-10250697267191282188/follower2/snapshot-00000000696AF660-342CD3C0.v1 02:39:28,877 AM [follower2-%d246437] [DEBUG] RaftStorage - follower2: selected SNAPSHOT_V1 to handle file /tmp/junit-10250697267191282188/follower2/snapshot-00000000696AF660-342CD3C0.v1 02:39:28,877 AM [follower2-%d246437] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-10250697267191282188/follower2/TermInfo.properties 02:39:28,877 AM [follower2-%d246437] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-10250697267191282188/follower2/journal-v1-1.log 02:39:28,877 AM [follower2-%d246437] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-10250697267191282188/follower2/metadata-v1-1.log 02:39:28,877 AM [follower2-%d246437] [DEBUG] RaftStorage - follower2: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.875353024Z, file=/tmp/junit-10250697267191282188/follower2/snapshot-00000000696AF660-342CD3C0.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,877 AM [follower2-%d246437] [DEBUG] RaftStorageCompleter - follower2: 1 completion(s) pending 02:39:28,877 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: running 1 completion(s) 02:39:28,877 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:28,877 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@706f3b7} 02:39:28,877 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: synchronized callbacks after 1.704 ms [WARN] [01/17/2026 02:39:28.877] [test-pekko.actor.default-dispatcher-14] [pekko://test/user/follower182] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=true] [WARN] [01/17/2026 02:39:28.877] [test-pekko.actor.default-dispatcher-14] [pekko://test/user/follower2183] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower2, initialSyncDone=true] 02:39:28,922 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - leader: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={follower=true}, serversVisited=[]], state: Idle 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PeerInfos - leader: Updated server config: isVoting: true, peers: [PeerInfo [id=follower2, address=pekko://test/user/follower2183, votingState=NON_VOTING], PeerInfo [id=follower, address=pekko://test/user/follower182, votingState=VOTING]] 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower2, isVoting=false], ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [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]]} 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [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} 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=078e975f-188a-4ce6-b90b-61b70961ddd4}, logIndex: 1, isSendImmediate: true 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from 0 to 1 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [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]]} 02:39:28,923 AM [leader-%d678539] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-10250697267191282188/leader/snapshot-00000000696AF660-3708DA6A.tmp 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower2 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [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}]} 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [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}]} 02:39:28,923 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={follower=true}, serversVisited=[]] 02:39:28,924 AM [test-pekko.actor.default-dispatcher-14] [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 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [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}]} 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [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]]} 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [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} 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PeerInfos - follower: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=pekko://test/user/leader184, votingState=VOTING], PeerInfo [id=follower2, address=pekko://test/user/follower2183, votingState=NON_VOTING]] 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Log size is now 2 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): Commit index set to 1 02:39:28,924 AM [follower-%d958141] [DEBUG] RaftStorage - follower: starting snapshot writeout to /tmp/junit-10250697267191282188/follower/snapshot-00000000696AF660-37183608.tmp 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [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} 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from 0 to 1 02:39:28,924 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [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]]} 02:39:28,924 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 02:39:28,924 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower: awaiting more completions to resolve 1 synchronized callback(s) 02:39:28,924 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 02:39:28,924 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:28,924 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): Number of entries to be appended = 1 02:39:28,924 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 02:39:28,924 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:28,924 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:28,925 AM [follower2-%d246438] [DEBUG] RaftStorage - follower2: starting snapshot writeout to /tmp/junit-10250697267191282188/follower2/snapshot-00000000696AF660-372386A4.tmp 02:39:28,925 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PeerInfos - follower2: Updated server config: isVoting: false, peers: [PeerInfo [id=leader, address=pekko://test/user/leader184, votingState=VOTING], PeerInfo [id=follower, address=pekko://test/user/follower182, votingState=VOTING]] 02:39:28,925 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): Log size is now 2 02:39:28,925 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): Commit index set to 1 02:39:28,925 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:28,925 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower2: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 02:39:28,925 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - follower2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 02:39:28,925 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - follower2 (Follower): Setting last applied to 1 02:39:28,925 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower2 updated: matchIndex: 1, nextIndex: 2 02:39:28,925 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - follower2: Moving last applied index from 0 to 1 02:39:28,925 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:28,925 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower2: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 02:39:28,925 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: awaiting more completions to resolve 1 synchronized callback(s) 02:39:28,926 AM [leader-%d678539] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-10250697267191282188/leader/snapshot-00000000696AF660-3708DA6A.v1 02:39:28,926 AM [leader-%d678539] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-10250697267191282188/leader/snapshot-00000000696AF660-33E427A0.v1 02:39:28,926 AM [leader-%d678539] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-10250697267191282188/leader/snapshot-00000000696AF660-3708DA6A.v1 02:39:28,926 AM [leader-%d678539] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10250697267191282188/leader/TermInfo.properties 02:39:28,926 AM [leader-%d678539] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10250697267191282188/leader/journal-v1-1.log 02:39:28,926 AM [leader-%d678539] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-10250697267191282188/leader/metadata-v1-1.log 02:39:28,927 AM [follower-%d958141] [DEBUG] RaftStorage - follower: finished snapshot writeout to /tmp/junit-10250697267191282188/follower/snapshot-00000000696AF660-37183608.v1 02:39:28,927 AM [follower2-%d246438] [DEBUG] RaftStorage - follower2: finished snapshot writeout to /tmp/junit-10250697267191282188/follower2/snapshot-00000000696AF660-372386A4.v1 02:39:28,927 AM [leader-%d678539] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.870590368Z, file=/tmp/junit-10250697267191282188/leader/snapshot-00000000696AF660-33E427A0.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,927 AM [follower2-%d246438] [DEBUG] RaftStorage - follower2: selected SNAPSHOT_V1 to handle file /tmp/junit-10250697267191282188/follower2/snapshot-00000000696AF660-372386A4.v1 02:39:28,927 AM [leader-%d678539] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.923327082Z, file=/tmp/junit-10250697267191282188/leader/snapshot-00000000696AF660-3708DA6A.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,927 AM [leader-%d678539] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:28,927 AM [follower2-%d246438] [DEBUG] RaftStorage - follower2: selected SNAPSHOT_V1 to handle file /tmp/junit-10250697267191282188/follower2/snapshot-00000000696AF660-342CD3C0.v1 02:39:28,927 AM [follower2-%d246438] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-10250697267191282188/follower2/TermInfo.properties 02:39:28,927 AM [follower2-%d246438] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-10250697267191282188/follower2/journal-v1-1.log 02:39:28,927 AM [follower2-%d246438] [DEBUG] RaftStorage - follower2: skipping unrecognized file /tmp/junit-10250697267191282188/follower2/metadata-v1-1.log 02:39:28,927 AM [follower2-%d246438] [DEBUG] RaftStorage - follower2: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.875353024Z, file=/tmp/junit-10250697267191282188/follower2/snapshot-00000000696AF660-342CD3C0.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,927 AM [follower2-%d246438] [DEBUG] RaftStorage - follower2: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.925075108Z, file=/tmp/junit-10250697267191282188/follower2/snapshot-00000000696AF660-372386A4.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,927 AM [follower2-%d246438] [DEBUG] RaftStorageCompleter - follower2: 1 completion(s) pending 02:39:28,927 AM [follower-%d958141] [DEBUG] RaftStorage - follower: selected SNAPSHOT_V1 to handle file /tmp/junit-10250697267191282188/follower/snapshot-00000000696AF660-37183608.v1 02:39:28,928 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:28,928 AM [follower-%d958141] [DEBUG] RaftStorage - follower: selected SNAPSHOT_V1 to handle file /tmp/junit-10250697267191282188/follower/snapshot-00000000696AF660-34232DD7.v1 02:39:28,928 AM [test-pekko.actor.default-dispatcher-13] [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=true} 02:39:28,928 AM [follower-%d958141] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10250697267191282188/follower/TermInfo.properties 02:39:28,928 AM [follower-%d958141] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10250697267191282188/follower/journal-v1-1.log 02:39:28,928 AM [follower-%d958141] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-10250697267191282188/follower/metadata-v1-1.log 02:39:28,928 AM [follower-%d958141] [DEBUG] RaftStorage - follower: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.874720727Z, file=/tmp/junit-10250697267191282188/follower/snapshot-00000000696AF660-34232DD7.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,928 AM [follower-%d958141] [DEBUG] RaftStorage - follower: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:28.924333576Z, file=/tmp/junit-10250697267191282188/follower/snapshot-00000000696AF660-37183608.v1, size=96, entryCompress=NONE, stateCompress=NONE} 02:39:28,928 AM [follower-%d958141] [DEBUG] RaftStorageCompleter - follower: 1 completion(s) pending 02:39:28,928 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower: running 1 completion(s) 02:39:28,928 AM [test-pekko.actor.default-dispatcher-5] [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} 02:39:28,928 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@4ddfb5f6} 02:39:28,928 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - follower: synchronized callbacks after 4.148 ms 02:39:28,928 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: running 1 completion(s) 02:39:28,928 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:28,929 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@4fc9579d} 02:39:28,929 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - follower2: synchronized callbacks after 3.356 ms 02:39:28,976 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeServersVotingStatus ending 02:39:28,976 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower181] 02:39:28,988 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader184] 02:39:28,988 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#340,leader-writer-68]/waiting 02:39:28,988 AM [leader-writer-68] [DEBUG] JournalWriteTask - leader: received 1 commands after 133.6 ms 02:39:28,988 AM [leader-writer-68] [DEBUG] JournalWriteTask - leader: completed 1 commands in 38.24 μs 02:39:28,989 AM [leader-writer-68] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:28,989 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:28,989 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal closed 02:39:28,989 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,989 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:28,989 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector185] 02:39:28,990 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector186#380243305] 02:39:28,990 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower182] 02:39:28,991 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - follower: terminating thread VirtualThread[#341,follower-writer-69]/waiting 02:39:28,991 AM [follower-writer-69] [DEBUG] JournalWriteTask - follower: received 1 commands after 129.4 ms 02:39:28,991 AM [follower-writer-69] [DEBUG] JournalWriteTask - follower: completed 1 commands in 20.50 μs 02:39:28,991 AM [follower-writer-69] [DEBUG] JournalWriteTask - follower: journal writer stopped 02:39:28,991 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - follower: journal closed 02:39:28,991 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - follower: journal closed 02:39:28,991 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:28,991 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:28,991 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector187#-1644504543] 02:39:28,992 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower2183] 02:39:28,992 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - follower2: terminating thread VirtualThread[#342,follower2-writer-70]/waiting 02:39:28,992 AM [follower2-writer-70] [DEBUG] JournalWriteTask - follower2: received 1 commands after 125.6 ms 02:39:28,992 AM [follower2-writer-70] [DEBUG] JournalWriteTask - follower2: completed 1 commands in 19.63 μs 02:39:28,992 AM [follower2-writer-70] [DEBUG] JournalWriteTask - follower2: journal writer stopped 02:39:28,993 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - follower2: journal closed 02:39:28,993 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - follower2: journal closed 02:39:28,993 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 02:39:28,993 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - follower2: stopped executor with 0 remaining tasks 02:39:28,998 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithExistingFollower starting 02:39:28,999 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server190] [WARN] [01/17/2026 02:39:28.999] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server190]: org.opendaylight.controller.cluster.common.actor.Monitor@cff8b2f 02:39:29,0 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:29,0 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: started executor 02:39:29,0 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: started executor 02:39:29,1 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:29,1 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:29,1 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:29,2 AM [new-server-writer-71] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:29,2 AM [new-server-writer-71] [DEBUG] JournalWriteTask - new-server: waiting to receive commands 02:39:29,2 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:29,2 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - /tmp/junit-14062693706736338115/new-server/TermInfo.properties does not exist 02:39:29,4 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:29,4 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:29,4 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/TermInfo.properties 02:39:29,4 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/journal-v1-1.log 02:39:29,4 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/metadata-v1-1.log 02:39:29,4 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:29,4 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:29,4 AM [test-pekko.actor.default-dispatcher-15] [INFO] Recovery - new-server: Recovery completed in in 2.548 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:29,4 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:29,5 AM [main] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to 2 02:39:29,5 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader191] [WARN] [01/17/2026 02:39:29.006] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader191]: org.opendaylight.controller.cluster.common.actor.Monitor@2a54b5f7 02:39:29,6 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor=leader 02:39:29,6 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:29,7 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 02:39:29,7 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: started executor 02:39:29,7 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:29,8 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:29,8 AM [test-pekko.actor.default-dispatcher-5] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:29,8 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:29,8 AM [leader-writer-72] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:29,8 AM [leader-writer-72] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:29,8 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - /tmp/junit-14062693706736338115/leader/TermInfo.properties does not exist 02:39:29,10 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor=leader 02:39:29,10 AM [test-pekko.actor.default-dispatcher-5] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=leader} 02:39:29,10 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/TermInfo.properties 02:39:29,10 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/journal-v1-1.log 02:39:29,10 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/metadata-v1-1.log 02:39:29,10 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - leader: no eligible files found 02:39:29,10 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:29,10 AM [test-pekko.actor.default-dispatcher-5] [INFO] Recovery - leader: Recovery completed in in 2.290 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:29,10 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:29,10 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 02:39:29,11 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: -1 02:39:29,11 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 02:39:29,11 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 02:39:29,11 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 02:39:29,11 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 02:39:29,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 02:39:29,12 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 1 for term 1 02:39:29,22 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server190, votingMember=true], state: Idle 02:39:29,22 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server190, votingMember=true] 02:39:29,22 AM [test-pekko.actor.default-dispatcher-5] [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 02:39:29,22 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: 3 02:39:29,22 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - leader: support() called 02:39:29,23 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating capture snapshot for new server new-server 02:39:29,23 AM [leader-%d960663] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:29,23 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:29,23 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=2, term=1]/EntryInfo[index=2, term=1] 02:39:29,23 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - leader: support() called 02:39:29,24 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: 1 and term: 1 02:39:29,24 AM [leader-%d960664] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-016E0BF1.tmp 02:39:29,24 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 02:39:29,24 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 157 bytes, total chunks to send: 1 02:39:29,24 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=157, offset=0, size=157, hashCode=1546036366 02:39:29,24 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower new-server: 157 02:39:29,24 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, new-server190), Chunk: 1/1 02:39:29,24 AM [test-pekko.actor.default-dispatcher-15] [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 02:39:29,26 AM [leader-%d960664] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-016E0BF1.v1 02:39:29,26 AM [leader-%d960664] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-016E0BF1.v1 02:39:29,26 AM [leader-%d960664] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/TermInfo.properties 02:39:29,26 AM [leader-%d960664] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/journal-v1-1.log 02:39:29,26 AM [leader-%d960664] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/metadata-v1-1.log 02:39:29,26 AM [leader-%d960664] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:29.023989233Z, file=/tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-016E0BF1.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:29,26 AM [leader-%d960664] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:29,26 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:29,26 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - leader: snapshot is durable as of 2026-01-17T02:39:29.023989233Z 02:39:29,26 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - leader: Snapshot success, discarding journal entries up to 3 02:39:29,26 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorSnapshotMessageSupport - leader: SnapshotComplete received 02:39:29,27 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 02:39:29,27 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot: InstallSnapshot{term=1, leaderId=leader, lastIncludedIndex=2, lastIncludedTerm=1, datasize=157, chunk=1/1, lastChunkHashCode=OptionalInt[-1]} 02:39:29,27 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - new-server: Last sync leader does not match current leader leader, need to catch up to 2 02:39:29,27 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotTracker - new-server (Follower): addChunk: chunkIndex=1, lastChunkIndex=0, collectedChunks.size=0, lastChunkHashCode=-1 02:39:29,27 AM [test-pekko.actor.default-dispatcher-15] [INFO] Follower - new-server (Follower): Snapshot received from leader: leader 02:39:29,27 AM [test-pekko.actor.default-dispatcher-15] [INFO] SnapshotManager - new-server: Applying snapshot on follower: PlainSnapshotSource{io=MemoryStreamSource{size=157}} 02:39:29,27 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - new-server: support() called [WARN] [01/17/2026 02:39:29.027] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/new-server190] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 02:39:29,28 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - new-server: Converted InstallSnapshot from leader: leader to state 02:39:29,28 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - new-server: last applied journal index prior to persisting applied snapshot: 0 02:39:29,28 AM [test-pekko.actor.default-dispatcher-15] [INFO] MockRaftActor - new-server: support() called 02:39:29,28 AM [new-server-%d99364] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01B70FE0.tmp 02:39:29,30 AM [new-server-%d99364] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01B70FE0.v1 02:39:29,30 AM [new-server-%d99364] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01B70FE0.v1 02:39:29,30 AM [new-server-%d99364] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/TermInfo.properties 02:39:29,30 AM [new-server-%d99364] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/journal-v1-1.log 02:39:29,30 AM [new-server-%d99364] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/metadata-v1-1.log 02:39:29,30 AM [new-server-%d99364] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:29.028774368Z, file=/tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01B70FE0.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:29,30 AM [new-server-%d99364] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:29,30 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:29,30 AM [test-pekko.actor.default-dispatcher-5] [INFO] SnapshotManager - new-server: snapshot is durable as of 2026-01-17T02:39:29.028774368Z 02:39:29,30 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - new-server: support() called 02:39:29,30 AM [test-pekko.actor.default-dispatcher-5] [INFO] MockRaftActor - new-server: applySnapshot called 02:39:29,31 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): handleInstallSnapshot returning: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 02:39:29,31 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SnapshotManager - new-server: Snapshot success, discarding journal entries up to 0 02:39:29,31 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorSnapshotMessageSupport - new-server: SnapshotComplete received 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=1, followerId=new-server, chunkIndex=1, success=true} 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower new-server (last chunk 1) - matchIndex set to 2, nextIndex set to 3 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - Sent message UnInitializedFollowerSnapshotReply to self 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: onUnInitializedFollowerSnapshotReply: UnInitializedFollowerSnapshotReply [followerId=new-server] 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: New server configuration : [ServerInfo[peerId=follower, isVoting=true], ServerInfo[peerId=new-server, isVoting=true], ServerInfo[peerId=leader, isVoting=true]] 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=3b0fae3d-4e8f-4d5b-8131-bf133d7cf079}, logIndex: 3, isSendImmediate: true 02:39:29,31 AM [leader-%d960665] [DEBUG] RaftStorage - leader: starting snapshot writeout to /tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-01E314E0.tmp 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: 1 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 3 is present for follower follower 02:39:29,31 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: 1 02:39:29,32 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 3 is present for follower new-server 02:39:29,32 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [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}]} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 1 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 2, entries to be added from: 0 02:39:29,32 AM [test-pekko.actor.default-dispatcher-5] [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}]} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: Returning OK for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server190, votingMember=true] 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [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]]} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Number of entries to be appended = 1 02:39:29,32 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): After cleanup, lastIndex: 2, entries to be added from: 0 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [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} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-5] [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]]} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-5] [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} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorageCompleter - test: 1 completion(s) pending 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorageCompleter - test: running 1 completion(s) 02:39:29,32 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=follower, address=null, votingState=VOTING]] 02:39:29,32 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - new-server (Follower): Log size is now 1 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [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} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-5] [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} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 2 (of expected 2) 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorageCompleter - test: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@3514e26f} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - new-server: awaiting more completions to resolve 1 synchronized callback(s) 02:39:29,32 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: 3, nextIndex: 4 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PeerInfos - follower: Updated server config: isVoting: true, peers: [PeerInfo [id=leader, address=, votingState=VOTING], PeerInfo [id=new-server, address=null, votingState=VOTING]] 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] Follower - follower (Follower): Log size is now 2 02:39:29,32 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 1 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [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} 02:39:29,32 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 02:39:29,32 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 3, nextIndex: 4 02:39:29,32 AM [new-server-%d99365] [DEBUG] RaftStorage - new-server: starting snapshot writeout to /tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01EE33D5.tmp 02:39:29,32 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 1 02:39:29,33 AM [leader-%d960665] [DEBUG] RaftStorage - leader: finished snapshot writeout to /tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-01E314E0.v1 02:39:29,33 AM [leader-%d960665] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-01E314E0.v1 02:39:29,33 AM [leader-%d960665] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-016E0BF1.v1 02:39:29,33 AM [leader-%d960665] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/TermInfo.properties 02:39:29,33 AM [leader-%d960665] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/journal-v1-1.log 02:39:29,33 AM [leader-%d960665] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/metadata-v1-1.log 02:39:29,33 AM [leader-%d960665] [DEBUG] RaftStorage - leader: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:29.023989233Z, file=/tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-016E0BF1.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:29,33 AM [leader-%d960665] [DEBUG] RaftStorage - leader: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:29.031659232Z, file=/tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-01E314E0.v1, size=97, entryCompress=NONE, stateCompress=NONE} 02:39:29,33 AM [leader-%d960665] [DEBUG] RaftStorageCompleter - leader: 1 completion(s) pending 02:39:29,33 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - leader: running 1 completion(s) 02:39:29,33 AM [test-pekko.actor.default-dispatcher-15] [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=true} 02:39:29,33 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 3, lastAppliedIndex: 2 02:39:29,33 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 3 02:39:29,33 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from 2 to 3 02:39:29,33 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:29,33 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 2 for term 1 02:39:29,33 AM [test-pekko.actor.default-dispatcher-15] [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 02:39:29,34 AM [new-server-%d99365] [DEBUG] RaftStorage - new-server: finished snapshot writeout to /tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01EE33D5.v1 02:39:29,34 AM [new-server-%d99365] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01EE33D5.v1 02:39:29,35 AM [new-server-%d99365] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01B70FE0.v1 02:39:29,35 AM [new-server-%d99365] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/TermInfo.properties 02:39:29,35 AM [new-server-%d99365] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/journal-v1-1.log 02:39:29,35 AM [new-server-%d99365] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/metadata-v1-1.log 02:39:29,35 AM [new-server-%d99365] [DEBUG] RaftStorage - new-server: deleted snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:29.028774368Z, file=/tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01B70FE0.v1, size=64, entryCompress=NONE, stateCompress=NONE} 02:39:29,35 AM [new-server-%d99365] [DEBUG] RaftStorage - new-server: retaining snapshot SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:29.032388053Z, file=/tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01EE33D5.v1, size=97, entryCompress=NONE, stateCompress=NONE} 02:39:29,35 AM [new-server-%d99365] [DEBUG] RaftStorageCompleter - new-server: 1 completion(s) pending 02:39:29,35 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - new-server: running 1 completion(s) 02:39:29,35 AM [test-pekko.actor.default-dispatcher-5] [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} 02:39:29,35 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - new-server: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@6d8a0bf8} 02:39:29,35 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - new-server: synchronized callbacks after 3.052 ms [WARN] [01/17/2026 02:39:29.035] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/new-server190] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=true] 02:39:29,243 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): Commit index set to 3 02:39:29,243 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): Commit index set to 3 02:39:29,243 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 3 (of expected -1) 02:39:29,243 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - new-server: Lagging 0 entries behind leader leader and reached 3 (of expected 2) 02:39:29,243 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): 2, lastIndex(): 3 02:39:29,244 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - new-server (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): 2, lastIndex(): 3 02:39:29,244 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 3 02:39:29,244 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - new-server (Follower): Setting last applied to 3 02:39:29,244 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from 2 to 3 02:39:29,244 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from 2 to 3 02:39:29,244 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 2 for term 1 02:39:29,244 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:29,274 AM [main] [DEBUG] RaftStorage - leader: selected SNAPSHOT_V1 to handle file /tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-01E314E0.v1 02:39:29,274 AM [main] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/TermInfo.properties 02:39:29,274 AM [main] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/journal-v1-1.log 02:39:29,274 AM [main] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14062693706736338115/leader/metadata-v1-1.log 02:39:29,274 AM [main] [DEBUG] RaftStorage - leader: picked SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:29.031659232Z, file=/tmp/junit-14062693706736338115/leader/snapshot-00000000696AF661-01E314E0.v1, size=97, entryCompress=NONE, stateCompress=NONE} as the latest file 02:39:29,275 AM [main] [DEBUG] RaftStorage - new-server: selected SNAPSHOT_V1 to handle file /tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01EE33D5.v1 02:39:29,275 AM [main] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/TermInfo.properties 02:39:29,275 AM [main] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/journal-v1-1.log 02:39:29,275 AM [main] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-14062693706736338115/new-server/metadata-v1-1.log 02:39:29,275 AM [main] [DEBUG] RaftStorage - new-server: picked SnapshotFileV1{lastIncluded=EntryInfo[index=-1, term=-1], timestamp=2026-01-17T02:39:29.032388053Z, file=/tmp/junit-14062693706736338115/new-server/snapshot-00000000696AF661-01EE33D5.v1, size=97, entryCompress=NONE, stateCompress=NONE} as the latest file 02:39:29,275 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithExistingFollower ending 02:39:29,275 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower188] 02:39:29,287 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector189#2018687479] 02:39:29,287 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server190] 02:39:29,287 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#349,new-server-writer-71]/waiting 02:39:29,288 AM [new-server-writer-71] [DEBUG] JournalWriteTask - new-server: received 1 commands after 286.0 ms 02:39:29,288 AM [new-server-writer-71] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 37.97 μs 02:39:29,288 AM [new-server-writer-71] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:29,288 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:29,288 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:29,288 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:29,288 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:29,288 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader191] 02:39:29,289 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#350,leader-writer-72]/waiting 02:39:29,289 AM [leader-writer-72] [DEBUG] JournalWriteTask - leader: received 1 commands after 281.1 ms 02:39:29,289 AM [leader-writer-72] [DEBUG] JournalWriteTask - leader: completed 1 commands in 19.07 μs 02:39:29,289 AM [leader-writer-72] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:29,289 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:29,289 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - leader: journal closed 02:39:29,289 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:29,289 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:29,290 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leaderCollector192] 02:39:29,293 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerForwardedToLeader starting 02:39:29,294 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server195] [WARN] [01/17/2026 02:39:29.295] [test-pekko.actor.default-dispatcher-14] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server195]: org.opendaylight.controller.cluster.common.actor.Monitor@3961de8c 02:39:29,295 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:29,296 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: started executor 02:39:29,296 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: started executor 02:39:29,296 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:29,297 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:29,297 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:29,297 AM [new-server-writer-73] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:29,297 AM [new-server-writer-73] [DEBUG] JournalWriteTask - new-server: waiting to receive commands 02:39:29,297 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:29,297 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/junit-790092405527430862/new-server/TermInfo.properties does not exist 02:39:29,299 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:29,299 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:29,299 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-790092405527430862/new-server/TermInfo.properties 02:39:29,299 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-790092405527430862/new-server/journal-v1-1.log 02:39:29,299 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-790092405527430862/new-server/metadata-v1-1.log 02:39:29,299 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:29,300 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:29,300 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - new-server: Recovery completed in in 2.782 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:29,300 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:29,301 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] MockRaftActor - Actor created TestActor[pekko://test/user/follower197] [WARN] [01/17/2026 02:39:29.301] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower197]: org.opendaylight.controller.cluster.common.actor.Monitor@18a4dd8a 02:39:29,301 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 02:39:29,302 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: started executor 02:39:29,302 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: started executor 02:39:29,303 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - follower: metadata journal open: replayFrom=1 applyTo=0 02:39:29,303 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - follower: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:29,303 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - follower: journal open: applyTo=0 02:39:29,303 AM [follower-writer-74] [DEBUG] JournalWriteTask - follower: journal writer started 02:39:29,303 AM [follower-writer-74] [DEBUG] JournalWriteTask - follower: waiting to receive commands 02:39:29,303 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower: recovering to non-persistent 02:39:29,303 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/junit-790092405527430862/follower/TermInfo.properties does not exist 02:39:29,305 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 02:39:29,305 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - follower: Local TermInfo store seeded with TermInfo{term=0} 02:39:29,305 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-790092405527430862/follower/TermInfo.properties 02:39:29,305 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-790092405527430862/follower/journal-v1-1.log 02:39:29,305 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-790092405527430862/follower/metadata-v1-1.log 02:39:29,305 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - follower: no eligible files found 02:39:29,305 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to -1 02:39:29,306 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - follower: Recovery completed in in 2.222 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:29,306 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower: Recovery completed and can restore from snapshot 02:39:29,306 AM [test-pekko.actor.default-dispatcher-13] [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 02:39:29,308 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 02:39:29,308 AM [test-pekko.actor.default-dispatcher-13] [INFO] Follower - follower (Follower): The followers log is empty and the senders prevLogIndex is 0 02:39:29,308 AM [test-pekko.actor.default-dispatcher-13] [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} 02:39:29,308 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 [WARN] [01/17/2026 02:39:29.308] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower197] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] 02:39:29,316 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - follower: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server195, votingMember=true], state: Idle 02:39:29,317 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - follower: getLeaderAddress leaderId = leader peerAddress = pekko://test/user/leader196 02:39:29,317 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - follower: Not leader - forwarding to leader ActorSelection[Anchor(pekko://test/), Path(/user/leader196)] 02:39:29,367 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerForwardedToLeader ending 02:39:29,367 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower193] 02:39:29,378 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector194#262165205] 02:39:29,378 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server195] 02:39:29,378 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#356,new-server-writer-73]/waiting 02:39:29,379 AM [new-server-writer-73] [DEBUG] JournalWriteTask - new-server: received 1 commands after 81.97 ms 02:39:29,379 AM [new-server-writer-73] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 29.19 μs 02:39:29,379 AM [new-server-writer-73] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:29,379 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:29,379 AM [test-pekko.actor.default-dispatcher-14] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:29,379 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:29,379 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:29,380 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/leader196#682639006] 02:39:29,380 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower197] 02:39:29,380 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EnabledRaftStorage - follower: terminating thread VirtualThread[#357,follower-writer-74]/waiting 02:39:29,380 AM [follower-writer-74] [DEBUG] JournalWriteTask - follower: received 1 commands after 76.84 ms 02:39:29,380 AM [follower-writer-74] [DEBUG] JournalWriteTask - follower: completed 1 commands in 17.22 μs 02:39:29,380 AM [follower-writer-74] [DEBUG] JournalWriteTask - follower: journal writer stopped 02:39:29,380 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - follower: journal closed 02:39:29,380 AM [test-pekko.actor.default-dispatcher-14] [INFO] EnabledRaftStorage - follower: journal closed 02:39:29,380 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:29,380 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:29,387 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerForwardToLeader starting 02:39:29,388 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] MockRaftActor - Actor created TestActor[pekko://test/user/follower200] [WARN] [01/17/2026 02:39:29.388] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/follower200]: org.opendaylight.controller.cluster.common.actor.Monitor@6fbfc627 02:39:29,389 AM [test-pekko.actor.default-dispatcher-14] [INFO] RaftActor - follower: Starting recovery with journal batch size 1000 02:39:29,390 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - follower: started executor 02:39:29,390 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - follower: started executor 02:39:29,391 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - follower: metadata journal open: replayFrom=1 applyTo=0 02:39:29,391 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - follower: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:29,391 AM [test-pekko.actor.default-dispatcher-14] [INFO] EnabledRaftStorage - follower: journal open: applyTo=0 02:39:29,391 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActor - follower: recovering to non-persistent 02:39:29,391 AM [follower-writer-75] [DEBUG] JournalWriteTask - follower: journal writer started 02:39:29,391 AM [follower-writer-75] [DEBUG] JournalWriteTask - follower: waiting to receive commands 02:39:29,392 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - /tmp/junit-5427583582142192381/follower/TermInfo.properties does not exist 02:39:29,394 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=0, votedFor=null 02:39:29,394 AM [test-pekko.actor.default-dispatcher-14] [INFO] Recovery - follower: Local TermInfo store seeded with TermInfo{term=0} 02:39:29,394 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-5427583582142192381/follower/TermInfo.properties 02:39:29,394 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-5427583582142192381/follower/journal-v1-1.log 02:39:29,394 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - follower: skipping unrecognized file /tmp/junit-5427583582142192381/follower/metadata-v1-1.log 02:39:29,394 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - follower: no eligible files found 02:39:29,394 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractReplicatedLog - follower: Moving last applied index from -1 to -1 02:39:29,394 AM [test-pekko.actor.default-dispatcher-14] [INFO] Recovery - follower: Recovery completed in in 2.883 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:29,394 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActor - follower: Recovery completed and can restore from snapshot 02:39:29,395 AM [test-pekko.actor.default-dispatcher-14] [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 02:39:29,399 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - follower: Set currentTerm=1, votedFor=null 02:39:29,399 AM [test-pekko.actor.default-dispatcher-14] [INFO] Follower - follower (Follower): The followers log is empty and the senders prevLogIndex is 0 02:39:29,399 AM [test-pekko.actor.default-dispatcher-14] [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} 02:39:29,399 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 [WARN] [01/17/2026 02:39:29.399] [test-pekko.actor.default-dispatcher-14] [pekko://test/user/follower200] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=follower, initialSyncDone=false] 02:39:29,405 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - follower: onRemoveServer: RemoveServer{serverId='follower'}, state: Idle 02:39:29,406 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActor - follower: getLeaderAddress leaderId = leader peerAddress = pekko://test/user/leader199 02:39:29,406 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - follower: Not leader - forwarding to leader ActorSelection[Anchor(pekko://test/), Path(/user/leader199)] 02:39:29,456 AM [main] [INFO] RaftActorVotingConfigSupportTest - testRemoveServerForwardToLeader ending 02:39:29,456 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower198] 02:39:29,467 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader199] 02:39:29,468 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower200] 02:39:29,468 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EnabledRaftStorage - follower: terminating thread VirtualThread[#358,follower-writer-75]/waiting 02:39:29,468 AM [follower-writer-75] [DEBUG] JournalWriteTask - follower: received 1 commands after 76.71 ms 02:39:29,468 AM [follower-writer-75] [DEBUG] JournalWriteTask - follower: completed 1 commands in 32.45 μs 02:39:29,468 AM [follower-writer-75] [DEBUG] JournalWriteTask - follower: journal writer stopped 02:39:29,469 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - follower: journal closed 02:39:29,469 AM [test-pekko.actor.default-dispatcher-14] [INFO] EnabledRaftStorage - follower: journal closed 02:39:29,469 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:29,469 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - follower: stopped executor with 0 remaining tasks 02:39:29,473 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithExistingServer starting 02:39:29,473 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader202] [WARN] [01/17/2026 02:39:29.474] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader202]: org.opendaylight.controller.cluster.common.actor.Monitor@2efc4cfd 02:39:29,474 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:29,474 AM [test-pekko.actor.default-dispatcher-14] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:29,474 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - leader: started executor 02:39:29,474 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - leader: started executor 02:39:29,475 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:29,476 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:29,476 AM [test-pekko.actor.default-dispatcher-14] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:29,476 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:29,476 AM [leader-writer-76] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:29,476 AM [leader-writer-76] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:29,476 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - /tmp/junit-14654931342615455241/leader/TermInfo.properties does not exist 02:39:29,478 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:29,478 AM [test-pekko.actor.default-dispatcher-14] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:29,479 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14654931342615455241/leader/TermInfo.properties 02:39:29,479 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14654931342615455241/leader/journal-v1-1.log 02:39:29,479 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-14654931342615455241/leader/metadata-v1-1.log 02:39:29,479 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - leader: no eligible files found 02:39:29,479 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:29,479 AM [test-pekko.actor.default-dispatcher-14] [INFO] Recovery - leader: Recovery completed in in 2.721 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:29,479 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:29,479 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 02:39:29,479 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 02:39:29,490 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=follower, newServerAddress=pekko://test/user/follower201, votingMember=true], state: Idle 02:39:29,490 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=follower, newServerAddress=pekko://test/user/follower201, votingMember=true] 02:39:29,490 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - leader: Returning ALREADY_EXISTS for operation AddServer [newServerId=follower, newServerAddress=pekko://test/user/follower201, votingMember=true] 02:39:29,490 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithExistingServer ending 02:39:29,490 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower201] 02:39:29,502 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader202] 02:39:29,502 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#359,leader-writer-76]/waiting 02:39:29,502 AM [leader-writer-76] [DEBUG] JournalWriteTask - leader: received 1 commands after 25.96 ms 02:39:29,502 AM [leader-writer-76] [DEBUG] JournalWriteTask - leader: completed 1 commands in 26.16 μs 02:39:29,502 AM [leader-writer-76] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:29,502 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:29,502 AM [test-pekko.actor.default-dispatcher-14] [INFO] EnabledRaftStorage - leader: journal closed 02:39:29,502 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:29,502 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:29,506 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndElectionTimeout starting 02:39:29,509 AM [main] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 02:39:29,510 AM [main] [DEBUG] EntryJournalV1 - node1: metadata journal open: replayFrom=1 applyTo=0 02:39:29,511 AM [main] [DEBUG] EntryJournalV1 - node1: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:29,514 AM [main] [DEBUG] EntryJournalV1 - node1: journal closed 02:39:29,516 AM [main] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 02:39:29,516 AM [main] [DEBUG] EntryJournalV1 - node2: metadata journal open: replayFrom=1 applyTo=0 02:39:29,517 AM [main] [DEBUG] EntryJournalV1 - node2: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:29,520 AM [main] [DEBUG] EntryJournalV1 - node2: journal closed 02:39:29,521 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/node1] [WARN] [01/17/2026 02:39:29.521] [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@2a38ee7c 02:39:29,522 AM [test-pekko.actor.default-dispatcher-14] [INFO] RaftActor - node1: Starting recovery with journal batch size 1000 02:39:29,522 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node1: started executor 02:39:29,522 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node1: started executor 02:39:29,522 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - node1: metadata journal open: replayFrom=1 applyTo=0 02:39:29,523 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - node1: journal open: firstIndex=1 lastIndex=1 replayFrom=1 fileEntries=0 02:39:29,523 AM [test-pekko.actor.default-dispatcher-14] [INFO] EnabledRaftStorage - node1: journal open: applyTo=0 02:39:29,523 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActor - node1: starting journal recovery 02:39:29,523 AM [node1-writer-77] [DEBUG] JournalWriteTask - node1: journal writer started 02:39:29,523 AM [node1-writer-77] [DEBUG] JournalWriteTask - node1: waiting to receive commands 02:39:29,523 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=node1 02:39:29,523 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-1877292728966661296/node1/TermInfo.properties 02:39:29,523 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-1877292728966661296/node1/journal-v1-1.log 02:39:29,523 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-1877292728966661296/node1/metadata-v1-1.log 02:39:29,523 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node1: no eligible files found 02:39:29,523 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to -1 02:39:29,523 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] JournalRecovery - node1: applying entries up to 0 02:39:29,524 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] JournalRecovery - node1: recovered journal DefaultLogEntry[index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=true]]}] 02:39:29,524 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PeerInfos - node1: Updated server config: isVoting: false, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 02:39:29,524 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to -1 02:39:29,524 AM [test-pekko.actor.default-dispatcher-14] [INFO] Recovery - node1: Recovery completed in in 912.9 μs: last log index = 0, last log term = 1, napshot index = -1, snapshot term = -1, journal size = 1 02:39:29,524 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActor - node1: Recovery completed and cannot restore from snapshot 02:39:29,525 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/node2] [WARN] [01/17/2026 02:39:29.525] [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@17d0e508 02:39:29,526 AM [test-pekko.actor.default-dispatcher-14] [INFO] RaftActor - node2: Starting recovery with journal batch size 1000 02:39:29,526 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node2: started executor 02:39:29,526 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node2: started executor 02:39:29,526 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - node2: metadata journal open: replayFrom=1 applyTo=0 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] EntryJournalV1 - node2: journal open: firstIndex=1 lastIndex=1 replayFrom=1 fileEntries=0 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [INFO] EnabledRaftStorage - node2: journal open: applyTo=0 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActor - node2: starting journal recovery 02:39:29,527 AM [node2-writer-78] [DEBUG] JournalWriteTask - node2: journal writer started 02:39:29,527 AM [node2-writer-78] [DEBUG] JournalWriteTask - node2: waiting to receive commands 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=node1 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-1877292728966661296/node2/TermInfo.properties 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-1877292728966661296/node2/journal-v1-1.log 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-1877292728966661296/node2/metadata-v1-1.log 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftStorage - node2: no eligible files found 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to -1 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] JournalRecovery - node2: applying entries up to 0 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] JournalRecovery - node2: recovered journal DefaultLogEntry[index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=true]]}] 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PeerInfos - node2: Updated server config: isVoting: true, peers: [PeerInfo [id=node1, address=null, votingState=NON_VOTING]] 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to -1 02:39:29,527 AM [test-pekko.actor.default-dispatcher-14] [INFO] Recovery - node2: Recovery completed in in 696.8 μs: last log index = 0, last log term = 1, napshot index = -1, snapshot term = -1, journal size = 1 02:39:29,528 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActor - node2: Recovery completed and cannot restore from snapshot 02:39:29,538 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={node1=true}, serversVisited=[]], state: Idle 02:39:29,538 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 02:39:29,538 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - node1: Sending local ElectionTimeout to start leader election 02:39:29,539 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PeerInfos - node1: Updated server config: isVoting: true, peers: [PeerInfo [id=node2, address=null, votingState=VOTING]] 02:39:29,539 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] Follower - node1 (Follower): Received TimeoutNow - switching to Candidate 02:39:29,539 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] Candidate - node1 (Candidate): Election: Candidate has following voting peers: [node2] 02:39:29,541 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=2, votedFor=node1 02:39:29,541 AM [test-pekko.actor.default-dispatcher-14] [INFO] Candidate - node1 (Candidate): Starting new election term 2 02:39:29,541 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] Candidate - node1 (Candidate): Sending RequestVote{term=2, candidateId=node1, lastLogIndex=0, lastLogTerm=1} to peer node2 02:39:29,541 AM [test-pekko.actor.default-dispatcher-14] [INFO] RaftActorBehavior - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 02:39:29,654 AM [test-pekko.actor.default-dispatcher-5] [WARN] RaftActorVotingConfigSupport - node1: Leader election timed out - cannot apply operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true}, serversVisited=[]] 02:39:29,654 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]] 02:39:29,654 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node1: tryToForwardOperationToAnotherServer - servers already visited [] 02:39:29,654 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node1: Returning NO_LEADER for operation ChangeServersVotingStatus [serverVotingStatusMap={node1=true}, serversVisited=[]] 02:39:29,655 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeaderAndElectionTimeout ending 02:39:29,655 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower203] 02:39:29,657 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector204#1602106209] 02:39:29,657 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node1] 02:39:29,657 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EnabledRaftStorage - node1: terminating thread VirtualThread[#360,node1-writer-77]/waiting 02:39:29,658 AM [node1-writer-77] [DEBUG] JournalWriteTask - node1: received 1 commands after 134.6 ms 02:39:29,658 AM [node1-writer-77] [DEBUG] JournalWriteTask - node1: completed 1 commands in 34.14 μs 02:39:29,658 AM [node1-writer-77] [DEBUG] JournalWriteTask - node1: journal writer stopped 02:39:29,658 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryJournalV1 - node1: journal closed 02:39:29,658 AM [test-pekko.actor.default-dispatcher-5] [INFO] EnabledRaftStorage - node1: journal closed 02:39:29,658 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 02:39:29,658 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 02:39:29,659 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector205#566944222] 02:39:29,659 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node2] 02:39:29,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EnabledRaftStorage - node2: terminating thread VirtualThread[#361,node2-writer-78]/waiting 02:39:29,659 AM [node2-writer-78] [DEBUG] JournalWriteTask - node2: received 1 commands after 132.3 ms 02:39:29,659 AM [node2-writer-78] [DEBUG] JournalWriteTask - node2: completed 1 commands in 19.50 μs 02:39:29,659 AM [node2-writer-78] [DEBUG] JournalWriteTask - node2: journal writer stopped 02:39:29,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryJournalV1 - node2: journal closed 02:39:29,659 AM [test-pekko.actor.default-dispatcher-5] [INFO] EnabledRaftStorage - node2: journal closed 02:39:29,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 02:39:29,659 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 02:39:29,663 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeader starting 02:39:29,665 AM [main] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=downNode1 02:39:29,666 AM [main] [DEBUG] EntryJournalV1 - node1: metadata journal open: replayFrom=1 applyTo=0 02:39:29,666 AM [main] [DEBUG] EntryJournalV1 - node1: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:29,669 AM [main] [DEBUG] EntryJournalV1 - node1: updated meta to JournalMeta[replayFrom=1, applyTo=1] 02:39:29,670 AM [main] [DEBUG] EntryJournalV1 - node1: journal closed 02:39:29,671 AM [main] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=downNode2 02:39:29,671 AM [main] [DEBUG] EntryJournalV1 - node2: metadata journal open: replayFrom=1 applyTo=0 02:39:29,672 AM [main] [DEBUG] EntryJournalV1 - node2: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:29,675 AM [main] [DEBUG] EntryJournalV1 - node2: updated meta to JournalMeta[replayFrom=1, applyTo=1] 02:39:29,675 AM [main] [DEBUG] EntryJournalV1 - node2: journal closed 02:39:29,676 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/node1] [WARN] [01/17/2026 02:39:29.676] [test-pekko.actor.default-dispatcher-14] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node1]: org.opendaylight.controller.cluster.common.actor.Monitor@633fcf9f 02:39:29,677 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - node1: Starting recovery with journal batch size 1000 02:39:29,677 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: started executor 02:39:29,678 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: started executor 02:39:29,678 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryJournalV1 - node1: metadata journal open: replayFrom=1 applyTo=1 02:39:29,679 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryJournalV1 - node1: journal open: firstIndex=1 lastIndex=1 replayFrom=1 fileEntries=0 02:39:29,679 AM [test-pekko.actor.default-dispatcher-5] [INFO] EnabledRaftStorage - node1: journal open: applyTo=1 02:39:29,679 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node1: starting journal recovery 02:39:29,679 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: journal writer started 02:39:29,679 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: waiting to receive commands 02:39:29,679 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=1, votedFor=downNode1 02:39:29,680 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-9391592052462954986/node1/TermInfo.properties 02:39:29,680 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-9391592052462954986/node1/journal-v1-1.log 02:39:29,680 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: skipping unrecognized file /tmp/junit-9391592052462954986/node1/metadata-v1-1.log 02:39:29,680 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node1: no eligible files found 02:39:29,680 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to -1 02:39:29,680 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] JournalRecovery - node1: applying entries up to 1 02:39:29,680 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] JournalRecovery - node1: recovered journal DefaultLogEntry[index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=true], ServerInfo[peerId=downNode2, isVoting=true]]}] 02:39:29,681 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]] 02:39:29,681 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from -1 to 0 02:39:29,681 AM [test-pekko.actor.default-dispatcher-5] [INFO] Recovery - node1: Recovery completed in in 1.425 ms: last log index = 0, last log term = 1, napshot index = -1, snapshot term = -1, journal size = 1 02:39:29,681 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node1: Recovery completed and cannot restore from snapshot 02:39:29,682 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupportTest$CollectingMockRaftActor - Actor created TestActor[pekko://test/user/node2] [WARN] [01/17/2026 02:39:29.682] [test-pekko.actor.default-dispatcher-14] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/node2]: org.opendaylight.controller.cluster.common.actor.Monitor@6139f80e 02:39:29,683 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActor - node2: Starting recovery with journal batch size 1000 02:39:29,683 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: started executor 02:39:29,683 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: started executor 02:39:29,683 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryJournalV1 - node2: metadata journal open: replayFrom=1 applyTo=1 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] EntryJournalV1 - node2: journal open: firstIndex=1 lastIndex=1 replayFrom=1 fileEntries=0 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [INFO] EnabledRaftStorage - node2: journal open: applyTo=1 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node2: starting journal recovery 02:39:29,684 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: journal writer started 02:39:29,684 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: waiting to receive commands 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=1, votedFor=downNode2 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-9391592052462954986/node2/TermInfo.properties 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-9391592052462954986/node2/journal-v1-1.log 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: skipping unrecognized file /tmp/junit-9391592052462954986/node2/metadata-v1-1.log 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorage - node2: no eligible files found 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to -1 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] JournalRecovery - node2: applying entries up to 1 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] JournalRecovery - node2: recovered journal DefaultLogEntry[index=0, term=1, command=VotingConfig{serverInfo=[ServerInfo[peerId=node1, isVoting=false], ServerInfo[peerId=node2, isVoting=false], ServerInfo[peerId=downNode1, isVoting=true], ServerInfo[peerId=downNode2, isVoting=true]]}] 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [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]] 02:39:29,684 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from -1 to 0 02:39:29,685 AM [test-pekko.actor.default-dispatcher-5] [INFO] Recovery - node2: Recovery completed in in 749.7 μs: last log index = 0, last log term = 1, napshot index = -1, snapshot term = -1, journal size = 1 02:39:29,685 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActor - node2: Recovery completed and cannot restore from snapshot 02:39:29,686 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]], state: Idle 02:39:29,686 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 02:39:29,686 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftActorVotingConfigSupport - node1: Sending local ElectionTimeout to start leader election 02:39:29,686 AM [test-pekko.actor.default-dispatcher-5] [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]] 02:39:29,686 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Follower - node1 (Follower): Received TimeoutNow - switching to Candidate 02:39:29,686 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] Candidate - node1 (Candidate): Election: Candidate has following voting peers: [node2] 02:39:29,688 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=2, votedFor=node1 02:39:29,688 AM [test-pekko.actor.default-dispatcher-5] [INFO] Candidate - node1 (Candidate): Starting new election term 2 02:39:29,688 AM [test-pekko.actor.default-dispatcher-5] [INFO] RaftActorBehavior - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 2 02:39:30,203 AM [test-pekko.actor.default-dispatcher-14] [WARN] RaftActorVotingConfigSupport - node1: Leader election timed out - cannot apply operation ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]] 02:39:30,203 AM [test-pekko.actor.default-dispatcher-14] [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]] 02:39:30,204 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - node1: tryToForwardOperationToAnotherServer - servers already visited [] 02:39:30,204 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - node1: Returning NO_LEADER for operation ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]] 02:39:30,205 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] SyncStatusTracker - node1: Last sync leader does not match current leader downNode1, need to catch up to 0 [WARN] [01/17/2026 02:39:30.205] [test-pekko.actor.default-dispatcher-14] [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] [01/17/2026 02:39:30.205] [test-pekko.actor.default-dispatcher-14] [pekko://test/user/node1] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node1, initialSyncDone=false] 02:39:30,761 AM [main] [INFO] PeerInfos - node1: Peer address for peer node2 set to pekko://test/user/node2 02:39:30,761 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - node1: onChangeServersVotingStatus: ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]], state: Idle 02:39:30,761 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - Initiating ChangeServersVotingStatusState 02:39:30,761 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - node1: Sending local ElectionTimeout to start leader election 02:39:30,761 AM [test-pekko.actor.default-dispatcher-15] [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]] 02:39:30,762 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - node1 (Follower): Received TimeoutNow - switching to Candidate 02:39:30,762 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Candidate - node1 (Candidate): Election: Candidate has following voting peers: [node2] 02:39:30,766 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] PropertiesTermInfoStore - node1: Set currentTerm=3, votedFor=node1 02:39:30,766 AM [test-pekko.actor.default-dispatcher-15] [INFO] Candidate - node1 (Candidate): Starting new election term 3 02:39:30,766 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Candidate - node1 (Candidate): Sending RequestVote{term=3, candidateId=node1, lastLogIndex=0, lastLogTerm=1} to peer node2 02:39:30,766 AM [test-pekko.actor.default-dispatcher-15] [INFO] RaftActorBehavior - node1 (Follower) :- Switching from behavior Follower to Candidate, election term: 3 02:39:30,766 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorBehavior - node2 (Follower): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 02:39:30,766 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorBehavior - node2 (Follower): Cluster state: [] 02:39:30,766 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorBehavior - node2 (Follower): Candidate in requestVote:RequestVote{term=3, candidateId=node1, lastLogIndex=0, lastLogTerm=1} with higher term appears reachable, updating term. 02:39:30,766 AM [test-pekko.actor.default-dispatcher-14] [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 02:39:30,769 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=3, votedFor=null 02:39:30,769 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorBehavior - node2 (Follower): In requestVote: RequestVote{term=3, candidateId=node1, lastLogIndex=0, lastLogTerm=1} - currentTerm: 3, votedFor: null, lastIndex: 0, lastTerm: 1 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] PropertiesTermInfoStore - node2: Set currentTerm=3, votedFor=node1 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorBehavior - node2 (Follower): requestVote returning: RequestVoteReply{term=3, voteGranted=true} 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] Candidate - node1 (Candidate): RaftRPC message received RequestVoteReply{term=3, voteGranted=true}, my term is 3 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] Candidate - node1 (Candidate): handleRequestVoteReply: RequestVoteReply{term=3, voteGranted=true}, current voteCount: 1 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - node1 (Leader): Election: Leader has following peers: [node2, downNode2, downNode1] 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - node1 (Leader): Checking sendAppendEntries for follower node2: active: false, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [INFO] RaftActorBehavior - node1 (Candidate) :- Switching from behavior Candidate to Leader, election term: 3 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - node1: New leader node1 elected 02:39:30,771 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SyncStatusTracker - node2: Last sync leader does not match current leader node1, need to catch up to -1 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [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]] 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [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]]} 02:39:30,771 AM [test-pekko.actor.default-dispatcher-14] [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} 02:39:30,772 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - node1 (Leader): Replicate message: identifier: ServerOperationContextIdentifier{value=58049bf0-3283-4f2a-9e45-2c931d7306bc}, logIndex: 1, isSendImmediate: true [WARN] [01/17/2026 02:39:30.772] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/node2] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node2, initialSyncDone=false] 02:39:30,772 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - node1 (Leader): Checking sendAppendEntries for follower node2: active: false, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:30,772 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: received 1 commands after 1.092 s 02:39:30,772 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] RaftActorVotingConfigSupport - node1: Returning OK for operation ChangeServersVotingStatus [serverVotingStatusMap={downNode2=false, node2=true, downNode1=false, node1=true}, serversVisited=[]] 02:39:30,772 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - node2: Lagging -1 entries behind leader node1 and reached 0 (of expected -1) 02:39:30,772 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - node1 (Leader): handleAppendEntriesReply - FollowerLogInformation for node2 updated: matchIndex: 0, nextIndex: 1 02:39:30,772 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - node1 (Leader): Checking sendAppendEntries for follower node2: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:30,772 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - node1 (Leader): sendAppendEntries: 1 is present for follower node2 [WARN] [01/17/2026 02:39:30.772] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/node2] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=node2, initialSyncDone=true] 02:39:30,772 AM [test-pekko.actor.default-dispatcher-14] [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}]} 02:39:30,772 AM [test-pekko.actor.default-dispatcher-14] [DEBUG] AbstractLeader - node1 (Leader): sendAppendEntries: 1 is present for follower node2 02:39:30,772 AM [test-pekko.actor.default-dispatcher-15] [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}]} 02:39:30,772 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - node2 (Follower): Number of entries to be appended = 1 02:39:30,772 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - node2 (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 02:39:30,772 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:30,772 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:30,773 AM [test-pekko.actor.default-dispatcher-15] [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]] 02:39:30,773 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - node2 (Follower): Log size is now 2 02:39:30,773 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: received 1 commands after 1.089 s 02:39:30,773 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:30,773 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - node2: Lagging 0 entries behind leader node1 and reached 0 (of expected -1) 02:39:30,773 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - node2: awaiting more completions to resolve 1 synchronized callback(s) 02:39:30,773 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node1 (Leader): handleAppendEntriesReply - FollowerLogInformation for node2 updated: matchIndex: 1, nextIndex: 2 02:39:30,773 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node1 (Leader): Checking sendAppendEntries for follower node2: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 02:39:30,773 AM [node1-writer-79] [DEBUG] RaftStorageCompleter - node1: 1 completion(s) pending 02:39:30,773 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: completed 1 commands in 1.223 ms 02:39:30,773 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: waiting to receive commands 02:39:30,773 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorageCompleter - node1: running 1 completion(s) 02:39:30,773 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=true} 02:39:30,773 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - node1 (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 02:39:30,773 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorBehavior - node1 (Leader): Setting last applied to 1 02:39:30,773 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - node1: Moving last applied index from 0 to 1 02:39:30,773 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]]} 02:39:30,773 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 02:39:30,774 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: received 1 commands after 493.2 μs 02:39:30,774 AM [node2-writer-80] [DEBUG] RaftStorageCompleter - node2: 1 completion(s) pending 02:39:30,774 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - node2: running 1 completion(s) 02:39:30,774 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: completed 1 commands in 1.054 ms 02:39:30,774 AM [test-pekko.actor.default-dispatcher-15] [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} 02:39:30,774 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: waiting to receive commands 02:39:30,774 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - node2: completed synchronized callback AppendReceivedCallback{entry=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}, callback=org.opendaylight.controller.cluster.raft.behaviors.Follower$$Lambda/0x00000007c0826698@27e8307a} 02:39:30,774 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - node2: synchronized callbacks after 1.072 ms 02:39:30,774 AM [node1-writer-79] [DEBUG] EntryJournalV1 - node1: updated meta to JournalMeta[replayFrom=1, applyTo=2] 02:39:30,774 AM [node1-writer-79] [DEBUG] RaftStorageCompleter - node1: 1 completion(s) pending 02:39:30,774 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorageCompleter - node1: running 1 completion(s) 02:39:30,774 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: completed 1 commands in 297.1 μs 02:39:30,774 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: waiting to receive commands 02:39:30,883 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - node2 (Follower): Commit index set to 1 02:39:30,883 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] SyncStatusTracker - node2: Lagging 0 entries behind leader node1 and reached 1 (of expected -1) 02:39:30,883 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] Follower - node2 (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): 0, lastIndex(): 1 02:39:30,883 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorBehavior - node2 (Follower): Setting last applied to 1 02:39:30,883 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] AbstractReplicatedLog - node2: Moving last applied index from 0 to 1 02:39:30,883 AM [test-pekko.actor.default-dispatcher-15] [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]]} 02:39:30,884 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: received 1 commands after 109.8 ms 02:39:30,884 AM [node2-writer-80] [DEBUG] EntryJournalV1 - node2: updated meta to JournalMeta[replayFrom=1, applyTo=2] 02:39:30,884 AM [node2-writer-80] [DEBUG] RaftStorageCompleter - node2: 1 completion(s) pending 02:39:30,884 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: completed 1 commands in 350.8 μs 02:39:30,884 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] RaftStorageCompleter - node2: running 1 completion(s) 02:39:30,884 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: waiting to receive commands 02:39:30,975 AM [main] [INFO] RaftActorVotingConfigSupportTest - testChangeToVotingWithNoLeader ending 02:39:30,975 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower206] 02:39:30,987 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector207#892757769] 02:39:30,987 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node1] 02:39:30,987 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EnabledRaftStorage - node1: terminating thread VirtualThread[#362,node1-writer-79]/waiting 02:39:30,988 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: received 1 commands after 213.7 ms 02:39:30,988 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: completed 1 commands in 37.27 μs 02:39:30,988 AM [node1-writer-79] [DEBUG] JournalWriteTask - node1: journal writer stopped 02:39:30,988 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - node1: journal closed 02:39:30,988 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - node1: journal closed 02:39:30,988 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 02:39:30,988 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - node1: stopped executor with 0 remaining tasks 02:39:30,988 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/collector208#1574860671] 02:39:30,989 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/node2] 02:39:30,989 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EnabledRaftStorage - node2: terminating thread VirtualThread[#363,node2-writer-80]/waiting 02:39:30,989 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: received 1 commands after 105.2 ms 02:39:30,989 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: completed 1 commands in 18.90 μs 02:39:30,989 AM [node2-writer-80] [DEBUG] JournalWriteTask - node2: journal writer stopped 02:39:30,989 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - node2: journal closed 02:39:30,989 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - node2: journal closed 02:39:30,989 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 02:39:30,990 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - node2: stopped executor with 0 remaining tasks 02:39:30,994 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithPriorSnapshotCompleteTimeout starting 02:39:30,995 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupportTest$MockNewFollowerRaftActor - Actor created TestActor[pekko://test/user/new-server211] [WARN] [01/17/2026 02:39:30.995] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/new-server211]: org.opendaylight.controller.cluster.common.actor.Monitor@72da316a 02:39:30,996 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - new-server: Starting recovery with journal batch size 1000 02:39:30,996 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: started executor 02:39:30,996 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: started executor 02:39:30,997 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - new-server: metadata journal open: replayFrom=1 applyTo=0 02:39:30,997 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - new-server: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:30,997 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - new-server: journal open: applyTo=0 02:39:30,997 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - new-server: recovering to non-persistent 02:39:30,997 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/junit-1271962393988340129/new-server/TermInfo.properties does not exist 02:39:30,997 AM [new-server-writer-81] [DEBUG] JournalWriteTask - new-server: journal writer started 02:39:30,997 AM [new-server-writer-81] [DEBUG] JournalWriteTask - new-server: waiting to receive commands 02:39:31,0 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=0, votedFor=null 02:39:31,0 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - new-server: Local TermInfo store seeded with TermInfo{term=0} 02:39:31,0 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-1271962393988340129/new-server/TermInfo.properties 02:39:31,0 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-1271962393988340129/new-server/journal-v1-1.log 02:39:31,0 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: skipping unrecognized file /tmp/junit-1271962393988340129/new-server/metadata-v1-1.log 02:39:31,0 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - new-server: no eligible files found 02:39:31,0 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - new-server: Moving last applied index from -1 to -1 02:39:31,0 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - new-server: Recovery completed in in 2.878 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:31,0 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - new-server: Recovery completed and can restore from snapshot 02:39:31,1 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupportTest$MockLeaderRaftActor - Actor created TestActor[pekko://test/user/leader212] [WARN] [01/17/2026 02:39:31.001] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/termination-monitor] received dead letter from TestActor[pekko://test/user/leader212]: org.opendaylight.controller.cluster.common.actor.Monitor@1cf171cb 02:39:31,2 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:31,2 AM [test-pekko.actor.default-dispatcher-13] [INFO] RaftActor - leader: Starting recovery with journal batch size 1000 02:39:31,2 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 02:39:31,2 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: started executor 02:39:31,2 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: metadata journal open: replayFrom=1 applyTo=0 02:39:31,3 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] EntryJournalV1 - leader: journal open: firstIndex=1 lastIndex=0 replayFrom=1 fileEntries=0 02:39:31,3 AM [test-pekko.actor.default-dispatcher-13] [INFO] EnabledRaftStorage - leader: journal open: applyTo=0 02:39:31,3 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: recovering to non-persistent 02:39:31,3 AM [leader-writer-82] [DEBUG] JournalWriteTask - leader: journal writer started 02:39:31,3 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - /tmp/junit-1271962393988340129/leader/TermInfo.properties does not exist 02:39:31,3 AM [leader-writer-82] [DEBUG] JournalWriteTask - leader: waiting to receive commands 02:39:31,7 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - leader: Set currentTerm=1, votedFor= 02:39:31,7 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - leader: Local TermInfo store seeded with TermInfo{term=1, votedFor=} 02:39:31,7 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-1271962393988340129/leader/TermInfo.properties 02:39:31,7 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-1271962393988340129/leader/journal-v1-1.log 02:39:31,7 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: skipping unrecognized file /tmp/junit-1271962393988340129/leader/metadata-v1-1.log 02:39:31,7 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftStorage - leader: no eligible files found 02:39:31,7 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - leader: Moving last applied index from -1 to -1 02:39:31,7 AM [test-pekko.actor.default-dispatcher-13] [INFO] Recovery - leader: Recovery completed in in 3.857 ms: last log index = -1, last log term = -1, napshot index = -1, snapshot term = -1, journal size = 0 02:39:31,7 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: Recovery completed and can restore from snapshot 02:39:31,7 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 02:39:31,8 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActor - leader: Take a snapshot of current state. lastReplicatedLog is null and replicatedToAllIndex is -1 02:39:31,8 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] AbstractReplicatedLog - leader: Capturing Snapshot : lastLogEntry is null. Using snapshot values lastAppliedIndex -1 and lastAppliedTerm -1 instead. 02:39:31,8 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=true] 02:39:31,8 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - leader: captured snapshot at lastSequenceNumber: 0 02:39:31,8 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=-1, term=-1]/EntryInfo[index=-1, term=-1] 02:39:31,8 AM [test-pekko.actor.default-dispatcher-13] [INFO] MockRaftActor - leader: support() called 02:39:31,9 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - leader: user triggered or root overwrite snapshot encountered, trimming log up to last applied index -1 02:39:31,9 AM [test-pekko.actor.default-dispatcher-13] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 02:39:31,18 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: onAddServer: AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server211, votingMember=true], state: Idle 02:39:31,18 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: Initiating AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server211, votingMember=true] 02:39:31,19 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] SnapshotManager - leader: captureToInstall should not be called in state PersistCapture[lastJournalIndex=0, request=CaptureSnapshot [lastAppliedIndex=-1, lastAppliedTerm=-1, lastIndex=-1, lastTerm=-1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=true]] 02:39:31,19 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] RaftActorVotingConfigSupport - leader: Snapshot already in progress - waiting for completion 02:39:31,133 AM [test-pekko.actor.default-dispatcher-13] [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 02:39:31,138 AM [test-pekko.actor.default-dispatcher-13] [DEBUG] PropertiesTermInfoStore - new-server: Set currentTerm=1, votedFor=null 02:39:31,138 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 02:39:31,138 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for new-server updated: matchIndex: -1, nextIndex: 0 02:39:31,138 AM [test-pekko.actor.default-dispatcher-5] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower new-server: active: false, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 [WARN] [01/17/2026 02:39:31.138] [test-pekko.actor.default-dispatcher-15] [pekko://test/user/new-server211] unhandled message from Actor[pekko://test/deadLetters]: FollowerInitialSyncUpStatus[memberId=new-server, initialSyncDone=false] 02:39:31,233 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: handleInstallSnapshotTimeout for new server new-server 02:39:31,233 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftActorVotingConfigSupport - leader: Returning TIMEOUT for operation AddServer [newServerId=new-server, newServerAddress=pekko://test/user/new-server211, votingMember=true] 02:39:31,233 AM [test-pekko.actor.default-dispatcher-15] [WARN] RaftActorVotingConfigSupport - leader: Timeout occured for new server new-server while waiting for prior snapshot to complete 02:39:31,233 AM [main] [INFO] RaftActorVotingConfigSupportTest - testAddServerWithPriorSnapshotCompleteTimeout ending 02:39:31,234 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower209] 02:39:31,246 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/new-serverCollector210#-1275222476] 02:39:31,246 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/new-server211] 02:39:31,246 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - new-server: terminating thread VirtualThread[#366,new-server-writer-81]/waiting 02:39:31,247 AM [new-server-writer-81] [DEBUG] JournalWriteTask - new-server: received 1 commands after 249.2 ms 02:39:31,247 AM [new-server-writer-81] [DEBUG] JournalWriteTask - new-server: completed 1 commands in 31.31 μs 02:39:31,247 AM [new-server-writer-81] [DEBUG] JournalWriteTask - new-server: journal writer stopped 02:39:31,247 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - new-server: journal closed 02:39:31,247 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - new-server: journal closed 02:39:31,247 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:31,247 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - new-server: stopped executor with 0 remaining tasks 02:39:31,247 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader212] 02:39:31,248 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EnabledRaftStorage - leader: terminating thread VirtualThread[#367,leader-writer-82]/waiting 02:39:31,248 AM [leader-writer-82] [DEBUG] JournalWriteTask - leader: received 1 commands after 244.9 ms 02:39:31,248 AM [leader-writer-82] [DEBUG] JournalWriteTask - leader: completed 1 commands in 19.90 μs 02:39:31,248 AM [leader-writer-82] [DEBUG] JournalWriteTask - leader: journal writer stopped 02:39:31,248 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] EntryJournalV1 - leader: journal closed 02:39:31,248 AM [test-pekko.actor.default-dispatcher-15] [INFO] EnabledRaftStorage - leader: journal closed 02:39:31,248 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks 02:39:31,248 AM [test-pekko.actor.default-dispatcher-15] [DEBUG] RaftStorage - leader: stopped executor with 0 remaining tasks [INFO] [01/17/2026 02:39:31.251] [main] [CoordinatedShutdown(pekko://test)] Running CoordinatedShutdown with reason [ActorSystemTerminateReason] 02:39:31,251 AM [test-pekko.actor.default-dispatcher-5] [INFO] CoordinatedShutdown - Running CoordinatedShutdown with reason [ActorSystemTerminateReason] [WARN] [01/17/2026 02:39:31.252] [test-pekko.actor.default-dispatcher-5] [pekko://test/system/cluster/core/daemon] unhandled message from Actor[pekko://test/deadLetters]: Leave(pekko://test@10.30.170.18:17355) [INFO] [01/17/2026 02:39:31.253] [test-pekko.actor.internal-dispatcher-2] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Exiting completed [INFO] [01/17/2026 02:39:31.253] [test-pekko.actor.internal-dispatcher-2] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Shutting down... 02:39:31,253 AM [test-pekko.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Exiting completed 02:39:31,253 AM [test-pekko.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Shutting down... 02:39:31,253 AM [test-pekko.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Successfully shut down [INFO] [01/17/2026 02:39:31.253] [test-pekko.actor.internal-dispatcher-2] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Successfully shut down [INFO] [01/17/2026 02:39:31.256] [test-pekko.remote.default-remote-dispatcher-9] [pekko://test@10.30.170.18:17355/system/remoting-terminator] Shutting down remote daemon. 02:39:31,256 AM [test-pekko.actor.default-dispatcher-5] [INFO] RemoteActorRefProvider$RemotingTerminator - Shutting down remote daemon. [INFO] [01/17/2026 02:39:31.256] [test-pekko.remote.default-remote-dispatcher-9] [pekko://test@10.30.170.18:17355/system/remoting-terminator] Remote daemon shut down; proceeding with flushing remote transports. 02:39:31,256 AM [test-pekko.actor.default-dispatcher-15] [INFO] RemoteActorRefProvider$RemotingTerminator - Remote daemon shut down; proceeding with flushing remote transports. 02:39:31,259 AM [test-pekko.actor.default-dispatcher-15] [INFO] RemoteActorRefProvider$RemotingTerminator - Remoting shut down. [INFO] [01/17/2026 02:39:31.259] [test-pekko.remote.default-remote-dispatcher-9] [pekko://test@10.30.170.18:17355/system/remoting-terminator] Remoting shut down. [DEBUG] [01/17/2026 02:39:31.259] [test-pekko.actor.internal-dispatcher-4] [EventStream] shutting down: StandardOutLogger