[DEBUG] [07/02/2025 19:50:20.407] [main] [EventStream(pekko://test)] logger log1-TestEventListener started 07:50:20,407 PM [test-pekko.actor.default-dispatcher-5] [INFO] Slf4jLogger - Slf4jLogger started [DEBUG] [07/02/2025 19:50:20.407] [main] [EventStream(pekko://test)] logger log2-Slf4jLogger started [DEBUG] [07/02/2025 19:50:20.407] [main] [EventStream(pekko://test)] Default Loggers started [INFO] [07/02/2025 19:50:20.415] [main] [ArteryTransport(pekko://test)] Remoting started with transport [Artery tcp]; listening on address [pekko://test@10.30.170.40:17355] with UID [2683881988674125283] [INFO] [07/02/2025 19:50:20.415] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.40:17355] - Starting up, Pekko version [1.0.3] ... 07:50:20,418 PM [test-pekko.actor.default-dispatcher-6] [INFO] ArteryTransport - Remoting started with transport [Artery tcp]; listening on address [pekko://test@10.30.170.40:17355] with UID [2683881988674125283] 07:50:20,418 PM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.40:17355] - Starting up, Pekko version [1.0.3] ... [INFO] [07/02/2025 19:50:20.418] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.40:17355] - Registered cluster JMX MBean [pekko:type=Cluster] [INFO] [07/02/2025 19:50:20.418] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.40:17355] - Started up successfully 07:50:20,418 PM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.40:17355] - Registered cluster JMX MBean [pekko:type=Cluster] 07:50:20,418 PM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.40:17355] - Started up successfully 07:50:20,422 PM [test-pekko.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.40:17355] - No downing-provider-class configured, manual cluster downing required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#downing 07:50:20,422 PM [test-pekko.actor.default-dispatcher-5] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.40:17355] - No seed-nodes configured, manual cluster join required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#joining [INFO] [07/02/2025 19:50:20.421] [test-pekko.actor.internal-dispatcher-4] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.40:17355] - No downing-provider-class configured, manual cluster downing required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#downing [INFO] [07/02/2025 19:50:20.421] [test-pekko.actor.internal-dispatcher-4] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.40:17355] - No seed-nodes configured, manual cluster join required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#joining 07:50:20,432 PM [main] [INFO] LeaderTest - Starting testHandleMessageForUnknownMessage 07:50:20,432 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:20,432 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:20,432 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior589#-628100460] 07:50:20,443 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader590] 07:50:20,443 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower591] 07:50:20,446 PM [main] [INFO] LeaderTest - Starting testLaggingFollowerStarvation 07:50:20,446 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:20,447 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Election: Leader has following peers: [follower597, follower596] 07:50:20,447 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Checking sendAppendEntries for follower follower597: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 07:50:20,447 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Checking sendAppendEntries for follower follower596: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 07:50:20,447 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower596 updated: matchIndex: 1, nextIndex: 2 07:50:20,447 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: -1 07:50:20,447 PM [main] [DEBUG] RaftActorBehavior - leader595 (Leader): Setting last applied to 0 07:50:20,447 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:20,447 PM [main] [DEBUG] RaftActorBehavior - leader595 (Leader): Setting last applied to 1 07:50:20,447 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:20,447 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Checking sendAppendEntries for follower follower596: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: -1 07:50:20,447 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): sendAppendEntries: 2 is present for follower follower596 07:50:20,447 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Sending AppendEntries to follower follower596: AppendEntries{term=1, leaderId=leader595, 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]]} 07:50:20,648 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower596 updated: matchIndex: 2, nextIndex: 3 07:50:20,648 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 07:50:20,648 PM [main] [DEBUG] RaftActorBehavior - leader595 (Leader): Setting last applied to 2 07:50:20,648 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 07:50:20,649 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Checking sendAppendEntries for follower follower596: active: true, followerNextIndex: 3, leaderLastIndex: 4, leaderSnapShotIndex: -1 07:50:20,649 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): sendAppendEntries: 3 is present for follower follower596 07:50:20,649 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Sending AppendEntries to follower follower596: AppendEntries{term=1, leaderId=leader595, prevLogIndex=3, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=4, term=1, payload=4]]} 07:50:20,849 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower596 updated: matchIndex: 3, nextIndex: 4 07:50:20,849 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Applying to log - commitIndex: 3, lastAppliedIndex: 2 07:50:20,849 PM [main] [DEBUG] RaftActorBehavior - leader595 (Leader): Setting last applied to 3 07:50:20,849 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 2 to 3 07:50:20,849 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Checking sendAppendEntries for follower follower596: active: true, followerNextIndex: 4, leaderLastIndex: 4, leaderSnapShotIndex: -1 07:50:20,849 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): sendAppendEntries: 4 is present for follower follower596 07:50:21,50 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower596 updated: matchIndex: 4, nextIndex: 5 07:50:21,50 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): Checking sendAppendEntries for follower follower596: active: true, followerNextIndex: 5, leaderLastIndex: 4, leaderSnapShotIndex: -1 07:50:21,250 PM [main] [INFO] AbstractLeader - leader595 (Leader): handleAppendEntriesReply: follower follower596 lastIndex 5 is ahead of our lastIndex 4 (snapshotIndex -1, snapshotTerm -1) - forcing install snaphot 07:50:21,250 PM [main] [INFO] SnapshotManager - leader595: 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 follower596 07:50:21,250 PM [main] [DEBUG] SnapshotManager - leader595: last applied journal index prior to capture: 4 07:50:21,251 PM [main] [DEBUG] RaftStorageCompleter - test: 1 completion(s) pending 07:50:21,251 PM [main] [DEBUG] RaftStorageCompleter - test: running 1 completion(s) 07:50:21,251 PM [main] [INFO] SnapshotManager - leader595: Persising snapshot at EntryInfo[index=4, term=1]/EntryInfo[index=4, term=1] 07:50:21,251 PM [main] [INFO] SnapshotManager - leader595: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 07:50:21,251 PM [main] [DEBUG] AbstractLeader - leader595 (Leader): sendInstallSnapshot 07:50:21,251 PM [main] [DEBUG] LeaderInstallSnapshotState - leader595 (Leader): Snapshot 0 bytes, total chunks to send: 0 07:50:21,251 PM [main] [WARN] AbstractLeader - leader595 (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:459) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager$CaptureToInstallCallback.invoke(SnapshotManager.java:241) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager$CaptureToInstallCallback.invoke(SnapshotManager.java:226) 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.RaftStorageCompleter.runCompletions(RaftStorageCompleter.java:162) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.completeUntilEmpty(RaftStorageCompleter.java:124) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.enqueueCompletionsImpl(RaftStorageCompleter.java:208) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.enqueueCompletion(RaftStorageCompleter.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:345) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.captureToInstall(SnapshotManager.java:338) 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) 07:50:21,252 PM [main] [DEBUG] LeaderInstallSnapshotState - leader595 (Leader): Snapshot 0 bytes, total chunks to send: 0 07:50:21,252 PM [main] [WARN] AbstractLeader - leader595 (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:459) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager$CaptureToInstallCallback.invoke(SnapshotManager.java:241) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager$CaptureToInstallCallback.invoke(SnapshotManager.java:226) 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.RaftStorageCompleter.runCompletions(RaftStorageCompleter.java:162) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.completeUntilEmpty(RaftStorageCompleter.java:124) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.enqueueCompletionsImpl(RaftStorageCompleter.java:208) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.enqueueCompletion(RaftStorageCompleter.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:345) at org.opendaylight.controller.cluster.raft@11.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.captureToInstall(SnapshotManager.java:338) 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) 07:50:21,253 PM [main] [WARN] AbstractLeader - leader595 (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) 07:50:21,454 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior592#58619982] 07:50:21,456 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader593] 07:50:21,456 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower594] 07:50:21,456 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower596#1013302341] 07:50:21,456 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower597#1083536761] 07:50:21,460 PM [main] [INFO] LeaderTest - Starting testHandleInstallSnapshotReplyWithInvalidChunkIndex 07:50:21,460 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:21,461 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:21,461 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:22,462 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 07:50:22,462 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 3 07:50:22,462 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 07:50:22,462 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 07:50:22,462 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower600), Chunk: 1/3 07:50:22,462 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=-1, success=false} 07:50:22,462 PM [main] [ERROR] AbstractLeader - leader (Leader): Chunk index -1 in InstallSnapshotReply from follower follower does not match expected index 1 07:50:22,563 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 07:50:22,563 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 07:50:22,563 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower600), Chunk: 1/3 07:50:22,563 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior598#992654472] 07:50:22,574 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader599] 07:50:22,574 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower600] 07:50:22,577 PM [main] [INFO] LeaderTest - Starting testLeaderAddressInAppendEntries 07:50:22,577 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:22,577 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 07:50:22,578 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:22,578 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:22,578 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 07:50:22,578 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:22,679 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior601#349686126] 07:50:22,690 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader602] 07:50:22,690 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower603] 07:50:22,693 PM [main] [INFO] LeaderTest - Starting testHandleRequestVoteReply 07:50:22,693 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:22,693 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:22,693 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior604#-166522208] 07:50:22,704 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader605] 07:50:22,704 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower606] 07:50:22,706 PM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyFailureWithFollowersLogBehindTheLeader 07:50:22,706 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:22,706 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 2 07:50:22,706 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:22,706 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:22,707 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:22,707 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: -1 07:50:22,707 PM [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 07:50:22,707 PM [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} 07:50:22,707 PM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 07:50:22,707 PM [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 07:50:22,707 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 07:50:22,707 PM [main] [INFO] AbstractLeader - leader (Leader): follower follower appears to be behind the leader from the last snapshot - updated: matchIndex: 0, nextIndex: 1 07:50:22,707 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:22,707 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: 0 07:50:22,707 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 07:50:22,707 PM [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]]} 07:50:22,707 PM [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]]} 07:50:22,708 PM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 07:50:22,708 PM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 07:50:22,708 PM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 07:50:22,708 PM [main] [DEBUG] Follower - follower (Follower): Append entry to log 2 07:50:22,708 PM [main] [DEBUG] Follower - follower (Follower): Log size is now 3 07:50:22,708 PM [main] [DEBUG] Follower - follower (Follower): Commit index set to 2 07:50:22,708 PM [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} 07:50:22,708 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 07:50:22,708 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 07:50:22,708 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 07:50:22,708 PM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 07:50:22,708 PM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): 0, lastIndex(): 2 07:50:22,708 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 07:50:22,708 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:22,708 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 2 07:50:22,708 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 07:50:22,708 PM [main] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 0 for term 1 07:50:22,708 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior607#-1019136067] 07:50:22,719 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader608] 07:50:22,719 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower609] 07:50:22,722 PM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithFollowerInitiallyOutOfSync 07:50:22,722 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:22,722 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:22,722 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:22,790 PM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 07:50:22,790 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:22,791 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 07:50:22,791 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:22,791 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:22,791 PM [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]]} 07:50:22,791 PM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: -1, lastIndex: 1, isVoting: true 07:50:22,992 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:22,992 PM [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]]} 07:50:22,992 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:22,992 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:22,993 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:22,993 PM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: 1, lastIndex: 1, isVoting: true 07:50:22,993 PM [main] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 07:50:22,993 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:22,993 PM [main] [DEBUG] Leader - leader (Leader): Leader transfer complete 07:50:22,993 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior610#-2001015504] 07:50:23,4 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader611] 07:50:23,5 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower612] 07:50:23,8 PM [main] [INFO] LeaderTest - Starting testInstallSnapshot 07:50:23,8 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,8 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 07:50:23,8 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,8 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 2 07:50:23,8 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 07:50:23,8 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 1 07:50:23,8 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=106, hashCode=1072258452 07:50:23,8 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 106 07:50:23,8 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower615), Chunk: 1/1 07:50:23,9 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior613#766114694] 07:50:23,19 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader614] 07:50:23,20 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower615] 07:50:23,23 PM [main] [INFO] LeaderTest - Starting testFollowerCatchUpWithAppendEntriesMaxDataSizeExceeded 07:50:23,23 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,23 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 3 07:50:23,23 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,23 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 07:50:23,24 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,24 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: -1 07:50:23,24 PM [main] [INFO] Follower - follower (Follower): The followers log is empty and the senders prevLogIndex is 2 07:50:23,24 PM [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} 07:50:23,24 PM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 07:50:23,24 PM [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 07:50:23,24 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 07:50:23,24 PM [main] [INFO] AbstractLeader - leader (Leader): follower follower appears to be behind the leader from the last snapshot - updated: matchIndex: -1, nextIndex: 0 07:50:23,24 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 3, leaderSnapShotIndex: -1 07:50:23,24 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:23,24 PM [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]]} 07:50:23,24 PM [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]]} 07:50:23,24 PM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 07:50:23,24 PM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 07:50:23,24 PM [main] [DEBUG] Follower - follower (Follower): Append entry to log 0 07:50:23,24 PM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 07:50:23,24 PM [main] [DEBUG] Follower - follower (Follower): Log size is now 2 07:50:23,24 PM [main] [DEBUG] Follower - follower (Follower): Commit index set to 1 07:50:23,24 PM [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} 07:50:23,24 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:23,24 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 07:50:23,24 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 1 07:50:23,24 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:23,24 PM [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]]} 07:50:23,24 PM [main] [DEBUG] SyncStatusTracker - follower: Lagging 2 entries behind leader leader and reached 1 (of expected -1) 07:50:23,24 PM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): -1, lastIndex(): 1 07:50:23,25 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 07:50:23,25 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:23,25 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 07:50:23,25 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:23,25 PM [main] [WARN] RaftActorBehavior - follower (Follower): Missing index 2 from log. Cannot apply state. Ignoring 2 to 3 07:50:23,25 PM [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]]} 07:50:23,25 PM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 07:50:23,25 PM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 1, entries to be added from: 0 07:50:23,25 PM [main] [DEBUG] Follower - follower (Follower): Append entry to log 2 07:50:23,25 PM [main] [DEBUG] Follower - follower (Follower): Append entry to log 3 07:50:23,25 PM [main] [DEBUG] Follower - follower (Follower): Log size is now 4 07:50:23,25 PM [main] [DEBUG] Follower - follower (Follower): Commit index set to 3 07:50:23,25 PM [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} 07:50:23,25 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 3, nextIndex: 4 07:50:23,25 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 2 for term 1 07:50:23,25 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 2 07:50:23,25 PM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 3 (of expected -1) 07:50:23,25 PM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): 1, lastIndex(): 3 07:50:23,25 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 2 07:50:23,25 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 07:50:23,25 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 3 07:50:23,25 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 2 to 3 07:50:23,25 PM [main] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 1 for term 1 07:50:23,25 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior616#-2132095690] 07:50:23,35 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader617] 07:50:23,36 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower618] 07:50:23,38 PM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyFailureWithFollowersLogTermDifferent 07:50:23,39 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,39 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,39 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,39 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,39 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:23,39 PM [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 07:50:23,39 PM [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} 07:50:23,39 PM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 07:50:23,39 PM [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 07:50:23,40 PM [main] [INFO] AbstractLeader - leader (Leader): follower follower last log term 1 conflicts with the leader's 2 - dec next index to 0 07:50:23,40 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:23,40 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:23,40 PM [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]]} 07:50:23,40 PM [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]]} 07:50:23,40 PM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 07:50:23,40 PM [main] [DEBUG] Follower - follower (Follower): matchEntry SimpleReplicatedLogEntry [index=0, term=2, payload=0] is present: existingEntryTerm: 1 07:50:23,40 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:23,40 PM [main] [INFO] Follower - follower (Follower): Removing entries from log starting at 0, commitIndex: -1, lastApplied: -1 07:50:23,40 PM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 07:50:23,40 PM [main] [DEBUG] Follower - follower (Follower): Append entry to log 0 07:50:23,40 PM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 07:50:23,40 PM [main] [DEBUG] Follower - follower (Follower): Log size is now 2 07:50:23,40 PM [main] [DEBUG] Follower - follower (Follower): Commit index set to 1 07:50:23,40 PM [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} 07:50:23,40 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:23,40 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:23,40 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:23,40 PM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 07:50:23,40 PM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 1 07:50:23,40 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 07:50:23,40 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:23,40 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 07:50:23,40 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:23,41 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior619#1039449347] 07:50:23,51 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader620] 07:50:23,51 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower621] 07:50:23,54 PM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithEmptyLog 07:50:23,54 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,54 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,54 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:23,54 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 07:50:23,54 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:23,55 PM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 07:50:23,55 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:23,56 PM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: -1, lastIndex: -1, isVoting: true 07:50:23,56 PM [main] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 07:50:23,56 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:23,56 PM [main] [DEBUG] Leader - leader (Leader): Leader transfer complete 07:50:23,56 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior622#-1519736801] 07:50:23,67 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader623] 07:50:23,67 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower624] 07:50:23,69 PM [main] [INFO] LeaderTest - Starting testSendAppendEntriesSnapshotScenario 07:50:23,69 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,69 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,69 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 3 07:50:23,69 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 07:50:23,69 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:23,69 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: 3 07:50:23,69 PM [main] [INFO] AbstractLeader - leader (Leader): Initiating install snapshot to follower follower: follower nextIndex: 2, leader snapshotIndex: 3, leader lastIndex: 4, leader log size: 1 07:50:23,69 PM [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 07:50:23,69 PM [main] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: -2 07:50:23,70 PM [main] [DEBUG] RaftStorageCompleter - test: 1 completion(s) pending 07:50:23,70 PM [main] [DEBUG] RaftStorageCompleter - test: running 1 completion(s) 07:50:23,70 PM [main] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=3, term=1]/EntryInfo[index=4, term=2] 07:50:23,70 PM [main] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: 3 and term: 1 07:50:23,70 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior625#671530157] 07:50:23,80 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader626] 07:50:23,80 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower627] 07:50:23,83 PM [main] [INFO] LeaderTest - Starting testLeaderCreatedWithCommitIndexLessThanLastIndex 07:50:23,83 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,83 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,83 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,84 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 07:50:23,84 PM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 07:50:23,84 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior628#1050232068] 07:50:23,94 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader629] 07:50:23,94 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower630] 07:50:23,97 PM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplySuccess 07:50:23,97 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,97 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,97 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,97 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 07:50:23,97 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 07:50:23,97 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 07:50:23,97 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 07:50:23,97 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 07:50:23,97 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 07:50:23,97 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 07:50:23,97 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior631#1438651582] 07:50:23,108 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader632] 07:50:23,108 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower633] 07:50:23,111 PM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckNoVotingFollowers 07:50:23,111 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,111 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,111 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,111 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:23,111 PM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 07:50:23,111 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior634#-1442496817] 07:50:23,122 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader635] 07:50:23,122 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower636] 07:50:23,123 PM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyFailureWithFollowersLogEmpty 07:50:23,124 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,124 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,124 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,124 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,124 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:23,124 PM [main] [INFO] Follower - follower (Follower): The followers log is empty and the senders prevLogIndex is 0 07:50:23,124 PM [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} 07:50:23,124 PM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 07:50:23,124 PM [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 07:50:23,124 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 07:50:23,124 PM [main] [INFO] AbstractLeader - leader (Leader): follower follower appears to be behind the leader from the last snapshot - updated: matchIndex: -1, nextIndex: 0 07:50:23,124 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:23,124 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:23,124 PM [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]]} 07:50:23,125 PM [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]]} 07:50:23,125 PM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 07:50:23,125 PM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 07:50:23,125 PM [main] [DEBUG] Follower - follower (Follower): Append entry to log 0 07:50:23,125 PM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 07:50:23,125 PM [main] [DEBUG] Follower - follower (Follower): Log size is now 2 07:50:23,125 PM [main] [DEBUG] Follower - follower (Follower): Commit index set to 1 07:50:23,125 PM [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} 07:50:23,125 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:23,125 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:23,125 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:23,125 PM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 07:50:23,125 PM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 1 07:50:23,125 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 07:50:23,125 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:23,125 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 07:50:23,125 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:23,126 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior637#907401426] 07:50:23,126 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader638] 07:50:23,127 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower639] 07:50:23,130 PM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageCommitIndexIncrementedBeforeConsensus 07:50:23,130 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,131 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,131 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:23,131 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:23,131 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:23,131 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:23,131 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 07:50:23,131 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 07:50:23,131 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 07:50:23,131 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 07:50:23,131 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:23,131 PM [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]]} 07:50:23,131 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior640#-2001110446] 07:50:23,132 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader641] 07:50:23,132 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower642] 07:50:23,135 PM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckNoFollowers 07:50:23,135 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,135 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:23,135 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior643#-1451681211] 07:50:23,136 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader644] 07:50:23,136 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower645] 07:50:23,137 PM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyWithNewerTerm 07:50:23,137 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,137 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:23,137 PM [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 07:50:23,137 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:23,137 PM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 20 07:50:23,137 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior646#-345544165] 07:50:23,138 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader647] 07:50:23,138 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower648] 07:50:23,139 PM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithFollowerInSync 07:50:23,139 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,139 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,139 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:23,139 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 07:50:23,139 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:23,139 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 07:50:23,139 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:23,139 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:23,139 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:23,139 PM [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]]} 07:50:23,139 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 07:50:23,139 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 07:50:23,139 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 07:50:23,139 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:23,139 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:23,140 PM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 07:50:23,140 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:23,140 PM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: 0, lastIndex: 0, isVoting: true 07:50:23,140 PM [main] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 07:50:23,140 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:23,140 PM [main] [DEBUG] Leader - leader (Leader): Leader transfer complete 07:50:23,140 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior649#1132543095] 07:50:23,141 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader650] 07:50:23,141 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower651] 07:50:23,142 PM [main] [INFO] LeaderTest - Starting testInitiateForceInstallSnapshot 07:50:23,142 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,142 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 07:50:23,142 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,142 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:23,143 PM [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 07:50:23,143 PM [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 07:50:23,143 PM [main] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: 4 07:50:23,143 PM [main] [DEBUG] RaftStorageCompleter - test: 1 completion(s) pending 07:50:23,143 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 07:50:23,143 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:23,143 PM [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 07:50:23,143 PM [main] [DEBUG] SnapshotManager - leader: captureToInstall should not be called in state Capture[lastJournalIndex=4, request=CaptureSnapshot [lastAppliedIndex=3, lastAppliedTerm=1, lastIndex=4, lastTerm=2, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=1, mandatoryTrim=false]] 07:50:23,143 PM [main] [DEBUG] RaftStorageCompleter - test: running 1 completion(s) 07:50:23,143 PM [main] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=3, term=1]/EntryInfo[index=4, term=2] 07:50:23,143 PM [main] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 07:50:23,143 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 07:50:23,143 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 7 bytes, total chunks to send: 1 07:50:23,143 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=7, offset=0, size=7, hashCode=1742900734 07:50:23,143 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 7 07:50:23,143 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower654), Chunk: 1/1 07:50:23,143 PM [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 07:50:23,346 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior652#1948724178] 07:50:23,348 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader653] 07:50:23,348 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower654] 07:50:23,351 PM [main] [INFO] LeaderTest - Starting testLeaderCreatedWithCommitIndexLessThanFollowersCommitIndex 07:50:23,351 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,351 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,351 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,351 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 07:50:23,351 PM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 07:50:23,352 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 07:50:23,352 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: -1 07:50:23,352 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 07:50:23,352 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:23,352 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 07:50:23,352 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:23,352 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 07:50:23,352 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 07:50:23,352 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 07:50:23,352 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 07:50:23,352 PM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 07:50:23,352 PM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): -1, lastIndex(): 2 07:50:23,352 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 07:50:23,352 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:23,352 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 07:50:23,352 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:23,352 PM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 2 07:50:23,352 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 07:50:23,352 PM [main] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 1 for term 1 07:50:23,402 PM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 07:50:23,403 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior655#-830869859] 07:50:23,404 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader656] 07:50:23,404 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower657] 07:50:23,407 PM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithFollowerSyncTimeout 07:50:23,408 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,408 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,408 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:23,408 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 07:50:23,408 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:23,408 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 07:50:23,408 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:23,408 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:23,408 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:23,408 PM [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]]} 07:50:23,409 PM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 07:50:23,409 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:23,409 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:23,610 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:23,610 PM [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]]} 07:50:23,812 PM [main] [DEBUG] Leader - leader (Leader): Leadership transfer expired 07:50:23,913 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior658#1383951859] 07:50:23,915 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader659] 07:50:23,915 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower660] 07:50:23,919 PM [main] [INFO] LeaderTest - Starting testSendingReplicateImmediatelyAfterHeartbeatDoesReplicate 07:50:23,919 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:23,924 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:23,924 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:23,924 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:23,924 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:23,924 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:24,75 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 07:50:24,75 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:24,75 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 07:50:24,75 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:24,75 PM [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]]} 07:50:24,75 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior661#-695698287] 07:50:24,81 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader662] 07:50:24,81 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower663] 07:50:24,86 PM [main] [INFO] LeaderTest - Starting testLeaderInstallSnapshotState 07:50:24,86 PM [main] [DEBUG] LeaderInstallSnapshotState - test: Snapshot 106 bytes, total chunks to send: 3 07:50:24,86 PM [main] [DEBUG] LeaderInstallSnapshotState - test: Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 07:50:24,86 PM [main] [DEBUG] LeaderInstallSnapshotState - test: Next chunk: total length=106, offset=50, size=50, hashCode=-2011893223 07:50:24,86 PM [main] [DEBUG] LeaderInstallSnapshotState - test: Next chunk: total length=106, offset=100, size=6, hashCode=-1840245320 07:50:24,87 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior664#-878380122] 07:50:24,87 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader665] 07:50:24,88 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower666] 07:50:24,90 PM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckTwoFollowersWhenElectionsAreDisabled 07:50:24,91 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:24,91 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower-2, follower-1] 07:50:24,91 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:24,91 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:24,96 PM [main] [WARN] Leader - leader (Leader): At least 1 followers need to be active, Switching leader from Leader to IsolatedLeader 07:50:24,96 PM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Election: Leader has following peers: [follower-2, follower-1] 07:50:24,96 PM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 [WARN] [07/02/2025 19:50:24.096] [test-pekko.actor.default-dispatcher-12] [pekko://test/user/follower-2] received dead letter from TestActor[pekko://test/user/leader668]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [INFO] [pekkoDeadLetter][07/02/2025 19:50:24.096] [test-pekko.actor.default-dispatcher-12] [pekko://test/user/follower-2] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader668] 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'. 07:50:24,96 PM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:24,96 PM [test-pekko.actor.default-dispatcher-6] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader668] 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'. [WARN] [07/02/2025 19:50:24.096] [test-pekko.actor.default-dispatcher-12] [pekko://test/user/follower-1] received dead letter from TestActor[pekko://test/user/leader668]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [INFO] [pekkoDeadLetter][07/02/2025 19:50:24.096] [test-pekko.actor.default-dispatcher-12] [pekko://test/user/follower-1] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader668] 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'. 07:50:24,96 PM [test-pekko.actor.default-dispatcher-6] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader668] 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'. 07:50:24,96 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior667#-488511643] 07:50:24,97 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader668] 07:50:24,97 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower669] 07:50:24,99 PM [main] [INFO] LeaderTest - Starting testDuplicateAppendEntriesWillBeSentOnHeartBeat 07:50:24,99 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:24,100 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:24,100 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:24,100 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:24,100 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:24,100 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:24,101 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 07:50:24,101 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:24,101 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 07:50:24,101 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:24,101 PM [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] [07/02/2025 19:50:24.163] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/leader668] received dead letter from TestActor[pekko://test/user/leader668]: org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat@565e4645 07:50:24,163 PM [test-pekko.actor.default-dispatcher-6] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader668] to TestActor[pekko://test/user/leader668] was not delivered. [3] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader668] 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][07/02/2025 19:50:24.163] [test-pekko.actor.default-dispatcher-12] [pekko://test/user/leader668] Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader668] to TestActor[pekko://test/user/leader668] was not delivered. [3] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader668] 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'. 07:50:24,851 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:24,851 PM [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]]} 07:50:24,851 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior670#1665842841] 07:50:24,862 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader671] 07:50:24,862 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower672] 07:50:24,965 PM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyWithNewerTermWhenElectionsAreDisabled 07:50:24,965 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:24,965 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:24,965 PM [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 07:50:24,966 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior673#442721002] 07:50:24,976 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader674] 07:50:24,976 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower675] 07:50:24,978 PM [main] [INFO] LeaderTest - Starting testLargePayloadSlicingExpiration 07:50:24,978 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:24,978 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 07:50:24,978 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:24,978 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:24,978 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 07:50:24,978 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:24,978 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 07:50:24,978 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:24,978 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:24,978 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:24,978 PM [main] [DEBUG] AbstractLeader - leader (Leader): Log entry size 11 exceeds max payload size 10 07:50:24,978 PM [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 07:50:24,979 PM [main] [DEBUG] AbstractLeader - leader (Leader): Slicing stream for index 0, follower follower 07:50:25,330 PM [main] [DEBUG] AbstractLeader - leader (Leader): On SharedFileBackedOutputStream cleanup for index 0 07:50:25,330 PM [main] [WARN] MessageSlicer - leader (Leader)_slicer-id-140: SlicedMessageState for MessageSliceIdentifier [clientIdentifier=FollowerIdentifier{value=follower}, slicerId=140, messageId=3] was expired from the cache 07:50:25,335 PM [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) 07:50:25,787 PM [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 : 809, lastApplied : -1, commitIndex : -1 07:50:25,788 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:25,788 PM [main] [DEBUG] AbstractLeader - leader (Leader): Log entry size 11 exceeds max payload size 10 07:50:25,788 PM [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 07:50:25,788 PM [main] [DEBUG] AbstractLeader - leader (Leader): Slicing stream for index 0, follower follower 07:50:25,789 PM [main] [DEBUG] AbstractLeader - leader (Leader): On SharedFileBackedOutputStream cleanup for index 0 07:50:25,789 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior676#1078389088] 07:50:25,800 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader677] 07:50:25,800 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower678] 07:50:25,803 PM [main] [INFO] LeaderTest - Starting testHeartbeatsAreAlwaysSentIfTheHeartbeatIntervalHasElapsed 07:50:25,803 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:25,805 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:25,805 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:25,805 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:25,805 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:25,805 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:26,256 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior679#-1242731468] 07:50:26,267 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader680] 07:50:26,268 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower681] 07:50:26,271 PM [main] [INFO] LeaderTest - Starting testInitiateInstallSnapshot 07:50:26,271 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,271 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 07:50:26,271 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:26,271 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 3 07:50:26,271 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 07:50:26,271 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:26,271 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: 3 07:50:26,271 PM [main] [INFO] AbstractLeader - leader (Leader): Initiating install snapshot to follower follower: follower nextIndex: 2, leader snapshotIndex: 3, leader lastIndex: 4, leader log size: 1 07:50:26,271 PM [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 07:50:26,271 PM [main] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: 0 07:50:26,272 PM [main] [DEBUG] RaftStorageCompleter - test: 1 completion(s) pending 07:50:26,272 PM [main] [DEBUG] RaftStorageCompleter - test: running 1 completion(s) 07:50:26,272 PM [main] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=3, term=1]/EntryInfo[index=4, term=2] 07:50:26,272 PM [main] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: 3 and term: 1 07:50:26,272 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 07:50:26,272 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior682#-1387731625] 07:50:26,282 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader683] 07:50:26,283 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower684] 07:50:26,284 PM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageSendAppendEntriesToFollower 07:50:26,284 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,284 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:26,284 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,285 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:26,285 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:26,285 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:26,285 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 07:50:26,285 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:26,285 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 07:50:26,285 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:26,285 PM [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]]} 07:50:26,285 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior685#1085489085] 07:50:26,295 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader686] 07:50:26,296 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower687] 07:50:26,298 PM [main] [INFO] LeaderTest - Starting testForceInstallSnapshot 07:50:26,298 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,298 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 07:50:26,299 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:26,299 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,299 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 07:50:26,299 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 1 07:50:26,299 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=106, hashCode=1072258452 07:50:26,299 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 106 07:50:26,299 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower690), Chunk: 1/1 07:50:26,299 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior688#756704117] 07:50:26,310 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader689] 07:50:26,310 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower690] 07:50:26,312 PM [main] [INFO] LeaderTest - Starting testSendSnapshotfromInstallSnapshotReply 07:50:26,312 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,312 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:26,312 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 07:50:26,313 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 3 07:50:26,313 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower693), Chunk: 1/3 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=1, success=true} 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): Success InstallSnapshotReply from follower, sending next chunk 07:50:26,313 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=50, size=50, hashCode=-2011893223 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower693), Chunk: 2/3 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=2, success=true} 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): Success InstallSnapshotReply from follower, sending next chunk 07:50:26,313 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=100, size=6, hashCode=-1840245320 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 6 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower693), Chunk: 3/3 07:50:26,313 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=3, success=true} 07:50:26,313 PM [main] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower follower (last chunk 3) - matchIndex set to 3, nextIndex set to 4 07:50:26,313 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior691#-854600913] 07:50:26,324 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader692] 07:50:26,324 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower693] 07:50:26,326 PM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyUnknownFollower 07:50:26,326 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,326 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:26,326 PM [main] [ERROR] AbstractLeader - leader (Leader): handleAppendEntriesReply - unknown follower unkown-follower 07:50:26,326 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior694#-1675373949] 07:50:26,337 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader695] 07:50:26,337 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower696] 07:50:26,340 PM [main] [INFO] LeaderTest - Starting testThatLeaderSendsAHeartbeatMessageToAllFollowers 07:50:26,340 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,340 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:26,340 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,340 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 07:50:26,340 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:26,340 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:26,340 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 07:50:26,340 PM [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]]} 07:50:26,391 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 07:50:26,391 PM [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]]} 07:50:26,391 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior697#1706171313] 07:50:26,402 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader698] 07:50:26,402 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower699] 07:50:26,405 PM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageWithHigherTermThanPreviousEntry 07:50:26,405 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,405 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to -1 07:50:26,405 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:26,405 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,405 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:26,406 PM [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 07:50:26,406 PM [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 07:50:26,406 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,406 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 07:50:26,406 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:26,406 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: -1 07:50:26,406 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:26,406 PM [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]]} 07:50:26,406 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 07:50:26,406 PM [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 07:50:26,406 PM [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 07:50:26,406 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: -1 07:50:26,406 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 07:50:26,406 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:26,406 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 07:50:26,406 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:26,406 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 07:50:26,406 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 07:50:26,406 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 2 07:50:26,406 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 07:50:26,406 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior700#1396770190] 07:50:26,417 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader701] 07:50:26,417 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower702] 07:50:26,418 PM [main] [INFO] LeaderTest - Starting testMultipleReplicateWithReplyShouldResultInAppendEntries 07:50:26,419 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:26,420 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 07:50:26,420 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:26,420 PM [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]]} 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 07:50:26,420 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 07:50:26,420 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 07:50:26,420 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 3, isSendImmediate: true 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: 1 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 3 is present for follower follower 07:50:26,420 PM [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]]} 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 3, nextIndex: 4 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 3, lastAppliedIndex: 2 07:50:26,420 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 3 07:50:26,420 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 2 to 3 07:50:26,420 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 2 for term 1 07:50:26,420 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 2 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 4, isSendImmediate: true 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 4, leaderSnapShotIndex: 2 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 4 is present for follower follower 07:50:26,421 PM [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]]} 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 4, nextIndex: 5 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 4, lastAppliedIndex: 3 07:50:26,421 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 4 07:50:26,421 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 3 to 4 07:50:26,421 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 3 for term 1 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 5, leaderLastIndex: 4, leaderSnapShotIndex: 3 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 5, isSendImmediate: true 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 5, leaderLastIndex: 5, leaderSnapShotIndex: 3 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 5 is present for follower follower 07:50:26,421 PM [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]]} 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 6, isSendImmediate: true 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 5, leaderLastIndex: 6, leaderSnapShotIndex: 3 07:50:26,421 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 5 is present for follower follower 07:50:26,421 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior703#1678959748] 07:50:26,422 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader704] 07:50:26,422 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower705] 07:50:26,425 PM [main] [INFO] LeaderTest - Starting testReplicationConsensusWithNonVotingFollower 07:50:26,425 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,425 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 07:50:26,425 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower, nonvoting-follower] 07:50:26,425 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:26,425 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:26,425 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 07:50:26,425 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:26,425 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 07:50:26,426 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 07:50:26,426 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for nonvoting-follower updated: matchIndex: 0, nextIndex: 1 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 1, isSendImmediate: true 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 07:50:26,426 PM [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]]} 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower nonvoting-follower 07:50:26,426 PM [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]]} 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for nonvoting-follower updated: matchIndex: 1, nextIndex: 2 07:50:26,426 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,928 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:26,928 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 07:50:26,928 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 07:50:26,928 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:26,928 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:26,928 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:26,928 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior706#421450580] 07:50:26,939 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader707] 07:50:26,939 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower708] 07:50:26,939 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/nonvoting-follower709#1461114703] 07:50:26,941 PM [main] [INFO] LeaderTest - Starting testHandleInstallSnapshotReplyLastChunk 07:50:26,941 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,941 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:26,941 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:26,941 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 1 07:50:26,941 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=1, success=true} 07:50:26,941 PM [main] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower follower (last chunk 1) - matchIndex set to 3, nextIndex set to 4 07:50:26,941 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior710#1913984316] 07:50:26,952 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader711] 07:50:26,952 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower712] 07:50:26,953 PM [main] [INFO] LeaderTest - Starting testSendAppendEntriesOnAnInProgressInstallSnapshot 07:50:26,953 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:26,953 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:26,953 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 2 07:50:26,954 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 79 bytes, total chunks to send: 8 07:50:26,954 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=79, offset=0, size=10, hashCode=1052414894 07:50:27,54 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=79, offset=10, size=10, hashCode=4695158 07:50:27,54 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 10 07:50:27,54 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower715), Chunk: 2/8 07:50:27,54 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior713#995123496] 07:50:27,65 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader714] 07:50:27,65 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower715] 07:50:27,66 PM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageSendAppendEntriesToFollower 07:50:27,66 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:27,67 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 07:50:27,67 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:27,67 PM [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]]} 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 3, isSendImmediate: true 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 0 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 4, isSendImmediate: true 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: 0 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:27,67 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 5, isSendImmediate: true 07:50:27,68 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 5, leaderSnapShotIndex: 0 07:50:27,68 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:27,68 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 6, isSendImmediate: true 07:50:27,68 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 6, leaderSnapShotIndex: 0 07:50:27,68 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:27,68 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior716#1177842902] 07:50:27,78 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader717] 07:50:27,78 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower718] 07:50:27,80 PM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageWhenThereAreNoFollowers 07:50:27,80 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:27,80 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:27,80 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 0 07:50:27,80 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 2, isSendImmediate: true 07:50:27,80 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 07:50:27,80 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:27,80 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 07:50:27,80 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 07:50:27,80 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior719#-1076927190] 07:50:27,90 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader720] 07:50:27,90 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower721] 07:50:27,92 PM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckTwoFollowers 07:50:27,92 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:27,92 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower-2, follower-1] 07:50:27,92 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:27,92 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:27,102 PM [main] [WARN] Leader - leader (Leader): At least 1 followers need to be active, Switching leader from Leader to IsolatedLeader 07:50:27,102 PM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Election: Leader has following peers: [follower-2, follower-1] 07:50:27,102 PM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 [WARN] [07/02/2025 19:50:27.103] [test-pekko.actor.default-dispatcher-12] [pekko://test/user/follower-2] received dead letter from TestActor[pekko://test/user/leader723]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [INFO] [pekkoDeadLetter][07/02/2025 19:50:27.103] [test-pekko.actor.default-dispatcher-12] [pekko://test/user/follower-2] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader723] 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'. 07:50:27,103 PM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:27,103 PM [test-pekko.actor.default-dispatcher-6] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader723] 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'. [WARN] [07/02/2025 19:50:27.103] [test-pekko.actor.default-dispatcher-12] [pekko://test/user/follower-1] received dead letter from TestActor[pekko://test/user/leader723]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [INFO] [pekkoDeadLetter][07/02/2025 19:50:27.103] [test-pekko.actor.default-dispatcher-12] [pekko://test/user/follower-1] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader723] 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'. 07:50:27,103 PM [test-pekko.actor.default-dispatcher-6] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader723] 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'. 07:50:27,103 PM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to IsolatedLeader, election term: 1 07:50:27,103 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior722#-2064149663] 07:50:27,113 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader723] 07:50:27,113 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower724] 07:50:27,115 PM [main] [INFO] LeaderTest - Starting testHandleSnapshotSendsPreviousChunksHashCodeWhenSendingNextChunk 07:50:27,115 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:27,115 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:27,115 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:27,115 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 07:50:27,116 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 3 07:50:27,116 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 07:50:27,116 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 07:50:27,116 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower727), Chunk: 1/3 07:50:27,116 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=1, success=true} 07:50:27,116 PM [main] [DEBUG] AbstractLeader - leader (Leader): Success InstallSnapshotReply from follower, sending next chunk 07:50:27,116 PM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=50, size=50, hashCode=-2011893223 07:50:27,116 PM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 07:50:27,116 PM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower727), Chunk: 2/3 07:50:27,116 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior725#1935732512] 07:50:27,126 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader726] 07:50:27,126 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower727] 07:50:27,128 PM [main] [INFO] LeaderTest - Starting testReplicationWithPayloadSizeThatExceedsThreshold 07:50:27,128 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:27,128 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 07:50:27,128 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 07:50:27,128 PM [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]]} 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 07:50:27,128 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 07:50:27,128 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 1, isSendImmediate: true 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Log entry size 248 exceeds max payload size 198 07:50:27,128 PM [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 07:50:27,128 PM [main] [DEBUG] AbstractLeader - leader (Leader): Slicing stream for index 1, follower follower 07:50:27,172 PM [test-pekko.actor.default-dispatcher-12] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader723] to TestActor[pekko://test/user/leader723] was not delivered. [6] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader723] 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] [07/02/2025 19:50:27.172] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/leader723] received dead letter from TestActor[pekko://test/user/leader723]: org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat@565e4645 [INFO] [pekkoDeadLetter][07/02/2025 19:50:27.172] [test-pekko.actor.default-dispatcher-12] [pekko://test/user/leader723] Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader723] to TestActor[pekko://test/user/leader723] was not delivered. [6] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader723] 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'. 07:50:27,429 PM [main] [DEBUG] AbstractLeader - leader (Leader): On SharedFileBackedOutputStream cleanup for index 1 07:50:27,429 PM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 07:50:27,429 PM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 07:50:27,429 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 07:50:27,429 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 07:50:27,429 PM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 07:50:27,429 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 07:50:27,429 PM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 07:50:27,429 PM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 07:50:27,429 PM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 07:50:27,429 PM [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]]} 07:50:27,429 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior728#976518639] 07:50:27,440 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader729] 07:50:27,440 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower730] 07:50:27,442 PM [main] [INFO] LeaderTest - Starting testLeaderSchedulesHeartbeatsEvenWhenNoFollowersRespondToInitialAppendEntries 07:50:27,443 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:27,443 PM [main] [DEBUG] AbstractLeader - leader734 (Leader): Election: Leader has following peers: [follower736, follower735] 07:50:27,443 PM [main] [DEBUG] AbstractLeader - leader734 (Leader): Checking sendAppendEntries for follower follower736: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 07:50:27,443 PM [main] [DEBUG] AbstractLeader - leader734 (Leader): Checking sendAppendEntries for follower follower735: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 07:50:28,443 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior731#-515295054] 07:50:28,454 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader732] 07:50:28,454 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower733] 07:50:28,454 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader734] 07:50:28,455 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower735#24359414] 07:50:28,455 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower736#1303936964] 07:50:28,458 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:28,458 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:28,458 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): In requestVote: RequestVote{term=1, candidateId=test, lastLogIndex=10000, lastLogTerm=999} - currentTerm: 1, votedFor: test, lastIndex: 1, lastTerm: 1 07:50:28,458 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): requestVote returning: RequestVoteReply{term=1, voteGranted=true} 07:50:28,458 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior737#-1506793541] 07:50:28,468 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader738] 07:50:28,469 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower739] 07:50:28,471 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:28,471 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:28,471 PM [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]]} 07:50:28,471 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior740#210082950] 07:50:28,481 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader741] 07:50:28,482 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower742] 07:50:28,484 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:28,484 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:28,484 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): In requestVote: RequestVote{term=1, candidateId=test, lastLogIndex=1999, lastLogTerm=1} - currentTerm: 1, votedFor: test, lastIndex: 2000, lastTerm: 1 07:50:28,484 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): requestVote returning: RequestVoteReply{term=1, voteGranted=false} 07:50:28,484 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior743#1422844289] 07:50:28,495 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader744] 07:50:28,495 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower745] 07:50:28,496 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:28,497 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:28,497 PM [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 07:50:28,497 PM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 07:50:28,497 PM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 07:50:28,497 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:28,497 PM [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 07:50:28,497 PM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 07:50:28,497 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:28,497 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 07:50:28,497 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): Cluster state: [] 07:50:28,497 PM [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. 07:50:28,497 PM [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 07:50:28,497 PM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 07:50:28,497 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:28,497 PM [main] [INFO] AbstractLeader - leader (Leader): Term 100 in "RequestVoteReply{term=100, voteGranted=false}" message is greater than leader's term 1 - switching to Follower 07:50:28,497 PM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 07:50:28,497 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior746#58268812] 07:50:28,508 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader747] 07:50:28,508 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower748] 07:50:28,514 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:28,514 PM [main] [DEBUG] AbstractLeader - test (Leader): Election: Leader has following peers: [] 07:50:28,514 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:28,514 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 07:50:28,514 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:28,514 PM [main] [DEBUG] SnapshotManager - test: fakeSnapshot purging log to 0 for term 1 07:50:28,514 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 2 07:50:28,514 PM [main] [DEBUG] SnapshotManager - test: fakeSnapshot purging log to 1 for term 1 07:50:28,514 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 2 07:50:28,514 PM [main] [DEBUG] SnapshotManager - test: fakeSnapshot purging log to 1 for term 1 07:50:28,514 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior749#-1177674056] 07:50:28,515 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader750] 07:50:28,515 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower751] 07:50:28,519 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:28,519 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:28,519 PM [main] [INFO] RaftActorBehavior - leader (Leader): Cannot append entries because sender's term 100 is less than 1000 07:50:28,519 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior752#-670006003] 07:50:28,520 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader753] 07:50:28,520 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower754] 07:50:28,522 PM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 07:50:28,522 PM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 07:50:28,522 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): In requestVote: RequestVote{term=999, candidateId=test, lastLogIndex=10000, lastLogTerm=999} - currentTerm: 1000, votedFor: null, lastIndex: 1, lastTerm: 1 07:50:28,522 PM [main] [DEBUG] RaftActorBehavior - leader (Leader): requestVote returning: RequestVoteReply{term=1000, voteGranted=false} 07:50:28,522 PM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior755#2024255013] 07:50:28,522 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader756] 07:50:28,522 PM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower757] [INFO] [07/02/2025 19:50:28.523] [main] [CoordinatedShutdown(pekko://test)] Running CoordinatedShutdown with reason [ActorSystemTerminateReason] 07:50:28,523 PM [test-pekko.actor.default-dispatcher-12] [INFO] CoordinatedShutdown - Running CoordinatedShutdown with reason [ActorSystemTerminateReason] [WARN] [07/02/2025 19:50:28.525] [test-pekko.actor.default-dispatcher-12] [pekko://test/system/cluster/core/daemon] unhandled message from Actor[pekko://test/deadLetters]: Leave(pekko://test@10.30.170.40:17355) [INFO] [07/02/2025 19:50:28.525] [test-pekko.actor.internal-dispatcher-4] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.40:17355] - Exiting completed [INFO] [pekkoDeadLetter][07/02/2025 19:50:28.525] [test-pekko.actor.default-dispatcher-11] [pekko://test/system/cluster/core/daemon] Message [org.apache.pekko.cluster.ClusterUserAction$Leave] to Actor[pekko://test/system/cluster/core/daemon#991438552] 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] [07/02/2025 19:50:28.525] [test-pekko.actor.internal-dispatcher-4] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.40:17355] - Shutting down... 07:50:28,525 PM [test-pekko.actor.default-dispatcher-11] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.40:17355] - Exiting completed 07:50:28,525 PM [test-pekko.actor.default-dispatcher-11] [INFO] LocalActorRef - pekkoDeadLetter Message [org.apache.pekko.cluster.ClusterUserAction$Leave] to Actor[pekko://test/system/cluster/core/daemon#991438552] 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'. 07:50:28,525 PM [test-pekko.actor.default-dispatcher-11] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.40:17355] - Shutting down... 07:50:28,525 PM [test-pekko.actor.default-dispatcher-11] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.40:17355] - Successfully shut down [INFO] [07/02/2025 19:50:28.525] [test-pekko.actor.internal-dispatcher-4] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.40:17355] - Successfully shut down [INFO] [07/02/2025 19:50:28.526] [test-pekko.remote.default-remote-dispatcher-7] [pekko://test@10.30.170.40:17355/system/remoting-terminator] Shutting down remote daemon. 07:50:28,526 PM [test-pekko.actor.default-dispatcher-12] [INFO] RemoteActorRefProvider$RemotingTerminator - Shutting down remote daemon. 07:50:28,526 PM [test-pekko.actor.default-dispatcher-12] [INFO] RemoteActorRefProvider$RemotingTerminator - Remote daemon shut down; proceeding with flushing remote transports. [INFO] [07/02/2025 19:50:28.526] [test-pekko.remote.default-remote-dispatcher-7] [pekko://test@10.30.170.40:17355/system/remoting-terminator] Remote daemon shut down; proceeding with flushing remote transports. 07:50:28,528 PM [test-pekko.actor.default-dispatcher-6] [INFO] RemoteActorRefProvider$RemotingTerminator - Remoting shut down. [INFO] [07/02/2025 19:50:28.528] [test-pekko.remote.default-remote-dispatcher-8] [pekko://test@10.30.170.40:17355/system/remoting-terminator] Remoting shut down.