[DEBUG] [06/27/2025 11:17:03.937] [main] [EventStream(pekko://test)] logger log1-TestEventListener started 11:17:03,937 AM [test-pekko.actor.default-dispatcher-5] [INFO] Slf4jLogger - Slf4jLogger started [DEBUG] [06/27/2025 11:17:03.937] [main] [EventStream(pekko://test)] logger log2-Slf4jLogger started [DEBUG] [06/27/2025 11:17:03.937] [main] [EventStream(pekko://test)] Default Loggers started [INFO] [06/27/2025 11:17:03.946] [main] [ArteryTransport(pekko://test)] Remoting started with transport [Artery tcp]; listening on address [pekko://test@10.30.170.168:17355] with UID [4394533962875738470] [INFO] [06/27/2025 11:17:03.947] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.168:17355] - Starting up, Pekko version [1.0.3] ... 11:17:03,947 AM [test-pekko.actor.default-dispatcher-6] [INFO] ArteryTransport - Remoting started with transport [Artery tcp]; listening on address [pekko://test@10.30.170.168:17355] with UID [4394533962875738470] 11:17:03,947 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.168:17355] - Starting up, Pekko version [1.0.3] ... [INFO] [06/27/2025 11:17:03.949] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.168:17355] - Registered cluster JMX MBean [pekko:type=Cluster] [INFO] [06/27/2025 11:17:03.949] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.168:17355] - Started up successfully 11:17:03,949 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.168:17355] - Registered cluster JMX MBean [pekko:type=Cluster] 11:17:03,949 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.168:17355] - Started up successfully 11:17:03,950 AM [test-pekko.actor.default-dispatcher-11] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.168:17355] - No downing-provider-class configured, manual cluster downing required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#downing 11:17:03,950 AM [test-pekko.actor.default-dispatcher-11] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.168:17355] - No seed-nodes configured, manual cluster join required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#joining [INFO] [06/27/2025 11:17:03.950] [test-pekko.actor.internal-dispatcher-4] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.168:17355] - No downing-provider-class configured, manual cluster downing required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#downing [INFO] [06/27/2025 11:17:03.950] [test-pekko.actor.internal-dispatcher-4] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.168:17355] - No seed-nodes configured, manual cluster join required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#joining 11:17:03,962 AM [main] [INFO] LeaderTest - Starting testHandleMessageForUnknownMessage 11:17:03,963 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:03,963 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:03,963 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior586#1123575657] 11:17:03,973 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader587] 11:17:03,974 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower588] 11:17:03,976 AM [main] [INFO] LeaderTest - Starting testLaggingFollowerStarvation 11:17:03,977 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:03,977 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Election: Leader has following peers: [follower593, follower594] 11:17:03,977 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Checking sendAppendEntries for follower follower593: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 11:17:03,977 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Checking sendAppendEntries for follower follower594: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 11:17:03,977 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower593 updated: matchIndex: 1, nextIndex: 2 11:17:03,977 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: -1 11:17:03,977 AM [main] [DEBUG] RaftActorBehavior - leader592 (Leader): Setting last applied to 0 11:17:03,977 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:03,977 AM [main] [DEBUG] RaftActorBehavior - leader592 (Leader): Setting last applied to 1 11:17:03,977 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:03,977 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Checking sendAppendEntries for follower follower593: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: -1 11:17:03,977 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): sendAppendEntries: 2 is present for follower follower593 11:17:03,977 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Sending AppendEntries to follower follower593: AppendEntries{term=1, leaderId=leader592, prevLogIndex=2, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=3, term=1, payload=3], SimpleReplicatedLogEntry [index=4, term=1, payload=4]]} 11:17:04,178 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower593 updated: matchIndex: 2, nextIndex: 3 11:17:04,179 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 11:17:04,179 AM [main] [DEBUG] RaftActorBehavior - leader592 (Leader): Setting last applied to 2 11:17:04,179 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 11:17:04,179 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Checking sendAppendEntries for follower follower593: active: true, followerNextIndex: 3, leaderLastIndex: 4, leaderSnapShotIndex: -1 11:17:04,179 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): sendAppendEntries: 3 is present for follower follower593 11:17:04,179 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Sending AppendEntries to follower follower593: AppendEntries{term=1, leaderId=leader592, prevLogIndex=3, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=4, term=1, payload=4]]} 11:17:04,379 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower593 updated: matchIndex: 3, nextIndex: 4 11:17:04,379 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Applying to log - commitIndex: 3, lastAppliedIndex: 2 11:17:04,379 AM [main] [DEBUG] RaftActorBehavior - leader592 (Leader): Setting last applied to 3 11:17:04,379 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 2 to 3 11:17:04,379 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Checking sendAppendEntries for follower follower593: active: true, followerNextIndex: 4, leaderLastIndex: 4, leaderSnapShotIndex: -1 11:17:04,379 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): sendAppendEntries: 4 is present for follower follower593 11:17:04,579 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower593 updated: matchIndex: 4, nextIndex: 5 11:17:04,579 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): Checking sendAppendEntries for follower follower593: active: true, followerNextIndex: 5, leaderLastIndex: 4, leaderSnapShotIndex: -1 11:17:04,780 AM [main] [INFO] AbstractLeader - leader592 (Leader): handleAppendEntriesReply: follower follower593 lastIndex 5 is ahead of our lastIndex 4 (snapshotIndex -1, snapshotTerm -1) - forcing install snaphot 11:17:04,780 AM [main] [INFO] SnapshotManager - leader592: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=4, lastAppliedTerm=1, lastIndex=4, lastTerm=1, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=0, mandatoryTrim=false] to install on follower593 11:17:04,780 AM [main] [DEBUG] SnapshotManager - leader592: lastSequenceNumber prior to capture: -1 11:17:04,781 AM [main] [DEBUG] EntryStoreCompleter - test: 1 completion(s) pending 11:17:04,781 AM [main] [DEBUG] EntryStoreCompleter - test: running 1 completion(s) 11:17:04,781 AM [main] [INFO] SnapshotManager - leader592: Persising snapshot at EntryInfo[index=4, term=1]/EntryInfo[index=4, term=1] 11:17:04,781 AM [main] [INFO] SnapshotManager - leader592: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 11:17:04,781 AM [main] [DEBUG] AbstractLeader - leader592 (Leader): sendInstallSnapshot 11:17:04,781 AM [main] [DEBUG] LeaderInstallSnapshotState - leader592 (Leader): Snapshot 0 bytes, total chunks to send: 0 11:17:04,781 AM [main] [WARN] AbstractLeader - leader592 (Leader): Unable to send chunk: 1/0. Reseting snapshot progress. Snapshot state: LeaderInstallSnapshotState{snapshotChunkSize=491520, offset=0, replyReceivedForOffset=-1, replyStatus=false, chunkIndex=1, totalChunks=0, lastChunkHashCode=-1, nextChunkHashCode=-1, snapshotSize=0, chunkTimer=0.000 ns} java.io.IOException: The # of bytes read from the input stream, -1, does not match the expected # 0 at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.LeaderInstallSnapshotState.getNextChunk(LeaderInstallSnapshotState.java:153) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:990) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:967) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendInstallSnapshot(AbstractLeader.java:946) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.persist(SnapshotManager.java:425) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.lambda$captureToInstall$0(SnapshotManager.java:304) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.ImmediateSnapshotStore.lambda$streamToInstall$1(ImmediateSnapshotStore.java:66) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.EntryStoreCompleter.runCompletions(EntryStoreCompleter.java:167) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.EntryStoreCompleter.completeWhilePending(EntryStoreCompleter.java:135) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.EntryStoreCompleter.enqueueCompletions(EntryStoreCompleter.java:199) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.EntryStoreCompleter.enqueueCompletion(EntryStoreCompleter.java:171) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.ImmediateSnapshotStore.streamToInstall(ImmediateSnapshotStore.java:66) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.captureToInstall(SnapshotManager.java:297) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.captureToInstall(SnapshotManager.java:290) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.initiateCaptureSnapshot(AbstractLeader.java:915) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.processAppendEntriesReply(AbstractLeader.java:264) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:127) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:49) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:376) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.handleMessage(AbstractLeader.java:551) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleMessage(Leader.java:106) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.LeaderTest.testLaggingFollowerStarvation(LeaderTest.java:1948) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63) at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329) at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.ParentRunner.run(ParentRunner.java:413) at org.junit.runner.JUnitCore.run(JUnitCore.java:137) at org.junit.runner.JUnitCore.run(JUnitCore.java:115) at org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42) at org.junit.vintage.engine.execution.VintageExecutor.executeClassesAndMethodsSequentially(VintageExecutor.java:93) at org.junit.vintage.engine.execution.VintageExecutor.executeAllChildren(VintageExecutor.java:73) at org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:70) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.executeEngine(EngineExecutionOrchestrator.java:230) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.failOrExecuteEngine(EngineExecutionOrchestrator.java:204) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:172) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:101) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:64) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:150) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:63) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:109) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:91) at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) at org.junit.platform.launcher.core.InterceptingLauncher.lambda$execute$1(InterceptingLauncher.java:39) at org.junit.platform.launcher.core.ClasspathAlignmentCheckingLauncherInterceptor.intercept(ClasspathAlignmentCheckingLauncherInterceptor.java:25) at org.junit.platform.launcher.core.InterceptingLauncher.execute(InterceptingLauncher.java:38) at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) at org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:56) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:194) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:150) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:124) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385) at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162) at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495) 11:17:04,782 AM [main] [DEBUG] LeaderInstallSnapshotState - leader592 (Leader): Snapshot 0 bytes, total chunks to send: 0 11:17:04,782 AM [main] [WARN] AbstractLeader - leader592 (Leader): Unable to send chunk: 1/0. Reseting snapshot progress. Snapshot state: LeaderInstallSnapshotState{snapshotChunkSize=491520, offset=0, replyReceivedForOffset=-1, replyStatus=false, chunkIndex=1, totalChunks=0, lastChunkHashCode=-1, nextChunkHashCode=-1, snapshotSize=0, chunkTimer=0.000 ns} java.io.IOException: The # of bytes read from the input stream, -1, does not match the expected # 0 at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.LeaderInstallSnapshotState.getNextChunk(LeaderInstallSnapshotState.java:153) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:990) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:967) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendInstallSnapshot(AbstractLeader.java:946) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.persist(SnapshotManager.java:425) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.lambda$captureToInstall$0(SnapshotManager.java:304) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.ImmediateSnapshotStore.lambda$streamToInstall$1(ImmediateSnapshotStore.java:66) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.EntryStoreCompleter.runCompletions(EntryStoreCompleter.java:167) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.EntryStoreCompleter.completeWhilePending(EntryStoreCompleter.java:135) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.EntryStoreCompleter.enqueueCompletions(EntryStoreCompleter.java:199) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.EntryStoreCompleter.enqueueCompletion(EntryStoreCompleter.java:171) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.ImmediateSnapshotStore.streamToInstall(ImmediateSnapshotStore.java:66) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.captureToInstall(SnapshotManager.java:297) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.captureToInstall(SnapshotManager.java:290) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.initiateCaptureSnapshot(AbstractLeader.java:915) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.processAppendEntriesReply(AbstractLeader.java:264) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:127) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:49) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:376) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.handleMessage(AbstractLeader.java:551) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleMessage(Leader.java:106) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.LeaderTest.testLaggingFollowerStarvation(LeaderTest.java:1948) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63) at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329) at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.ParentRunner.run(ParentRunner.java:413) at org.junit.runner.JUnitCore.run(JUnitCore.java:137) at org.junit.runner.JUnitCore.run(JUnitCore.java:115) at org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42) at org.junit.vintage.engine.execution.VintageExecutor.executeClassesAndMethodsSequentially(VintageExecutor.java:93) at org.junit.vintage.engine.execution.VintageExecutor.executeAllChildren(VintageExecutor.java:73) at org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:70) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.executeEngine(EngineExecutionOrchestrator.java:230) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.failOrExecuteEngine(EngineExecutionOrchestrator.java:204) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:172) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:101) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:64) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:150) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:63) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:109) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:91) at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) at org.junit.platform.launcher.core.InterceptingLauncher.lambda$execute$1(InterceptingLauncher.java:39) at org.junit.platform.launcher.core.ClasspathAlignmentCheckingLauncherInterceptor.intercept(ClasspathAlignmentCheckingLauncherInterceptor.java:25) at org.junit.platform.launcher.core.InterceptingLauncher.execute(InterceptingLauncher.java:38) at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) at org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:56) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:194) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:150) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:124) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385) at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162) at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495) 11:17:04,783 AM [main] [WARN] AbstractLeader - leader592 (Leader): Unable to send chunk: 1/0. Reseting snapshot progress. Snapshot state: LeaderInstallSnapshotState{snapshotChunkSize=491520, offset=0, replyReceivedForOffset=-1, replyStatus=false, chunkIndex=1, totalChunks=0, lastChunkHashCode=-1, nextChunkHashCode=-1, snapshotSize=0, chunkTimer=0.000 ns} java.io.IOException: The # of bytes read from the input stream, -1, does not match the expected # 0 at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.LeaderInstallSnapshotState.getNextChunk(LeaderInstallSnapshotState.java:153) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:990) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:967) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendUpdatesToFollower(AbstractLeader.java:713) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.processAppendEntriesReply(AbstractLeader.java:333) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:127) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:49) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:376) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.handleMessage(AbstractLeader.java:551) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleMessage(Leader.java:106) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.LeaderTest.testLaggingFollowerStarvation(LeaderTest.java:1948) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63) at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329) at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.ParentRunner.run(ParentRunner.java:413) at org.junit.runner.JUnitCore.run(JUnitCore.java:137) at org.junit.runner.JUnitCore.run(JUnitCore.java:115) at org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42) at org.junit.vintage.engine.execution.VintageExecutor.executeClassesAndMethodsSequentially(VintageExecutor.java:93) at org.junit.vintage.engine.execution.VintageExecutor.executeAllChildren(VintageExecutor.java:73) at org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:70) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.executeEngine(EngineExecutionOrchestrator.java:230) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.failOrExecuteEngine(EngineExecutionOrchestrator.java:204) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:172) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:101) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:64) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:150) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:63) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:109) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:91) at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) at org.junit.platform.launcher.core.InterceptingLauncher.lambda$execute$1(InterceptingLauncher.java:39) at org.junit.platform.launcher.core.ClasspathAlignmentCheckingLauncherInterceptor.intercept(ClasspathAlignmentCheckingLauncherInterceptor.java:25) at org.junit.platform.launcher.core.InterceptingLauncher.execute(InterceptingLauncher.java:38) at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) at org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:56) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:194) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:150) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:124) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385) at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162) at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495) 11:17:04,984 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior589#1932784406] 11:17:04,995 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader590] 11:17:04,995 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower591] 11:17:04,995 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower593#-1149196175] 11:17:04,995 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower594#-389457555] 11:17:05,0 AM [main] [INFO] LeaderTest - Starting testHandleInstallSnapshotReplyWithInvalidChunkIndex 11:17:05,0 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:05,2 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:05,2 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:06,2 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 11:17:06,2 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 3 11:17:06,2 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 11:17:06,2 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 11:17:06,2 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower597), Chunk: 1/3 11:17:06,3 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=-1, success=false} 11:17:06,3 AM [main] [ERROR] AbstractLeader - leader (Leader): Chunk index -1 in InstallSnapshotReply from follower follower does not match expected index 1 11:17:06,103 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 11:17:06,103 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 11:17:06,103 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower597), Chunk: 1/3 11:17:06,103 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior595#-1679624220] 11:17:06,114 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader596] 11:17:06,115 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower597] 11:17:06,118 AM [main] [INFO] LeaderTest - Starting testLeaderAddressInAppendEntries 11:17:06,119 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,119 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 11:17:06,119 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,119 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:06,120 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 11:17:06,120 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:06,220 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior598#1050012213] 11:17:06,231 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader599] 11:17:06,231 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower600] 11:17:06,234 AM [main] [INFO] LeaderTest - Starting testHandleRequestVoteReply 11:17:06,234 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,235 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:06,235 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior601#1957012253] 11:17:06,245 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader602] 11:17:06,245 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower603] 11:17:06,248 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyFailureWithFollowersLogBehindTheLeader 11:17:06,248 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,248 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 2 11:17:06,249 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,249 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:06,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: -1 11:17:06,249 AM [main] [INFO] Follower - follower (Follower): The log is not empty but the prevLogIndex 1 was not found in it - lastIndex: 0, snapshotIndex: -1, snapshotTerm: -1 11:17:06,249 AM [main] [INFO] Follower - follower (Follower): Follower is out-of-sync so sending negative reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 11:17:06,249 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 11:17:06,249 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 11:17:06,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 11:17:06,249 AM [main] [INFO] AbstractLeader - leader (Leader): follower follower appears to be behind the leader from the last snapshot - updated: matchIndex: 0, nextIndex: 1 11:17:06,249 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:06,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: 0 11:17:06,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 11:17:06,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=1], SimpleReplicatedLogEntry [index=2, term=1, payload=2]]} 11:17:06,250 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=1], SimpleReplicatedLogEntry [index=2, term=1, payload=2]]} 11:17:06,250 AM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 11:17:06,250 AM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 11:17:06,250 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 11:17:06,250 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 2 11:17:06,250 AM [main] [DEBUG] Follower - follower (Follower): Log size is now 3 11:17:06,250 AM [main] [DEBUG] Follower - follower (Follower): Commit index set to 2 11:17:06,250 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries returning : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=2, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 11:17:06,250 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 11:17:06,250 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 11:17:06,250 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 11:17:06,250 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 11:17:06,250 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): 0, lastIndex(): 2 11:17:06,250 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 11:17:06,250 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:06,250 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 2 11:17:06,250 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 11:17:06,250 AM [main] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 0 for term 1 11:17:06,250 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior604#167625362] 11:17:06,261 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader605] 11:17:06,261 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower606] 11:17:06,264 AM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithFollowerInitiallyOutOfSync 11:17:06,264 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,265 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,265 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:06,355 AM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 11:17:06,355 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:06,356 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 11:17:06,356 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:06,356 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:06,356 AM [main] [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==[SimpleReplicatedLogEntry [index=0, term=1, payload=1], SimpleReplicatedLogEntry [index=1, term=1, payload=2]]} 11:17:06,356 AM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: -1, lastIndex: 1, isVoting: true 11:17:06,557 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:06,557 AM [main] [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==[SimpleReplicatedLogEntry [index=0, term=1, payload=1], SimpleReplicatedLogEntry [index=1, term=1, payload=2]]} 11:17:06,558 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:06,558 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:06,558 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:06,558 AM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: 1, lastIndex: 1, isVoting: true 11:17:06,558 AM [main] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 11:17:06,558 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:06,558 AM [main] [DEBUG] Leader - leader (Leader): Leader transfer complete 11:17:06,558 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior607#-269469359] 11:17:06,569 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader608] 11:17:06,569 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower609] 11:17:06,571 AM [main] [INFO] LeaderTest - Starting testInstallSnapshot 11:17:06,571 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,571 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 11:17:06,571 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,571 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 2 11:17:06,571 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 11:17:06,572 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 1 11:17:06,572 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=106, hashCode=1072258452 11:17:06,572 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 106 11:17:06,572 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower612), Chunk: 1/1 11:17:06,572 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior610#1707307655] 11:17:06,582 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader611] 11:17:06,582 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower612] 11:17:06,584 AM [main] [INFO] LeaderTest - Starting testFollowerCatchUpWithAppendEntriesMaxDataSizeExceeded 11:17:06,584 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,584 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 3 11:17:06,584 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,584 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: -1 11:17:06,584 AM [main] [INFO] Follower - follower (Follower): The followers log is empty and the senders prevLogIndex is 2 11:17:06,584 AM [main] [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=0, raftVersion=5, recipientRaftVersion=5} 11:17:06,584 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 11:17:06,584 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=-1, logLastTerm=-1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 11:17:06,584 AM [main] [INFO] AbstractLeader - leader (Leader): follower follower appears to be behind the leader from the last snapshot - updated: matchIndex: -1, nextIndex: 0 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 3, leaderSnapShotIndex: -1 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=3, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=0], SimpleReplicatedLogEntry [index=1, term=1, payload=1]]} 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=3, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=0], SimpleReplicatedLogEntry [index=1, term=1, payload=1]]} 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 0 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): Log size is now 2 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): Commit index set to 1 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries returning : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:06,584 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 1 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=3, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=2], SimpleReplicatedLogEntry [index=3, term=1, payload=3]]} 11:17:06,584 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 2 entries behind leader leader and reached 1 (of expected -1) 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): -1, lastIndex(): 1 11:17:06,584 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 11:17:06,584 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:06,584 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 11:17:06,584 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:06,584 AM [main] [WARN] RaftActorBehavior - follower (Follower): Missing index 2 from log. Cannot apply state. Ignoring 2 to 3 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=3, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=2], SimpleReplicatedLogEntry [index=3, term=1, payload=3]]} 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 1, entries to be added from: 0 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 2 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 3 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): Log size is now 4 11:17:06,584 AM [main] [DEBUG] Follower - follower (Follower): Commit index set to 3 11:17:06,584 AM [main] [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} 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 3, nextIndex: 4 11:17:06,584 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 2 for term 1 11:17:06,584 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 2 11:17:06,585 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 3 (of expected -1) 11:17:06,585 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): 1, lastIndex(): 3 11:17:06,585 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 2 11:17:06,585 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 11:17:06,585 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 3 11:17:06,585 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 2 to 3 11:17:06,585 AM [main] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 1 for term 1 11:17:06,585 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior613#60753533] 11:17:06,595 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader614] 11:17:06,595 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower615] 11:17:06,597 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyFailureWithFollowersLogTermDifferent 11:17:06,597 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,597 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,597 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,597 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,597 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:06,597 AM [main] [INFO] Follower - follower (Follower): The prevLogIndex 0 was found in the log but the term 1 is not equal to the append entries prevLogTerm 2 - lastIndex: 0, snapshotIndex: -1, snapshotTerm: -1 11:17:06,597 AM [main] [INFO] Follower - follower (Follower): Follower is out-of-sync so sending negative reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 11:17:06,597 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 11:17:06,597 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 11:17:06,597 AM [main] [INFO] AbstractLeader - leader (Leader): follower follower last log term 1 conflicts with the leader's 2 - dec next index to 0 11:17:06,597 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:06,597 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:06,597 AM [main] [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==[SimpleReplicatedLogEntry [index=0, term=2, payload=0], SimpleReplicatedLogEntry [index=1, term=2, payload=1]]} 11:17:06,597 AM [main] [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==[SimpleReplicatedLogEntry [index=0, term=2, payload=0], SimpleReplicatedLogEntry [index=1, term=2, payload=1]]} 11:17:06,597 AM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 11:17:06,597 AM [main] [DEBUG] Follower - follower (Follower): matchEntry SimpleReplicatedLogEntry [index=0, term=2, payload=0] is present: existingEntryTerm: 1 11:17:06,597 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:06,597 AM [main] [INFO] Follower - follower (Follower): Removing entries from log starting at 0, commitIndex: -1, lastApplied: -1 11:17:06,597 AM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 11:17:06,597 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 0 11:17:06,597 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 11:17:06,597 AM [main] [DEBUG] Follower - follower (Follower): Log size is now 2 11:17:06,597 AM [main] [DEBUG] Follower - follower (Follower): Commit index set to 1 11:17:06,597 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries returning : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=1, logLastTerm=2, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 11:17:06,597 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:06,597 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:06,597 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:06,597 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 11:17:06,597 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 1 11:17:06,597 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 11:17:06,597 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:06,597 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 11:17:06,597 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:06,597 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior616#1565053603] 11:17:06,608 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader617] 11:17:06,608 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower618] 11:17:06,610 AM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithEmptyLog 11:17:06,610 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,610 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,610 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:06,610 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 11:17:06,610 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:06,611 AM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 11:17:06,611 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:06,611 AM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: -1, lastIndex: -1, isVoting: true 11:17:06,611 AM [main] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 11:17:06,611 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:06,611 AM [main] [DEBUG] Leader - leader (Leader): Leader transfer complete 11:17:06,611 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior619#426882806] 11:17:06,622 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader620] 11:17:06,623 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower621] 11:17:06,625 AM [main] [INFO] LeaderTest - Starting testSendAppendEntriesSnapshotScenario 11:17:06,625 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,625 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,625 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 3 11:17:06,625 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 11:17:06,625 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:06,625 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: 3 11:17:06,625 AM [main] [INFO] AbstractLeader - leader (Leader): Initiating install snapshot to follower follower: follower nextIndex: 2, leader snapshotIndex: 3, leader lastIndex: 4, leader log size: 1 11:17:06,625 AM [main] [INFO] SnapshotManager - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=3, lastAppliedTerm=1, lastIndex=4, lastTerm=2, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=1, mandatoryTrim=false] to install on follower 11:17:06,626 AM [main] [DEBUG] SnapshotManager - leader: lastSequenceNumber prior to capture: -1 11:17:06,626 AM [main] [DEBUG] EntryStoreCompleter - test: 1 completion(s) pending 11:17:06,626 AM [main] [DEBUG] EntryStoreCompleter - test: running 1 completion(s) 11:17:06,626 AM [main] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=3, term=1]/EntryInfo[index=4, term=2] 11:17:06,626 AM [main] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: 3 and term: 1 11:17:06,626 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior622#1260079447] 11:17:06,636 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader623] 11:17:06,636 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower624] 11:17:06,638 AM [main] [INFO] LeaderTest - Starting testLeaderCreatedWithCommitIndexLessThanLastIndex 11:17:06,638 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,638 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,638 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,638 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 11:17:06,638 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 11:17:06,639 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior625#-997962871] 11:17:06,649 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader626] 11:17:06,649 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower627] 11:17:06,652 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplySuccess 11:17:06,652 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,652 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,652 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,652 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 11:17:06,652 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 11:17:06,652 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 11:17:06,652 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 11:17:06,652 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 11:17:06,652 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 11:17:06,652 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 11:17:06,653 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior628#-706380384] 11:17:06,663 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader629] 11:17:06,663 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower630] 11:17:06,666 AM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckNoVotingFollowers 11:17:06,666 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,666 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,666 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,666 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:06,667 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 11:17:06,667 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior631#1802976185] 11:17:06,677 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader632] 11:17:06,678 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower633] 11:17:06,679 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyFailureWithFollowersLogEmpty 11:17:06,679 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,679 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,679 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,679 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,679 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:06,679 AM [main] [INFO] Follower - follower (Follower): The followers log is empty and the senders prevLogIndex is 0 11:17:06,679 AM [main] [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=0, raftVersion=5, recipientRaftVersion=5} 11:17:06,679 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 11:17:06,679 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=-1, logLastTerm=-1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 11:17:06,679 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 11:17:06,679 AM [main] [INFO] AbstractLeader - leader (Leader): follower follower appears to be behind the leader from the last snapshot - updated: matchIndex: -1, nextIndex: 0 11:17:06,679 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:06,679 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:06,679 AM [main] [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==[SimpleReplicatedLogEntry [index=0, term=1, payload=0], SimpleReplicatedLogEntry [index=1, term=1, payload=1]]} 11:17:06,679 AM [main] [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==[SimpleReplicatedLogEntry [index=0, term=1, payload=0], SimpleReplicatedLogEntry [index=1, term=1, payload=1]]} 11:17:06,679 AM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 11:17:06,679 AM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 11:17:06,680 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 0 11:17:06,680 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 11:17:06,680 AM [main] [DEBUG] Follower - follower (Follower): Log size is now 2 11:17:06,680 AM [main] [DEBUG] Follower - follower (Follower): Commit index set to 1 11:17:06,680 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries returning : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 11:17:06,680 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:06,680 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:06,680 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:06,680 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 11:17:06,680 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 1 11:17:06,680 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 11:17:06,680 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:06,680 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 11:17:06,680 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:06,680 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior634#-671360726] 11:17:06,690 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader635] 11:17:06,691 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower636] 11:17:06,693 AM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageCommitIndexIncrementedBeforeConsensus 11:17:06,693 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,694 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,694 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:06,694 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:06,694 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:06,694 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:06,694 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 11:17:06,694 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 11:17:06,694 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 11:17:06,694 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 11:17:06,694 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:06,694 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 11:17:06,695 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior637#2028768933] 11:17:06,705 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader638] 11:17:06,705 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower639] 11:17:06,707 AM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckNoFollowers 11:17:06,708 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,708 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:06,708 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior640#-1514284629] 11:17:06,718 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader641] 11:17:06,719 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower642] 11:17:06,721 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyWithNewerTerm 11:17:06,721 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,721 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:06,721 AM [main] [INFO] AbstractLeader - leader (Leader): Term 20 in "AppendEntriesReply{term=20, success=false, followerId=foo, logLastIndex=1000, logLastTerm=10, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=1, raftVersion=5, recipientRaftVersion=5}" message is greater than leader's term 1 - switching to Follower 11:17:06,721 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:06,721 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 20 11:17:06,721 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior643#-1199534179] 11:17:06,732 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader644] 11:17:06,732 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower645] 11:17:06,734 AM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithFollowerInSync 11:17:06,735 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 11:17:06,735 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:06,735 AM [main] [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==[SimpleReplicatedLogEntry [index=0, term=1, payload=foo]]} 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 11:17:06,735 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 11:17:06,735 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:06,735 AM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 11:17:06,735 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:06,736 AM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: 0, lastIndex: 0, isVoting: true 11:17:06,736 AM [main] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 11:17:06,736 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:06,736 AM [main] [DEBUG] Leader - leader (Leader): Leader transfer complete 11:17:06,737 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior646#244060695] 11:17:06,747 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader647] 11:17:06,747 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower648] 11:17:06,749 AM [main] [INFO] LeaderTest - Starting testInitiateForceInstallSnapshot 11:17:06,749 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,749 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 11:17:06,750 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,750 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:06,750 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=true, needsLeaderAddress=false, payloadVersion=1, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 11:17:06,750 AM [main] [INFO] SnapshotManager - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=3, lastAppliedTerm=1, lastIndex=4, lastTerm=2, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=1, mandatoryTrim=false] to install on follower 11:17:06,750 AM [main] [DEBUG] SnapshotManager - leader: lastSequenceNumber prior to capture: -1 11:17:06,750 AM [main] [DEBUG] EntryStoreCompleter - test: 1 completion(s) pending 11:17:06,750 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 11:17:06,750 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:06,750 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=true, needsLeaderAddress=false, payloadVersion=1, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 11:17:06,750 AM [main] [DEBUG] SnapshotManager - leader: captureToInstall should not be called in state Capture[lastSequenceNumber=-1, request=CaptureSnapshot [lastAppliedIndex=3, lastAppliedTerm=1, lastIndex=4, lastTerm=2, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=1, mandatoryTrim=false]] 11:17:06,751 AM [main] [DEBUG] EntryStoreCompleter - test: running 1 completion(s) 11:17:06,751 AM [main] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=3, term=1]/EntryInfo[index=4, term=2] 11:17:06,751 AM [main] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: -1 and term: -1 11:17:06,751 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 11:17:06,751 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 7 bytes, total chunks to send: 1 11:17:06,751 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=7, offset=0, size=7, hashCode=1742900734 11:17:06,751 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 7 11:17:06,751 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower651), Chunk: 1/1 11:17:06,751 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=true, needsLeaderAddress=false, payloadVersion=1, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 11:17:06,951 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior649#-1440715623] 11:17:06,962 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader650] 11:17:06,962 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower651] 11:17:06,965 AM [main] [INFO] LeaderTest - Starting testLeaderCreatedWithCommitIndexLessThanFollowersCommitIndex 11:17:06,965 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,965 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:06,966 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:06,966 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 11:17:06,966 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 11:17:06,966 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 11:17:06,966 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: -1 11:17:06,966 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 11:17:06,966 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:06,966 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 11:17:06,966 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:06,966 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 11:17:06,966 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 11:17:06,966 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 11:17:06,966 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 11:17:06,966 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 11:17:06,966 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): -1, lastIndex(): 2 11:17:06,966 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 11:17:06,966 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:06,966 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 11:17:06,966 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:06,966 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 2 11:17:06,966 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 11:17:06,966 AM [main] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 1 for term 1 11:17:07,17 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 11:17:07,17 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior652#-1639480307] 11:17:07,28 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader653] 11:17:07,28 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower654] 11:17:07,131 AM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithFollowerSyncTimeout 11:17:07,131 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:07,131 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:07,131 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:07,131 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 11:17:07,131 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:07,131 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 11:17:07,131 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:07,132 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:07,132 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:07,132 AM [main] [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==[SimpleReplicatedLogEntry [index=0, term=1, payload=foo]]} 11:17:07,132 AM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 11:17:07,132 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:07,132 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:07,333 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:07,334 AM [main] [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==[SimpleReplicatedLogEntry [index=0, term=1, payload=foo]]} 11:17:07,535 AM [main] [DEBUG] Leader - leader (Leader): Leadership transfer expired 11:17:07,636 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior655#2124362165] 11:17:07,647 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader656] 11:17:07,647 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower657] 11:17:07,650 AM [main] [INFO] LeaderTest - Starting testSendingReplicateImmediatelyAfterHeartbeatDoesReplicate 11:17:07,650 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:07,655 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:07,655 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:07,655 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:07,655 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:07,655 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:07,806 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 11:17:07,806 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:07,806 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 11:17:07,806 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:07,806 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 11:17:07,806 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior658#490291929] 11:17:07,817 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader659] 11:17:07,817 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower660] 11:17:07,820 AM [main] [INFO] LeaderTest - Starting testLeaderInstallSnapshotState 11:17:07,821 AM [main] [DEBUG] LeaderInstallSnapshotState - test: Snapshot 106 bytes, total chunks to send: 3 11:17:07,821 AM [main] [DEBUG] LeaderInstallSnapshotState - test: Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 11:17:07,821 AM [main] [DEBUG] LeaderInstallSnapshotState - test: Next chunk: total length=106, offset=50, size=50, hashCode=-2011893223 11:17:07,821 AM [main] [DEBUG] LeaderInstallSnapshotState - test: Next chunk: total length=106, offset=100, size=6, hashCode=-1840245320 11:17:07,821 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior661#309975899] 11:17:07,831 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader662] 11:17:07,832 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower663] 11:17:07,838 AM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckTwoFollowersWhenElectionsAreDisabled 11:17:07,838 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:07,838 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower-2, follower-1] 11:17:07,838 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:07,839 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:07,850 AM [main] [WARN] Leader - leader (Leader): At least 1 followers need to be active, Switching leader from Leader to IsolatedLeader 11:17:07,850 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Election: Leader has following peers: [follower-2, follower-1] 11:17:07,850 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 [WARN] [06/27/2025 11:17:07.851] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower-2] received dead letter from TestActor[pekko://test/user/leader665]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [INFO] [pekkoDeadLetter][06/27/2025 11:17:07.851] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower-2] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader665] to Actor[pekko://test/user/follower-2] was not delivered. [1] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower-2] 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'. 11:17:07,851 AM [test-pekko.actor.default-dispatcher-13] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader665] to Actor[pekko://test/user/follower-2] was not delivered. [1] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower-2] 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'. 11:17:07,851 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:07,851 AM [test-pekko.actor.default-dispatcher-5] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader665] to Actor[pekko://test/user/follower-1] was not delivered. [2] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower-1] 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'. [WARN] [06/27/2025 11:17:07.851] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower-1] received dead letter from TestActor[pekko://test/user/leader665]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [INFO] [pekkoDeadLetter][06/27/2025 11:17:07.851] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower-1] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader665] to Actor[pekko://test/user/follower-1] was not delivered. [2] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower-1] 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'. 11:17:07,851 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior664#1638432762] 11:17:07,862 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader665] 11:17:07,862 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower666] 11:17:07,865 AM [main] [INFO] LeaderTest - Starting testDuplicateAppendEntriesWillBeSentOnHeartBeat 11:17:07,865 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:07,866 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:07,866 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:07,866 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:07,866 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:07,867 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:07,867 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 11:17:07,867 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:07,867 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 11:17:07,867 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:07,867 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} [WARN] [06/27/2025 11:17:07.914] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/leader665] received dead letter from TestActor[pekko://test/user/leader665]: org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat@6051eca9 [INFO] [pekkoDeadLetter][06/27/2025 11:17:07.914] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/leader665] Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader665] to TestActor[pekko://test/user/leader665] was not delivered. [3] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader665] 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'. 11:17:07,914 AM [test-pekko.actor.default-dispatcher-5] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader665] to TestActor[pekko://test/user/leader665] was not delivered. [3] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader665] 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'. 11:17:08,617 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:08,617 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 11:17:08,617 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior667#1385503841] 11:17:08,628 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader668] 11:17:08,629 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower669] 11:17:08,631 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyWithNewerTermWhenElectionsAreDisabled 11:17:08,631 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:08,632 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:08,632 AM [main] [INFO] AbstractLeader - leader (Leader): Term 20 in "AppendEntriesReply{term=20, success=false, followerId=foo, logLastIndex=1000, logLastTerm=10, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=1, raftVersion=5, recipientRaftVersion=5}" message is greater than leader's term 1 - switching to Follower 11:17:08,632 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior670#434472541] 11:17:08,643 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader671] 11:17:08,643 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower672] 11:17:08,745 AM [main] [INFO] LeaderTest - Starting testLargePayloadSlicingExpiration 11:17:08,745 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:08,745 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 11:17:08,745 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:08,745 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:08,745 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 11:17:08,745 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:08,745 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 11:17:08,745 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:08,745 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:08,746 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:08,746 AM [main] [DEBUG] AbstractLeader - leader (Leader): Log entry size 11 exceeds max payload size 10 11:17:08,746 AM [main] [DEBUG] AbstractLeader - leader (Leader): Serializing AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=large]]} for slicing for follower follower 11:17:08,746 AM [main] [DEBUG] AbstractLeader - leader (Leader): Slicing stream for index 0, follower follower 11:17:09,97 AM [main] [DEBUG] AbstractLeader - leader (Leader): On SharedFileBackedOutputStream cleanup for index 0 11:17:09,97 AM [main] [WARN] MessageSlicer - leader (Leader)_slicer-id-140: SlicedMessageState for MessageSliceIdentifier [clientIdentifier=FollowerIdentifier{value=follower}, slicerId=140, messageId=3] was expired from the cache 11:17:09,101 AM [main] [ERROR] AbstractLeader - leader (Leader): Error slicing AppendEntries for follower follower java.lang.RuntimeException: The slicing state for message identifier MessageSliceIdentifier [clientIdentifier=FollowerIdentifier{value=follower}, slicerId=140, messageId=3] was expired due to inactivity from the assembling component on the other end at org.opendaylight.controller.cluster.commons@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.messaging.MessageSlicer.stateRemoved(MessageSlicer.java:300) at com.google.common@33.4.8-jre/com.google.common.cache.LocalCache.processPendingNotifications(LocalCache.java:1838) at com.google.common@33.4.8-jre/com.google.common.cache.LocalCache$Segment.runUnlockedCleanup(LocalCache.java:3483) at com.google.common@33.4.8-jre/com.google.common.cache.LocalCache$Segment.cleanUp(LocalCache.java:3465) at com.google.common@33.4.8-jre/com.google.common.cache.LocalCache.cleanUp(LocalCache.java:3923) at com.google.common@33.4.8-jre/com.google.common.cache.LocalCache$LocalManualCache.cleanUp(LocalCache.java:4918) at org.opendaylight.controller.cluster.commons@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.messaging.MessageSlicer.checkExpiredSlicedMessageState(MessageSlicer.java:191) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendHeartBeat(AbstractLeader.java:1054) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.handleMessage(AbstractLeader.java:549) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleMessage(Leader.java:106) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.LeaderTest.testLargePayloadSlicingExpiration(LeaderTest.java:2302) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) at java.base/java.lang.reflect.Method.invoke(Method.java:580) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63) at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329) at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306) at org.junit.runners.ParentRunner.run(ParentRunner.java:413) at org.junit.runner.JUnitCore.run(JUnitCore.java:137) at org.junit.runner.JUnitCore.run(JUnitCore.java:115) at org.junit.vintage.engine.execution.RunnerExecutor.execute(RunnerExecutor.java:42) at org.junit.vintage.engine.execution.VintageExecutor.executeClassesAndMethodsSequentially(VintageExecutor.java:93) at org.junit.vintage.engine.execution.VintageExecutor.executeAllChildren(VintageExecutor.java:73) at org.junit.vintage.engine.VintageTestEngine.execute(VintageTestEngine.java:70) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.executeEngine(EngineExecutionOrchestrator.java:230) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.failOrExecuteEngine(EngineExecutionOrchestrator.java:204) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:172) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:101) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:64) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:150) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:63) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:109) at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:91) at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) at org.junit.platform.launcher.core.InterceptingLauncher.lambda$execute$1(InterceptingLauncher.java:39) at org.junit.platform.launcher.core.ClasspathAlignmentCheckingLauncherInterceptor.intercept(ClasspathAlignmentCheckingLauncherInterceptor.java:25) at org.junit.platform.launcher.core.InterceptingLauncher.execute(InterceptingLauncher.java:38) at org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47) at org.apache.maven.surefire.junitplatform.LazyLauncher.execute(LazyLauncher.java:56) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.execute(JUnitPlatformProvider.java:194) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invokeAllTests(JUnitPlatformProvider.java:150) at org.apache.maven.surefire.junitplatform.JUnitPlatformProvider.invoke(JUnitPlatformProvider.java:124) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385) at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162) at org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495) 11:17:09,553 AM [main] [WARN] AbstractLeader - leader (Leader) : handleAppendEntriesReply delayed beyond election timeout, appendEntriesReply : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=-1, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}, timeSinceLastActivity : 807, lastApplied : -1, commitIndex : -1 11:17:09,553 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:09,553 AM [main] [DEBUG] AbstractLeader - leader (Leader): Log entry size 11 exceeds max payload size 10 11:17:09,553 AM [main] [DEBUG] AbstractLeader - leader (Leader): Serializing AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=large]]} for slicing for follower follower 11:17:09,553 AM [main] [DEBUG] AbstractLeader - leader (Leader): Slicing stream for index 0, follower follower 11:17:09,554 AM [main] [DEBUG] AbstractLeader - leader (Leader): On SharedFileBackedOutputStream cleanup for index 0 11:17:09,554 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior673#1858607028] 11:17:09,565 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader674] 11:17:09,565 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower675] 11:17:09,567 AM [main] [INFO] LeaderTest - Starting testHeartbeatsAreAlwaysSentIfTheHeartbeatIntervalHasElapsed 11:17:09,567 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:09,569 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:09,569 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:09,569 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:09,569 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:09,569 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:10,20 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior676#1273166190] 11:17:10,21 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader677] 11:17:10,21 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower678] 11:17:10,25 AM [main] [INFO] LeaderTest - Starting testInitiateInstallSnapshot 11:17:10,25 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,25 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 11:17:10,25 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,25 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 3 11:17:10,25 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 11:17:10,25 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:10,25 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: 3 11:17:10,25 AM [main] [INFO] AbstractLeader - leader (Leader): Initiating install snapshot to follower follower: follower nextIndex: 2, leader snapshotIndex: 3, leader lastIndex: 4, leader log size: 1 11:17:10,25 AM [main] [INFO] SnapshotManager - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=3, lastAppliedTerm=1, lastIndex=4, lastTerm=2, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=1, mandatoryTrim=false] to install on follower 11:17:10,25 AM [main] [DEBUG] SnapshotManager - leader: lastSequenceNumber prior to capture: -1 11:17:10,25 AM [main] [DEBUG] EntryStoreCompleter - test: 1 completion(s) pending 11:17:10,25 AM [main] [DEBUG] EntryStoreCompleter - test: running 1 completion(s) 11:17:10,25 AM [main] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=3, term=1]/EntryInfo[index=4, term=2] 11:17:10,26 AM [main] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snaphsotIndex: 3 and term: 1 11:17:10,26 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 11:17:10,26 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior679#1145185124] 11:17:10,26 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader680] 11:17:10,27 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower681] 11:17:10,28 AM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageSendAppendEntriesToFollower 11:17:10,28 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,28 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,28 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:10,30 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:10,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:10,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 11:17:10,30 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:10,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 11:17:10,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:10,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 11:17:10,30 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior682#-505092959] 11:17:10,31 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader683] 11:17:10,32 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower684] 11:17:10,33 AM [main] [INFO] LeaderTest - Starting testForceInstallSnapshot 11:17:10,33 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,33 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 11:17:10,33 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,33 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,33 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 11:17:10,33 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 1 11:17:10,33 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=106, hashCode=1072258452 11:17:10,33 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 106 11:17:10,33 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower687), Chunk: 1/1 11:17:10,34 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior685#271075565] 11:17:10,34 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader686] 11:17:10,34 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower687] 11:17:10,36 AM [main] [INFO] LeaderTest - Starting testSendSnapshotfromInstallSnapshotReply 11:17:10,36 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 11:17:10,37 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 3 11:17:10,37 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower690), Chunk: 1/3 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=1, success=true} 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): Success InstallSnapshotReply from follower, sending next chunk 11:17:10,37 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=50, size=50, hashCode=-2011893223 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower690), Chunk: 2/3 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=2, success=true} 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): Success InstallSnapshotReply from follower, sending next chunk 11:17:10,37 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=100, size=6, hashCode=-1840245320 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 6 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower690), Chunk: 3/3 11:17:10,37 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=3, success=true} 11:17:10,37 AM [main] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower follower (last chunk 3) - matchIndex set to 3, nextIndex set to 4 11:17:10,37 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior688#-917057488] 11:17:10,38 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader689] 11:17:10,38 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower690] 11:17:10,40 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyUnknownFollower 11:17:10,40 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,40 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:10,40 AM [main] [ERROR] AbstractLeader - leader (Leader): handleAppendEntriesReply - unknown follower unkown-follower 11:17:10,40 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior691#-99098080] 11:17:10,41 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader692] 11:17:10,41 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower693] 11:17:10,43 AM [main] [INFO] LeaderTest - Starting testThatLeaderSendsAHeartbeatMessageToAllFollowers 11:17:10,43 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,46 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,46 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,46 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 11:17:10,46 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:10,46 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:10,46 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 11:17:10,46 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=2]]} 11:17:10,96 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 11:17:10,96 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=2]]} 11:17:10,96 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior694#-1397133119] 11:17:10,107 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader695] 11:17:10,108 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower696] 11:17:10,110 AM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageWithHigherTermThanPreviousEntry 11:17:10,110 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,110 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to -1 11:17:10,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:10,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): Not updating commit index to 0 - retrieved log entry with index 0, term 1 does not match the current term 2 11:17:10,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): Not updating commit index to 1 - retrieved log entry with index 1, term 1 does not match the current term 2 11:17:10,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 11:17:10,112 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:10,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: -1 11:17:10,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:10,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=2, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=2, payload=foo]]} 11:17:10,113 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 11:17:10,113 AM [main] [DEBUG] AbstractLeader - leader (Leader): Not updating commit index to 0 - retrieved log entry with index 0, term 1 does not match the current term 2 11:17:10,113 AM [main] [DEBUG] AbstractLeader - leader (Leader): Not updating commit index to 1 - retrieved log entry with index 1, term 1 does not match the current term 2 11:17:10,113 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: -1 11:17:10,113 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 11:17:10,113 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:10,113 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 11:17:10,113 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:10,113 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 11:17:10,113 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 11:17:10,113 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 2 11:17:10,113 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 11:17:10,113 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior697#781492160] 11:17:10,114 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader698] 11:17:10,114 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower699] 11:17:10,116 AM [main] [INFO] LeaderTest - Starting testMultipleReplicateWithReplyShouldResultInAppendEntries 11:17:10,116 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:10,117 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 11:17:10,117 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 11:17:10,117 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 11:17:10,117 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 11:17:10,117 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 3, isSendImmediate: true 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: 1 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 3 is present for follower follower 11:17:10,117 AM [main] [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==[SimpleReplicatedLogEntry [index=3, term=1, payload=foo]]} 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 3, nextIndex: 4 11:17:10,117 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 3, lastAppliedIndex: 2 11:17:10,117 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 3 11:17:10,117 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 2 to 3 11:17:10,117 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 2 for term 1 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 2 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 4, isSendImmediate: true 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 4, leaderSnapShotIndex: 2 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 4 is present for follower follower 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=3, prevLogTerm=1, leaderCommit=3, replicatedToAllIndex=2, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=4, term=1, payload=foo]]} 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 4, nextIndex: 5 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 4, lastAppliedIndex: 3 11:17:10,118 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 4 11:17:10,118 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 3 to 4 11:17:10,118 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 3 for term 1 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 5, leaderLastIndex: 4, leaderSnapShotIndex: 3 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 5, isSendImmediate: true 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 5, leaderLastIndex: 5, leaderSnapShotIndex: 3 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 5 is present for follower follower 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=4, prevLogTerm=1, leaderCommit=4, replicatedToAllIndex=3, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=5, term=1, payload=foo]]} 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 6, isSendImmediate: true 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 5, leaderLastIndex: 6, leaderSnapShotIndex: 3 11:17:10,118 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 5 is present for follower follower 11:17:10,118 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior700#-105411372] 11:17:10,118 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader701] 11:17:10,119 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower702] 11:17:10,120 AM [main] [INFO] LeaderTest - Starting testReplicationConsensusWithNonVotingFollower 11:17:10,120 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,120 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower, nonvoting-follower] 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 11:17:10,121 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 11:17:10,121 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 11:17:10,121 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for nonvoting-follower updated: matchIndex: 0, nextIndex: 1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 1, isSendImmediate: true 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=foo]]} 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower nonvoting-follower 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower nonvoting-follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=foo]]} 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for nonvoting-follower updated: matchIndex: 1, nextIndex: 2 11:17:10,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,623 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:10,623 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 11:17:10,623 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 11:17:10,623 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:10,624 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:10,624 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:10,624 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior703#661296194] 11:17:10,625 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader704] 11:17:10,625 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower705] 11:17:10,625 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/nonvoting-follower706#-1271678112] 11:17:10,628 AM [main] [INFO] LeaderTest - Starting testHandleInstallSnapshotReplyLastChunk 11:17:10,628 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,628 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,628 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,628 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 1 11:17:10,628 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=1, success=true} 11:17:10,628 AM [main] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower follower (last chunk 1) - matchIndex set to 3, nextIndex set to 4 11:17:10,628 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior707#-784265547] 11:17:10,629 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader708] 11:17:10,629 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower709] 11:17:10,631 AM [main] [INFO] LeaderTest - Starting testSendAppendEntriesOnAnInProgressInstallSnapshot 11:17:10,631 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,632 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,632 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 2 11:17:10,632 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 79 bytes, total chunks to send: 8 11:17:10,632 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=79, offset=0, size=10, hashCode=1052414894 11:17:10,733 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=79, offset=10, size=10, hashCode=4695158 11:17:10,733 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 10 11:17:10,733 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower712), Chunk: 2/8 11:17:10,733 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior710#-1058035165] 11:17:10,734 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader711] 11:17:10,734 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower712] 11:17:10,738 AM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageSendAppendEntriesToFollower 11:17:10,738 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,738 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,738 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:10,739 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 11:17:10,739 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 3, isSendImmediate: true 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 0 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 4, isSendImmediate: true 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: 0 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 5, isSendImmediate: true 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 5, leaderSnapShotIndex: 0 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 6, isSendImmediate: true 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 6, leaderSnapShotIndex: 0 11:17:10,739 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:10,739 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior713#-369778580] 11:17:10,739 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader714] 11:17:10,740 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower715] 11:17:10,744 AM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageWhenThereAreNoFollowers 11:17:10,744 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,744 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:10,744 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 0 11:17:10,744 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 2, isSendImmediate: true 11:17:10,744 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 11:17:10,744 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:10,745 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 11:17:10,745 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 11:17:10,745 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior716#1672973729] 11:17:10,755 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader717] 11:17:10,756 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower718] 11:17:10,757 AM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckTwoFollowers 11:17:10,758 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,758 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower-2, follower-1] 11:17:10,758 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,758 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,768 AM [main] [WARN] Leader - leader (Leader): At least 1 followers need to be active, Switching leader from Leader to IsolatedLeader 11:17:10,768 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Election: Leader has following peers: [follower-2, follower-1] 11:17:10,768 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,768 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,769 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to IsolatedLeader, election term: 1 11:17:10,769 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior719#1062571647] [WARN] [06/27/2025 11:17:10.769] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower-2] received dead letter from TestActor[pekko://test/user/leader720]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [WARN] [06/27/2025 11:17:10.769] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/follower-1] received dead letter from TestActor[pekko://test/user/leader720]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [INFO] [pekkoDeadLetter][06/27/2025 11:17:10.769] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower-2] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader720] to Actor[pekko://test/user/follower-2] was not delivered. [4] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower-2] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. [INFO] [pekkoDeadLetter][06/27/2025 11:17:10.769] [test-pekko.actor.default-dispatcher-5] [pekko://test/user/follower-1] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader720] to Actor[pekko://test/user/follower-1] was not delivered. [5] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower-1] 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'. 11:17:10,769 AM [test-pekko.actor.default-dispatcher-13] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader720] to Actor[pekko://test/user/follower-2] was not delivered. [4] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower-2] 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'. 11:17:10,769 AM [test-pekko.actor.default-dispatcher-13] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader720] to Actor[pekko://test/user/follower-1] was not delivered. [5] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower-1] 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'. 11:17:10,779 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader720] 11:17:10,779 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower721] 11:17:10,782 AM [main] [INFO] LeaderTest - Starting testHandleSnapshotSendsPreviousChunksHashCodeWhenSendingNextChunk 11:17:10,782 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,783 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,783 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,784 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 11:17:10,784 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 3 11:17:10,784 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 11:17:10,784 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 11:17:10,784 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower724), Chunk: 1/3 11:17:10,784 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=1, success=true} 11:17:10,784 AM [main] [DEBUG] AbstractLeader - leader (Leader): Success InstallSnapshotReply from follower, sending next chunk 11:17:10,784 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=50, size=50, hashCode=-2011893223 11:17:10,784 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 11:17:10,784 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower724), Chunk: 2/3 11:17:10,784 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior722#164541244] 11:17:10,795 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader723] 11:17:10,795 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower724] 11:17:10,797 AM [main] [INFO] LeaderTest - Starting testReplicationWithPayloadSizeThatExceedsThreshold 11:17:10,797 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:10,797 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 11:17:10,798 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 11:17:10,798 AM [main] [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==[SimpleReplicatedLogEntry [index=0, term=1, payload=foo]]} 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 11:17:10,798 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 11:17:10,798 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 1, isSendImmediate: true 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Log entry size 248 exceeds max payload size 198 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Serializing AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=large]]} for slicing for follower follower 11:17:10,798 AM [main] [DEBUG] AbstractLeader - leader (Leader): Slicing stream for index 1, follower follower [WARN] [06/27/2025 11:17:10.834] [test-pekko.actor.default-dispatcher-13] [pekko://test/user/leader720] received dead letter from TestActor[pekko://test/user/leader720]: org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat@6051eca9 11:17:10,834 AM [test-pekko.actor.default-dispatcher-13] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader720] to TestActor[pekko://test/user/leader720] was not delivered. [6] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader720] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. [INFO] [pekkoDeadLetter][06/27/2025 11:17:10.834] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/leader720] Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader720] to TestActor[pekko://test/user/leader720] was not delivered. [6] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader720] 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'. 11:17:11,99 AM [main] [DEBUG] AbstractLeader - leader (Leader): On SharedFileBackedOutputStream cleanup for index 1 11:17:11,100 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 11:17:11,100 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 11:17:11,100 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 11:17:11,100 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 11:17:11,100 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 11:17:11,100 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 11:17:11,100 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 11:17:11,100 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 11:17:11,100 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 11:17:11,100 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 11:17:11,100 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior725#-530047801] 11:17:11,111 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader726] 11:17:11,111 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower727] 11:17:11,114 AM [main] [INFO] LeaderTest - Starting testLeaderSchedulesHeartbeatsEvenWhenNoFollowersRespondToInitialAppendEntries 11:17:11,115 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:11,115 AM [main] [DEBUG] AbstractLeader - leader731 (Leader): Election: Leader has following peers: [follower733, follower732] 11:17:11,115 AM [main] [DEBUG] AbstractLeader - leader731 (Leader): Checking sendAppendEntries for follower follower733: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 11:17:11,116 AM [main] [DEBUG] AbstractLeader - leader731 (Leader): Checking sendAppendEntries for follower follower732: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 11:17:12,116 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior728#704981955] 11:17:12,117 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader729] 11:17:12,117 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower730] 11:17:12,118 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader731] 11:17:12,118 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower732#-2020608391] 11:17:12,118 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower733#185937018] 11:17:12,121 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:12,121 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:12,121 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): In requestVote: RequestVote{term=1, candidateId=test, lastLogIndex=10000, lastLogTerm=999} - currentTerm: 1, votedFor: test, lastIndex: 1, lastTerm: 1 11:17:12,121 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): requestVote returning: RequestVoteReply{term=1, voteGranted=true} 11:17:12,122 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior734#23068647] 11:17:12,122 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader735] 11:17:12,122 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower736] 11:17:12,125 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:12,125 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:12,125 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntries: AppendEntries{term=2, leaderId=leader-1, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=2, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=2, payload=zero]]} 11:17:12,126 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior737#-867263167] 11:17:12,126 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader738] 11:17:12,126 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower739] 11:17:12,129 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:12,129 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:12,129 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): In requestVote: RequestVote{term=1, candidateId=test, lastLogIndex=1999, lastLogTerm=1} - currentTerm: 1, votedFor: test, lastIndex: 2000, lastTerm: 1 11:17:12,129 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): requestVote returning: RequestVoteReply{term=1, voteGranted=false} 11:17:12,129 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior740#258521878] 11:17:12,129 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader741] 11:17:12,129 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower742] 11:17:12,131 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:12,131 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:12,131 AM [main] [INFO] AbstractLeader - leader (Leader): Term 100 in "AppendEntries{term=100, leaderId=leader-1, prevLogIndex=0, prevLogTerm=0, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, entries==[]}" message is greater than leader's term 1 - switching to Follower 11:17:12,131 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 11:17:12,131 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 11:17:12,131 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:12,131 AM [main] [INFO] AbstractLeader - leader (Leader): Term 100 in "AppendEntriesReply{term=100, success=false, followerId=follower-1, logLastIndex=100, logLastTerm=100, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}" message is greater than leader's term 1 - switching to Follower 11:17:12,131 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 11:17:12,131 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:12,131 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 11:17:12,131 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Cluster state: [] 11:17:12,131 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Candidate in requestVote:RequestVote{term=100, candidateId=candidate-1, lastLogIndex=10, lastLogTerm=100} with higher term appears reachable, updating term. 11:17:12,131 AM [main] [INFO] AbstractLeader - leader (Leader): Term 100 in "RequestVote{term=100, candidateId=candidate-1, lastLogIndex=10, lastLogTerm=100}" message is greater than leader's term 1 - switching to Follower 11:17:12,131 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 11:17:12,131 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:12,131 AM [main] [INFO] AbstractLeader - leader (Leader): Term 100 in "RequestVoteReply{term=100, voteGranted=false}" message is greater than leader's term 1 - switching to Follower 11:17:12,131 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 11:17:12,131 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior743#1942096979] 11:17:12,131 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader744] 11:17:12,131 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower745] 11:17:12,133 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:12,133 AM [main] [DEBUG] AbstractLeader - test (Leader): Election: Leader has following peers: [] 11:17:12,133 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:12,133 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 11:17:12,133 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:12,133 AM [main] [DEBUG] SnapshotManager - test: fakeSnapshot purging log to 0 for term 1 11:17:12,133 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 2 11:17:12,133 AM [main] [DEBUG] SnapshotManager - test: fakeSnapshot purging log to 1 for term 1 11:17:12,133 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 2 11:17:12,133 AM [main] [DEBUG] SnapshotManager - test: fakeSnapshot purging log to 1 for term 1 11:17:12,133 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior746#2056966786] 11:17:12,133 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader747] 11:17:12,133 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower748] 11:17:12,134 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:12,134 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:12,134 AM [main] [INFO] RaftActorBehavior - leader (Leader): Cannot append entries because sender's term 100 is less than 1000 11:17:12,134 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior749#1851703353] 11:17:12,134 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader750] 11:17:12,135 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower751] 11:17:12,136 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 11:17:12,136 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 11:17:12,136 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): In requestVote: RequestVote{term=999, candidateId=test, lastLogIndex=10000, lastLogTerm=999} - currentTerm: 1000, votedFor: null, lastIndex: 1, lastTerm: 1 11:17:12,136 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): requestVote returning: RequestVoteReply{term=1000, voteGranted=false} 11:17:12,136 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior752#1000494930] 11:17:12,136 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader753] 11:17:12,136 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower754] [INFO] [06/27/2025 11:17:12.136] [main] [CoordinatedShutdown(pekko://test)] Running CoordinatedShutdown with reason [ActorSystemTerminateReason] 11:17:12,137 AM [test-pekko.actor.default-dispatcher-13] [INFO] CoordinatedShutdown - Running CoordinatedShutdown with reason [ActorSystemTerminateReason] [WARN] [06/27/2025 11:17:12.137] [test-pekko.actor.default-dispatcher-13] [pekko://test/system/cluster/core/daemon] unhandled message from Actor[pekko://test/deadLetters]: Leave(pekko://test@10.30.170.168:17355) [INFO] [pekkoDeadLetter][06/27/2025 11:17:12.137] [test-pekko.actor.default-dispatcher-13] [pekko://test/system/cluster/core/daemon] Message [org.apache.pekko.cluster.ClusterUserAction$Leave] to Actor[pekko://test/system/cluster/core/daemon#-1007181944] was unhandled. [7] 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'. 11:17:12,137 AM [test-pekko.actor.default-dispatcher-13] [INFO] LocalActorRef - pekkoDeadLetter Message [org.apache.pekko.cluster.ClusterUserAction$Leave] to Actor[pekko://test/system/cluster/core/daemon#-1007181944] was unhandled. [7] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. [INFO] [06/27/2025 11:17:12.137] [test-pekko.actor.internal-dispatcher-3] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.168:17355] - Exiting completed 11:17:12,138 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.168:17355] - Exiting completed 11:17:12,138 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.168:17355] - Shutting down... [INFO] [06/27/2025 11:17:12.138] [test-pekko.actor.internal-dispatcher-3] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.168:17355] - Shutting down... [INFO] [06/27/2025 11:17:12.138] [test-pekko.actor.internal-dispatcher-3] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.168:17355] - Successfully shut down 11:17:12,138 AM [test-pekko.actor.default-dispatcher-13] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.168:17355] - Successfully shut down [INFO] [06/27/2025 11:17:12.139] [test-pekko.remote.default-remote-dispatcher-8] [pekko://test@10.30.170.168:17355/system/remoting-terminator] Shutting down remote daemon. 11:17:12,139 AM [test-pekko.actor.default-dispatcher-12] [INFO] RemoteActorRefProvider$RemotingTerminator - Shutting down remote daemon. [INFO] [06/27/2025 11:17:12.139] [test-pekko.remote.default-remote-dispatcher-8] [pekko://test@10.30.170.168:17355/system/remoting-terminator] Remote daemon shut down; proceeding with flushing remote transports. 11:17:12,139 AM [test-pekko.actor.default-dispatcher-13] [INFO] RemoteActorRefProvider$RemotingTerminator - Remote daemon shut down; proceeding with flushing remote transports. [INFO] [06/27/2025 11:17:12.141] [test-pekko.remote.default-remote-dispatcher-7] [pekko://test@10.30.170.168:17355/system/remoting-terminator] Remoting shut down. 11:17:12,141 AM [test-pekko.actor.default-dispatcher-12] [INFO] RemoteActorRefProvider$RemotingTerminator - Remoting shut down. [DEBUG] [06/27/2025 11:17:12.141] [test-pekko.actor.internal-dispatcher-2] [EventStream] shutting down: StandardOutLogger