[DEBUG] [07/24/2025 01:15:34.457] [main] [EventStream(pekko://test)] logger log1-TestEventListener started 01:15:34,457 AM [test-pekko.actor.default-dispatcher-6] [INFO] Slf4jLogger - Slf4jLogger started [DEBUG] [07/24/2025 01:15:34.457] [main] [EventStream(pekko://test)] logger log2-Slf4jLogger started [DEBUG] [07/24/2025 01:15:34.457] [main] [EventStream(pekko://test)] Default Loggers started 01:15:34,466 AM [test-pekko.actor.default-dispatcher-6] [INFO] ArteryTransport - Remoting started with transport [Artery tcp]; listening on address [pekko://test@10.30.170.18:17355] with UID [5229055135696446780] [INFO] [07/24/2025 01:15:34.466] [main] [ArteryTransport(pekko://test)] Remoting started with transport [Artery tcp]; listening on address [pekko://test@10.30.170.18:17355] with UID [5229055135696446780] 01:15:34,466 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Starting up, Pekko version [1.1.4] ... [INFO] [07/24/2025 01:15:34.466] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Starting up, Pekko version [1.1.4] ... [INFO] [07/24/2025 01:15:34.470] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Registered cluster JMX MBean [pekko:type=Cluster] [INFO] [07/24/2025 01:15:34.470] [main] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Started up successfully [INFO] [07/24/2025 01:15:34.471] [test-pekko.actor.internal-dispatcher-2] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - No downing-provider-class configured, manual cluster downing required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#downing [INFO] [07/24/2025 01:15:34.471] [test-pekko.actor.internal-dispatcher-2] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - No seed-nodes configured, manual cluster join required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#joining 01:15:34,472 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Registered cluster JMX MBean [pekko:type=Cluster] 01:15:34,472 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Started up successfully 01:15:34,472 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - No downing-provider-class configured, manual cluster downing required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#downing 01:15:34,472 AM [test-pekko.actor.default-dispatcher-6] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - No seed-nodes configured, manual cluster join required, see https://pekko.apache.org/docs/pekko/current/typed/cluster.html#joining 01:15:34,493 AM [main] [INFO] LeaderTest - Starting testHandleMessageForUnknownMessage 01:15:34,493 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:34,493 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:34,493 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior593#-1949311460] 01:15:34,504 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader594] 01:15:34,504 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower595] 01:15:34,506 AM [main] [INFO] LeaderTest - Starting testLaggingFollowerStarvation 01:15:34,507 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:34,508 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Election: Leader has following peers: [follower601, follower600] 01:15:34,508 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Checking sendAppendEntries for follower follower601: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 01:15:34,508 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Checking sendAppendEntries for follower follower600: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 01:15:34,508 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower600 updated: matchIndex: 1, nextIndex: 2 01:15:34,508 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: -1 01:15:34,508 AM [main] [DEBUG] RaftActorBehavior - leader599 (Leader): Setting last applied to 0 01:15:34,508 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:34,508 AM [main] [DEBUG] RaftActorBehavior - leader599 (Leader): Setting last applied to 1 01:15:34,508 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:34,508 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Checking sendAppendEntries for follower follower600: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: -1 01:15:34,508 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): sendAppendEntries: 2 is present for follower follower600 01:15:34,508 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Sending AppendEntries to follower follower600: AppendEntries{term=1, leaderId=leader599, 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]]} 01:15:34,709 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower600 updated: matchIndex: 2, nextIndex: 3 01:15:34,710 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 01:15:34,710 AM [main] [DEBUG] RaftActorBehavior - leader599 (Leader): Setting last applied to 2 01:15:34,710 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 01:15:34,710 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Checking sendAppendEntries for follower follower600: active: true, followerNextIndex: 3, leaderLastIndex: 4, leaderSnapShotIndex: -1 01:15:34,710 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): sendAppendEntries: 3 is present for follower follower600 01:15:34,710 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Sending AppendEntries to follower follower600: AppendEntries{term=1, leaderId=leader599, prevLogIndex=3, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=4, term=1, payload=4]]} 01:15:34,910 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower600 updated: matchIndex: 3, nextIndex: 4 01:15:34,910 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Applying to log - commitIndex: 3, lastAppliedIndex: 2 01:15:34,910 AM [main] [DEBUG] RaftActorBehavior - leader599 (Leader): Setting last applied to 3 01:15:34,911 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 2 to 3 01:15:34,911 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Checking sendAppendEntries for follower follower600: active: true, followerNextIndex: 4, leaderLastIndex: 4, leaderSnapShotIndex: -1 01:15:34,911 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): sendAppendEntries: 4 is present for follower follower600 01:15:35,111 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): handleAppendEntriesReply - FollowerLogInformation for follower600 updated: matchIndex: 4, nextIndex: 5 01:15:35,111 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): Checking sendAppendEntries for follower follower600: active: true, followerNextIndex: 5, leaderLastIndex: 4, leaderSnapShotIndex: -1 01:15:35,312 AM [main] [INFO] AbstractLeader - leader599 (Leader): handleAppendEntriesReply: follower follower600 lastIndex 5 is ahead of our lastIndex 4 (snapshotIndex -1, snapshotTerm -1) - forcing install snaphot 01:15:35,312 AM [main] [INFO] SnapshotManager - leader599: 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 follower600 01:15:35,312 AM [main] [DEBUG] SnapshotManager - leader599: last applied journal index prior to capture: 4 01:15:35,313 AM [main] [DEBUG] RaftStorageCompleter - test: 1 completion(s) pending 01:15:35,313 AM [main] [DEBUG] RaftStorageCompleter - test: running 1 completion(s) 01:15:35,313 AM [main] [INFO] SnapshotManager - leader599: Persising snapshot at EntryInfo[index=4, term=1]/EntryInfo[index=4, term=1] 01:15:35,313 AM [main] [INFO] SnapshotManager - leader599: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 01:15:35,313 AM [main] [DEBUG] AbstractLeader - leader599 (Leader): sendInstallSnapshot 01:15:35,313 AM [main] [DEBUG] LeaderInstallSnapshotState - leader599 (Leader): Snapshot 0 bytes, total chunks to send: 0 01:15:35,314 AM [main] [WARN] AbstractLeader - leader599 (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@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.LeaderInstallSnapshotState.getNextChunk(LeaderInstallSnapshotState.java:153) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:990) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:967) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendInstallSnapshot(AbstractLeader.java:946) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.persist(SnapshotManager.java:459) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager$CaptureToInstallCallback.invoke(SnapshotManager.java:241) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager$CaptureToInstallCallback.invoke(SnapshotManager.java:226) at org.opendaylight.controller.cluster.raft@12.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@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.runCompletions(RaftStorageCompleter.java:176) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.completeUntilEmpty(RaftStorageCompleter.java:126) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.enqueueCompletionsImpl(RaftStorageCompleter.java:222) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.enqueueCompletion(RaftStorageCompleter.java:185) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.ImmediateSnapshotStore.streamToInstall(ImmediateSnapshotStore.java:66) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.captureToInstall(SnapshotManager.java:345) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.captureToInstall(SnapshotManager.java:338) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.initiateCaptureSnapshot(AbstractLeader.java:915) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.processAppendEntriesReply(AbstractLeader.java:264) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:127) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:49) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:376) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.handleMessage(AbstractLeader.java:551) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleMessage(Leader.java:106) at org.opendaylight.controller.cluster.raft@12.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) 01:15:35,315 AM [main] [DEBUG] LeaderInstallSnapshotState - leader599 (Leader): Snapshot 0 bytes, total chunks to send: 0 01:15:35,315 AM [main] [WARN] AbstractLeader - leader599 (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@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.LeaderInstallSnapshotState.getNextChunk(LeaderInstallSnapshotState.java:153) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:990) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:967) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendInstallSnapshot(AbstractLeader.java:946) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.persist(SnapshotManager.java:459) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager$CaptureToInstallCallback.invoke(SnapshotManager.java:241) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager$CaptureToInstallCallback.invoke(SnapshotManager.java:226) at org.opendaylight.controller.cluster.raft@12.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@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.runCompletions(RaftStorageCompleter.java:176) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.completeUntilEmpty(RaftStorageCompleter.java:126) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.enqueueCompletionsImpl(RaftStorageCompleter.java:222) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.spi.RaftStorageCompleter.enqueueCompletion(RaftStorageCompleter.java:185) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.ImmediateSnapshotStore.streamToInstall(ImmediateSnapshotStore.java:66) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.captureToInstall(SnapshotManager.java:345) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.SnapshotManager.captureToInstall(SnapshotManager.java:338) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.initiateCaptureSnapshot(AbstractLeader.java:915) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.processAppendEntriesReply(AbstractLeader.java:264) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:127) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:49) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:376) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.handleMessage(AbstractLeader.java:551) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleMessage(Leader.java:106) at org.opendaylight.controller.cluster.raft@12.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) 01:15:35,315 AM [main] [WARN] AbstractLeader - leader599 (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@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.LeaderInstallSnapshotState.getNextChunk(LeaderInstallSnapshotState.java:153) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:990) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendSnapshotChunk(AbstractLeader.java:967) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendUpdatesToFollower(AbstractLeader.java:713) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.processAppendEntriesReply(AbstractLeader.java:333) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:127) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleAppendEntriesReply(Leader.java:49) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior.handleMessage(RaftActorBehavior.java:376) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.handleMessage(AbstractLeader.java:551) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleMessage(Leader.java:106) at org.opendaylight.controller.cluster.raft@12.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) 01:15:35,517 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior596#-434552966] 01:15:35,528 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader597] 01:15:35,528 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower598] 01:15:35,529 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower600#352952884] 01:15:35,529 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower601#1406468093] 01:15:35,532 AM [main] [INFO] LeaderTest - Starting testHandleInstallSnapshotReplyWithInvalidChunkIndex 01:15:35,533 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:35,534 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:35,534 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:36,535 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:15:36,535 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 3 01:15:36,535 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 01:15:36,535 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 01:15:36,535 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower604), Chunk: 1/3 01:15:36,536 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=-1, success=false} 01:15:36,536 AM [main] [ERROR] AbstractLeader - leader (Leader): Chunk index -1 in InstallSnapshotReply from follower follower does not match expected index 1 01:15:36,636 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 01:15:36,636 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 01:15:36,636 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower604), Chunk: 1/3 01:15:36,636 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior602#-2049929591] 01:15:36,638 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader603] 01:15:36,639 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower604] 01:15:36,642 AM [main] [INFO] LeaderTest - Starting testLeaderAddressInAppendEntries 01:15:36,642 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:36,642 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 01:15:36,643 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:36,643 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:36,643 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:15:36,644 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:36,744 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior605#-18549922] 01:15:36,745 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader606] 01:15:36,746 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower607] 01:15:36,749 AM [main] [INFO] LeaderTest - Starting testHandleRequestVoteReply 01:15:36,749 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:36,749 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:36,749 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior608#-1524626299] 01:15:36,750 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader609] 01:15:36,750 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower610] 01:15:36,753 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyFailureWithFollowersLogBehindTheLeader 01:15:36,754 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:36,754 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 2 01:15:36,754 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:36,754 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:36,754 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:36,754 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: -1 01:15:36,755 AM [main] [INFO] Follower - follower (Follower): The log is not empty but the prevLogIndex 1 was not found in it - lastIndex: 0, snapshotIndex: -1, snapshotTerm: -1 01:15:36,755 AM [main] [INFO] Follower - follower (Follower): Follower is out-of-sync so sending negative reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 01:15:36,755 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:15:36,755 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 01:15:36,755 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 01:15:36,755 AM [main] [INFO] AbstractLeader - leader (Leader): follower follower appears to be behind the leader from the last snapshot - updated: matchIndex: 0, nextIndex: 1 01:15:36,755 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:36,755 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:15:36,755 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 01:15:36,755 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=1], SimpleReplicatedLogEntry [index=2, term=1, payload=2]]} 01:15:36,755 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=1], SimpleReplicatedLogEntry [index=2, term=1, payload=2]]} 01:15:36,755 AM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 01:15:36,755 AM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 0, entries to be added from: 0 01:15:36,755 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 01:15:36,755 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 2 01:15:36,756 AM [main] [DEBUG] Follower - follower (Follower): Log size is now 3 01:15:36,756 AM [main] [DEBUG] Follower - follower (Follower): Commit index set to 2 01:15:36,756 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries returning : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=2, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 01:15:36,756 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 01:15:36,756 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 01:15:36,756 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 01:15:36,756 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 01:15:36,756 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): 0, lastIndex(): 2 01:15:36,756 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 01:15:36,756 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:36,756 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 2 01:15:36,756 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 01:15:36,756 AM [main] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 0 for term 1 01:15:36,756 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior611#-1282618097] 01:15:36,757 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader612] 01:15:36,758 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower613] 01:15:36,761 AM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithFollowerInitiallyOutOfSync 01:15:36,761 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:36,761 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:36,761 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:36,869 AM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 01:15:36,869 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:36,870 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:15:36,870 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:36,870 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:36,870 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=1], SimpleReplicatedLogEntry [index=1, term=1, payload=2]]} 01:15:36,870 AM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: -1, lastIndex: 1, isVoting: true 01:15:37,72 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:37,72 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=1], SimpleReplicatedLogEntry [index=1, term=1, payload=2]]} 01:15:37,72 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:37,72 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:37,73 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:37,73 AM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: 1, lastIndex: 1, isVoting: true 01:15:37,73 AM [main] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 01:15:37,73 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:37,73 AM [main] [DEBUG] Leader - leader (Leader): Leader transfer complete 01:15:37,74 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior614#445824777] 01:15:37,85 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader615] 01:15:37,85 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower616] 01:15:37,89 AM [main] [INFO] LeaderTest - Starting testInstallSnapshot 01:15:37,89 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,89 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 01:15:37,89 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,89 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 2 01:15:37,89 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:15:37,89 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 1 01:15:37,89 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=106, hashCode=1072258452 01:15:37,89 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 106 01:15:37,89 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower619), Chunk: 1/1 01:15:37,89 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior617#1983295927] 01:15:37,100 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader618] 01:15:37,100 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower619] 01:15:37,103 AM [main] [INFO] LeaderTest - Starting testFollowerCatchUpWithAppendEntriesMaxDataSizeExceeded 01:15:37,103 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,103 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 3 01:15:37,103 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,103 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 01:15:37,103 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,103 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: -1 01:15:37,104 AM [main] [INFO] Follower - follower (Follower): The followers log is empty and the senders prevLogIndex is 2 01:15:37,104 AM [main] [INFO] Follower - follower (Follower): Follower is out-of-sync so sending negative reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=-1, logLastTerm=-1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 01:15:37,104 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:15:37,104 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=-1, logLastTerm=-1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 01:15:37,104 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:15:37,104 AM [main] [INFO] AbstractLeader - leader (Leader): follower follower appears to be behind the leader from the last snapshot - updated: matchIndex: -1, nextIndex: 0 01:15:37,104 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 3, leaderSnapShotIndex: -1 01:15:37,104 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:37,104 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=3, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=0], SimpleReplicatedLogEntry [index=1, term=1, payload=1]]} 01:15:37,104 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=3, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=0], SimpleReplicatedLogEntry [index=1, term=1, payload=1]]} 01:15:37,104 AM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 01:15:37,104 AM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:15:37,104 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 0 01:15:37,104 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 01:15:37,104 AM [main] [DEBUG] Follower - follower (Follower): Log size is now 2 01:15:37,104 AM [main] [DEBUG] Follower - follower (Follower): Commit index set to 1 01:15:37,104 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries returning : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 01:15:37,104 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:37,104 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 01:15:37,104 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 1 01:15:37,104 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:37,104 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=3, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=2], SimpleReplicatedLogEntry [index=3, term=1, payload=3]]} 01:15:37,104 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 2 entries behind leader leader and reached 1 (of expected -1) 01:15:37,104 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): -1, lastIndex(): 1 01:15:37,104 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 01:15:37,104 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:37,104 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 01:15:37,104 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:37,104 AM [main] [WARN] RaftActorBehavior - follower (Follower): Missing index 2 from log. Cannot apply state. Ignoring 2 to 3 01:15:37,104 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=3, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=2], SimpleReplicatedLogEntry [index=3, term=1, payload=3]]} 01:15:37,105 AM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 01:15:37,105 AM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: 1, entries to be added from: 0 01:15:37,105 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 2 01:15:37,105 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 3 01:15:37,105 AM [main] [DEBUG] Follower - follower (Follower): Log size is now 4 01:15:37,105 AM [main] [DEBUG] Follower - follower (Follower): Commit index set to 3 01:15:37,105 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries returning : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=3, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 01:15:37,105 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 3, nextIndex: 4 01:15:37,105 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 2 for term 1 01:15:37,105 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 2 01:15:37,105 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 3 (of expected -1) 01:15:37,105 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 3, context.getLastApplied(): 1, lastIndex(): 3 01:15:37,105 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 2 01:15:37,105 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 01:15:37,105 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 3 01:15:37,105 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 2 to 3 01:15:37,105 AM [main] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 1 for term 1 01:15:37,105 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior620#183093484] 01:15:37,106 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader621] 01:15:37,106 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower622] 01:15:37,108 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyFailureWithFollowersLogTermDifferent 01:15:37,108 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,108 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,108 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,109 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,109 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:37,109 AM [main] [INFO] Follower - follower (Follower): The prevLogIndex 0 was found in the log but the term 1 is not equal to the append entries prevLogTerm 2 - lastIndex: 0, snapshotIndex: -1, snapshotTerm: -1 01:15:37,109 AM [main] [INFO] Follower - follower (Follower): Follower is out-of-sync so sending negative reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 01:15:37,109 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:15:37,109 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=0, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 01:15:37,109 AM [main] [INFO] AbstractLeader - leader (Leader): follower follower last log term 1 conflicts with the leader's 2 - dec next index to 0 01:15:37,109 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:37,109 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:37,109 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=2, payload=0], SimpleReplicatedLogEntry [index=1, term=2, payload=1]]} 01:15:37,109 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=2, payload=0], SimpleReplicatedLogEntry [index=1, term=2, payload=1]]} 01:15:37,109 AM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 01:15:37,109 AM [main] [DEBUG] Follower - follower (Follower): matchEntry SimpleReplicatedLogEntry [index=0, term=2, payload=0] is present: existingEntryTerm: 1 01:15:37,109 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:37,109 AM [main] [INFO] Follower - follower (Follower): Removing entries from log starting at 0, commitIndex: -1, lastApplied: -1 01:15:37,109 AM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:15:37,109 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 0 01:15:37,109 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 01:15:37,109 AM [main] [DEBUG] Follower - follower (Follower): Log size is now 2 01:15:37,109 AM [main] [DEBUG] Follower - follower (Follower): Commit index set to 1 01:15:37,109 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries returning : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=1, logLastTerm=2, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 01:15:37,109 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:37,109 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:37,109 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:37,109 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 01:15:37,109 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 1 01:15:37,109 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 01:15:37,109 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:37,109 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 01:15:37,109 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:37,109 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior623#-2013497159] 01:15:37,110 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader624] 01:15:37,110 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower625] 01:15:37,112 AM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithEmptyLog 01:15:37,112 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,113 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,113 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:37,113 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:15:37,113 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:37,113 AM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 01:15:37,113 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:37,114 AM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: -1, lastIndex: -1, isVoting: true 01:15:37,114 AM [main] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 01:15:37,114 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:37,114 AM [main] [DEBUG] Leader - leader (Leader): Leader transfer complete 01:15:37,114 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior626#545685890] 01:15:37,125 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader627] 01:15:37,125 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower628] 01:15:37,128 AM [main] [INFO] LeaderTest - Starting testSendAppendEntriesSnapshotScenario 01:15:37,128 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,128 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,128 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 3 01:15:37,128 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 01:15:37,128 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:37,129 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: 3 01:15:37,129 AM [main] [INFO] AbstractLeader - leader (Leader): Initiating install snapshot to follower follower: follower nextIndex: 2, leader snapshotIndex: 3, leader lastIndex: 4, leader log size: 1 01:15:37,129 AM [main] [INFO] SnapshotManager - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=3, lastAppliedTerm=1, lastIndex=4, lastTerm=2, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=1, mandatoryTrim=false] to install on follower 01:15:37,129 AM [main] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: -2 01:15:37,129 AM [main] [DEBUG] RaftStorageCompleter - test: 1 completion(s) pending 01:15:37,129 AM [main] [DEBUG] RaftStorageCompleter - test: running 1 completion(s) 01:15:37,129 AM [main] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=3, term=1]/EntryInfo[index=4, term=2] 01:15:37,129 AM [main] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: 3 and term: 1 01:15:37,129 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior629#1940229600] 01:15:37,130 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader630] 01:15:37,130 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower631] 01:15:37,132 AM [main] [INFO] LeaderTest - Starting testLeaderCreatedWithCommitIndexLessThanLastIndex 01:15:37,132 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,132 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,132 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,132 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 01:15:37,132 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:15:37,132 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior632#1243370314] 01:15:37,133 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader633] 01:15:37,133 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower634] 01:15:37,135 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplySuccess 01:15:37,135 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,135 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,135 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,135 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 01:15:37,135 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 01:15:37,135 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 01:15:37,135 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 01:15:37,135 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 01:15:37,135 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 01:15:37,135 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 01:15:37,135 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior635#-2057271873] 01:15:37,136 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader636] 01:15:37,136 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower637] 01:15:37,137 AM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckNoVotingFollowers 01:15:37,137 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,138 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,138 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,138 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:37,138 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:15:37,138 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior638#-1281598485] 01:15:37,138 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader639] 01:15:37,138 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower640] 01:15:37,140 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyFailureWithFollowersLogEmpty 01:15:37,140 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,140 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,140 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,140 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,140 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:37,140 AM [main] [INFO] Follower - follower (Follower): The followers log is empty and the senders prevLogIndex is 0 01:15:37,140 AM [main] [INFO] Follower - follower (Follower): Follower is out-of-sync so sending negative reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=-1, logLastTerm=-1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 01:15:37,140 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:15:37,140 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=-1, logLastTerm=-1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 01:15:37,140 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:15:37,140 AM [main] [INFO] AbstractLeader - leader (Leader): follower follower appears to be behind the leader from the last snapshot - updated: matchIndex: -1, nextIndex: 0 01:15:37,140 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:37,140 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:37,140 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=0], SimpleReplicatedLogEntry [index=1, term=1, payload=1]]} 01:15:37,140 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=0], SimpleReplicatedLogEntry [index=1, term=1, payload=1]]} 01:15:37,140 AM [main] [DEBUG] Follower - follower (Follower): Number of entries to be appended = 2 01:15:37,140 AM [main] [DEBUG] Follower - follower (Follower): After cleanup, lastIndex: -1, entries to be added from: 0 01:15:37,140 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 0 01:15:37,140 AM [main] [DEBUG] Follower - follower (Follower): Append entry to log 1 01:15:37,140 AM [main] [DEBUG] Follower - follower (Follower): Log size is now 2 01:15:37,140 AM [main] [DEBUG] Follower - follower (Follower): Commit index set to 1 01:15:37,140 AM [main] [DEBUG] Follower - follower (Follower): handleAppendEntries returning : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5} 01:15:37,140 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:37,140 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:37,140 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:37,140 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 1 (of expected -1) 01:15:37,140 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 1, context.getLastApplied(): -1, lastIndex(): 1 01:15:37,140 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 01:15:37,140 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:37,140 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 01:15:37,140 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:37,140 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior641#823343682] 01:15:37,141 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader642] 01:15:37,141 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower643] 01:15:37,142 AM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageCommitIndexIncrementedBeforeConsensus 01:15:37,142 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,142 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,142 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:37,142 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:37,142 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:37,142 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:37,142 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 01:15:37,142 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 01:15:37,142 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 01:15:37,142 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:15:37,142 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:37,142 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 01:15:37,142 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior644#-1293206103] 01:15:37,143 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader645] 01:15:37,143 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower646] 01:15:37,145 AM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckNoFollowers 01:15:37,145 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,145 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:37,145 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior647#1565075803] 01:15:37,145 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader648] 01:15:37,146 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower649] 01:15:37,147 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyWithNewerTerm 01:15:37,147 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,147 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:37,147 AM [main] [INFO] AbstractLeader - leader (Leader): Term 20 in "AppendEntriesReply{term=20, success=false, followerId=foo, logLastIndex=1000, logLastTerm=10, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=1, raftVersion=5, recipientRaftVersion=5}" message is greater than leader's term 1 - switching to Follower 01:15:37,147 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:37,147 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 20 01:15:37,147 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior650#1460350068] 01:15:37,147 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader651] 01:15:37,148 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower652] 01:15:37,149 AM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithFollowerInSync 01:15:37,149 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 01:15:37,149 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=foo]]} 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:15:37,149 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:15:37,149 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:37,149 AM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 01:15:37,149 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:37,150 AM [main] [DEBUG] Leader - leader (Leader): tryToCompleteLeadershipTransfer: followerId: follower, matchIndex: 0, lastIndex: 0, isVoting: true 01:15:37,150 AM [main] [DEBUG] Leader - leader (Leader): Follower's log matches - sending ElectionTimeout 01:15:37,150 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:37,150 AM [main] [DEBUG] Leader - leader (Leader): Leader transfer complete 01:15:37,150 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior653#-148732053] 01:15:37,151 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader654] 01:15:37,151 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower655] 01:15:37,152 AM [main] [INFO] LeaderTest - Starting testInitiateForceInstallSnapshot 01:15:37,152 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,152 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 01:15:37,152 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,152 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:37,153 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=true, needsLeaderAddress=false, payloadVersion=1, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 01:15:37,153 AM [main] [INFO] SnapshotManager - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=3, lastAppliedTerm=1, lastIndex=4, lastTerm=2, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=1, mandatoryTrim=false] to install on follower 01:15:37,153 AM [main] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: 4 01:15:37,153 AM [main] [DEBUG] RaftStorageCompleter - test: 1 completion(s) pending 01:15:37,153 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 01:15:37,153 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:37,153 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=true, needsLeaderAddress=false, payloadVersion=1, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 01:15:37,153 AM [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]] 01:15:37,153 AM [main] [DEBUG] RaftStorageCompleter - test: running 1 completion(s) 01:15:37,153 AM [main] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=3, term=1]/EntryInfo[index=4, term=2] 01:15:37,153 AM [main] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: -1 and term: -1 01:15:37,153 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:15:37,154 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 7 bytes, total chunks to send: 1 01:15:37,154 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=7, offset=0, size=7, hashCode=1742900734 01:15:37,154 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 7 01:15:37,154 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower658), Chunk: 1/1 01:15:37,154 AM [main] [INFO] AbstractLeader - leader (Leader): handleAppendEntriesReply - received unsuccessful reply: AppendEntriesReply{term=1, success=false, followerId=follower, logLastIndex=1, logLastTerm=1, forceInstallSnapshot=true, needsLeaderAddress=false, payloadVersion=1, raftVersion=5, recipientRaftVersion=5}, leader snapshotIndex: -1, snapshotTerm: -1, replicatedToAllIndex: -1 01:15:37,354 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior656#-1492901482] 01:15:37,356 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader657] 01:15:37,356 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower658] 01:15:37,358 AM [main] [INFO] LeaderTest - Starting testLeaderCreatedWithCommitIndexLessThanFollowersCommitIndex 01:15:37,359 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,359 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,359 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,359 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 2, leaderSnapShotIndex: -1 01:15:37,359 AM [main] [DEBUG] SyncStatusTracker - follower: Last sync leader does not match current leader leader, need to catch up to -1 01:15:37,359 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 01:15:37,359 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: -1 01:15:37,359 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:15:37,359 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:37,359 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 01:15:37,359 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:37,359 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 01:15:37,359 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 01:15:37,359 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 01:15:37,359 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 01:15:37,359 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 01:15:37,359 AM [main] [DEBUG] Follower - follower (Follower): applyLogToStateMachine, appendEntries.getLeaderCommit(): 2, context.getLastApplied(): -1, lastIndex(): 2 01:15:37,359 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 0 01:15:37,359 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:37,359 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 1 01:15:37,359 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:37,359 AM [main] [DEBUG] RaftActorBehavior - follower (Follower): Setting last applied to 2 01:15:37,359 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 01:15:37,359 AM [main] [DEBUG] SnapshotManager - follower: fakeSnapshot purging log to 1 for term 1 01:15:37,410 AM [main] [DEBUG] SyncStatusTracker - follower: Lagging 0 entries behind leader leader and reached 2 (of expected -1) 01:15:37,410 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior659#-768815167] 01:15:37,411 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader660] 01:15:37,411 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower661] 01:15:37,414 AM [main] [INFO] LeaderTest - Starting testTransferLeadershipWithFollowerSyncTimeout 01:15:37,414 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,414 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,414 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:37,415 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:15:37,415 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:37,415 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 01:15:37,415 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:37,415 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:37,415 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:37,415 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=foo]]} 01:15:37,415 AM [main] [DEBUG] Leader - leader (Leader): Attempting to transfer leadership 01:15:37,415 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:37,415 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:37,617 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:37,617 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=foo]]} 01:15:37,819 AM [main] [DEBUG] Leader - leader (Leader): Leadership transfer expired 01:15:37,920 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior662#-234517791] 01:15:37,931 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader663] 01:15:37,932 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower664] 01:15:37,935 AM [main] [INFO] LeaderTest - Starting testSendingReplicateImmediatelyAfterHeartbeatDoesReplicate 01:15:37,935 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:37,941 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:37,941 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:37,941 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:37,941 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:37,941 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:38,92 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 01:15:38,92 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:38,92 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:15:38,92 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:38,92 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 01:15:38,92 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior665#561435123] 01:15:38,103 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader666] 01:15:38,103 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower667] 01:15:38,106 AM [main] [INFO] LeaderTest - Starting testLeaderInstallSnapshotState 01:15:38,107 AM [main] [DEBUG] LeaderInstallSnapshotState - test: Snapshot 106 bytes, total chunks to send: 3 01:15:38,107 AM [main] [DEBUG] LeaderInstallSnapshotState - test: Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 01:15:38,107 AM [main] [DEBUG] LeaderInstallSnapshotState - test: Next chunk: total length=106, offset=50, size=50, hashCode=-2011893223 01:15:38,107 AM [main] [DEBUG] LeaderInstallSnapshotState - test: Next chunk: total length=106, offset=100, size=6, hashCode=-1840245320 01:15:38,107 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior668#1694437011] 01:15:38,118 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader669] 01:15:38,118 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower670] 01:15:38,221 AM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckTwoFollowersWhenElectionsAreDisabled 01:15:38,221 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:38,221 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower-2, follower-1] 01:15:38,221 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:38,221 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:38,233 AM [main] [WARN] Leader - leader (Leader): At least 1 followers need to be active, Switching leader from Leader to IsolatedLeader 01:15:38,233 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Election: Leader has following peers: [follower-2, follower-1] 01:15:38,233 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:38,233 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:38,233 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior671#1881339775] [WARN] [07/24/2025 01:15:38.233] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower-2] received dead letter from TestActor[pekko://test/user/leader672]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [WARN] [07/24/2025 01:15:38.234] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/follower-1] received dead letter from TestActor[pekko://test/user/leader672]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [INFO] [pekkoDeadLetter][07/24/2025 01:15:38.234] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/follower-2] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader672] 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'. [INFO] [pekkoDeadLetter][07/24/2025 01:15:38.234] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/follower-1] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader672] 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'. 01:15:38,234 AM [test-pekko.actor.default-dispatcher-6] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader672] 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'. 01:15:38,234 AM [test-pekko.actor.default-dispatcher-6] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader672] 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'. 01:15:38,244 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader672] 01:15:38,245 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower673] 01:15:38,247 AM [main] [INFO] LeaderTest - Starting testDuplicateAppendEntriesWillBeSentOnHeartBeat 01:15:38,248 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:38,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:38,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:38,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:38,249 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:38,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:38,249 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 01:15:38,249 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:38,250 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:15:38,250 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:38,250 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} [WARN] [07/24/2025 01:15:38.303] [test-pekko.actor.default-dispatcher-11] [pekko://test/user/leader672] received dead letter from TestActor[pekko://test/user/leader672]: org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat@1c5792e0 [INFO] [pekkoDeadLetter][07/24/2025 01:15:38.303] [test-pekko.actor.default-dispatcher-11] [pekko://test/user/leader672] Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader672] to TestActor[pekko://test/user/leader672] was not delivered. [3] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader672] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:15:38,303 AM [test-pekko.actor.default-dispatcher-7] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader672] to TestActor[pekko://test/user/leader672] was not delivered. [3] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader672] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:15:39,0 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:39,0 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 01:15:39,0 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior674#-1692137906] 01:15:39,12 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader675] 01:15:39,12 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower676] 01:15:39,15 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyWithNewerTermWhenElectionsAreDisabled 01:15:39,15 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:39,15 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:39,15 AM [main] [INFO] AbstractLeader - leader (Leader): Term 20 in "AppendEntriesReply{term=20, success=false, followerId=foo, logLastIndex=1000, logLastTerm=10, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=1, raftVersion=5, recipientRaftVersion=5}" message is greater than leader's term 1 - switching to Follower 01:15:39,16 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior677#39344835] 01:15:39,26 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader678] 01:15:39,27 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower679] 01:15:39,29 AM [main] [INFO] LeaderTest - Starting testLargePayloadSlicingExpiration 01:15:39,29 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:39,29 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 01:15:39,29 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:39,29 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:39,29 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:15:39,29 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:39,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 01:15:39,30 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:39,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:39,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:39,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): Log entry size 11 exceeds max payload size 10 01:15:39,30 AM [main] [DEBUG] AbstractLeader - leader (Leader): Serializing AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=large]]} for slicing for follower follower 01:15:39,31 AM [main] [DEBUG] AbstractLeader - leader (Leader): Slicing stream for index 0, follower follower 01:15:39,382 AM [main] [DEBUG] AbstractLeader - leader (Leader): On SharedFileBackedOutputStream cleanup for index 0 01:15:39,382 AM [main] [WARN] MessageSlicer - leader (Leader)_slicer-id-141: SlicedMessageState for MessageSliceIdentifier [clientIdentifier=FollowerIdentifier{value=follower}, slicerId=141, messageId=3] was expired from the cache 01:15:39,387 AM [main] [ERROR] AbstractLeader - leader (Leader): Error slicing AppendEntries for follower follower java.lang.RuntimeException: The slicing state for message identifier MessageSliceIdentifier [clientIdentifier=FollowerIdentifier{value=follower}, slicerId=141, messageId=3] was expired due to inactivity from the assembling component on the other end at org.opendaylight.controller.cluster.commons@12.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@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.messaging.MessageSlicer.checkExpiredSlicedMessageState(MessageSlicer.java:191) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.sendHeartBeat(AbstractLeader.java:1054) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader.handleMessage(AbstractLeader.java:549) at org.opendaylight.controller.cluster.raft@12.0.0-SNAPSHOT/org.opendaylight.controller.cluster.raft.behaviors.Leader.handleMessage(Leader.java:106) at org.opendaylight.controller.cluster.raft@12.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) 01:15:39,839 AM [main] [WARN] AbstractLeader - leader (Leader) : handleAppendEntriesReply delayed beyond election timeout, appendEntriesReply : AppendEntriesReply{term=1, success=true, followerId=follower, logLastIndex=-1, logLastTerm=1, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}, timeSinceLastActivity : 809, lastApplied : -1, commitIndex : -1 01:15:39,840 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:39,840 AM [main] [DEBUG] AbstractLeader - leader (Leader): Log entry size 11 exceeds max payload size 10 01:15:39,840 AM [main] [DEBUG] AbstractLeader - leader (Leader): Serializing AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=large]]} for slicing for follower follower 01:15:39,840 AM [main] [DEBUG] AbstractLeader - leader (Leader): Slicing stream for index 0, follower follower 01:15:39,841 AM [main] [DEBUG] AbstractLeader - leader (Leader): On SharedFileBackedOutputStream cleanup for index 0 01:15:39,841 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior680#-792178451] 01:15:39,842 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader681] 01:15:39,843 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower682] 01:15:39,846 AM [main] [INFO] LeaderTest - Starting testHeartbeatsAreAlwaysSentIfTheHeartbeatIntervalHasElapsed 01:15:39,846 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:39,848 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:39,848 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:39,848 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:39,848 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:39,848 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:40,299 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior683#-1765918931] 01:15:40,310 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader684] 01:15:40,311 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower685] 01:15:40,314 AM [main] [INFO] LeaderTest - Starting testInitiateInstallSnapshot 01:15:40,314 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:40,314 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 01:15:40,314 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:40,315 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 3 01:15:40,315 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 01:15:40,315 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:40,315 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: 3 01:15:40,315 AM [main] [INFO] AbstractLeader - leader (Leader): Initiating install snapshot to follower follower: follower nextIndex: 2, leader snapshotIndex: 3, leader lastIndex: 4, leader log size: 1 01:15:40,315 AM [main] [INFO] SnapshotManager - leader: Initiating snapshot capture CaptureSnapshot [lastAppliedIndex=3, lastAppliedTerm=1, lastIndex=4, lastTerm=2, installSnapshotInitiated=, replicatedToAllIndex=-1, replicatedToAllTerm=-1, unAppliedEntries size=1, mandatoryTrim=false] to install on follower 01:15:40,315 AM [main] [DEBUG] SnapshotManager - leader: last applied journal index prior to capture: 0 01:15:40,315 AM [main] [DEBUG] RaftStorageCompleter - test: 1 completion(s) pending 01:15:40,315 AM [main] [DEBUG] RaftStorageCompleter - test: running 1 completion(s) 01:15:40,315 AM [main] [INFO] SnapshotManager - leader: Persising snapshot at EntryInfo[index=3, term=1]/EntryInfo[index=4, term=2] 01:15:40,315 AM [main] [INFO] SnapshotManager - leader: Removed in-memory snapshotted entries, adjusted snapshotIndex: 3 and term: 1 01:15:40,315 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 4, isSendImmediate: true 01:15:40,315 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior686#-2099312475] 01:15:40,326 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader687] 01:15:40,326 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower688] 01:15:40,328 AM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageSendAppendEntriesToFollower 01:15:40,328 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:40,328 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:40,329 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:40,329 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:40,329 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:40,329 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:40,329 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 01:15:40,329 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:40,329 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:15:40,329 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:40,329 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 01:15:40,329 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior689#1275930899] 01:15:40,340 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader690] 01:15:40,340 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower691] 01:15:40,342 AM [main] [INFO] LeaderTest - Starting testForceInstallSnapshot 01:15:40,342 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:40,342 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 3 01:15:40,342 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:40,342 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:40,343 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:15:40,343 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 1 01:15:40,343 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=106, hashCode=1072258452 01:15:40,343 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 106 01:15:40,343 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower694), Chunk: 1/1 01:15:40,343 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior692#787812438] 01:15:40,354 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader693] 01:15:40,354 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower694] 01:15:40,356 AM [main] [INFO] LeaderTest - Starting testSendSnapshotfromInstallSnapshotReply 01:15:40,356 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:40,357 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:40,357 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:40,357 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:15:40,357 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 3 01:15:40,357 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 01:15:40,357 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 01:15:40,357 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower697), Chunk: 1/3 01:15:40,357 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=1, success=true} 01:15:40,357 AM [main] [DEBUG] AbstractLeader - leader (Leader): Success InstallSnapshotReply from follower, sending next chunk 01:15:40,358 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=50, size=50, hashCode=-2011893223 01:15:40,358 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 01:15:40,358 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower697), Chunk: 2/3 01:15:40,358 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=2, success=true} 01:15:40,358 AM [main] [DEBUG] AbstractLeader - leader (Leader): Success InstallSnapshotReply from follower, sending next chunk 01:15:40,358 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=100, size=6, hashCode=-1840245320 01:15:40,358 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 6 01:15:40,358 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower697), Chunk: 3/3 01:15:40,358 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=3, success=true} 01:15:40,358 AM [main] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower follower (last chunk 3) - matchIndex set to 3, nextIndex set to 4 01:15:40,358 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior695#-950390527] 01:15:40,368 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader696] 01:15:40,368 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower697] 01:15:40,370 AM [main] [INFO] LeaderTest - Starting testHandleAppendEntriesReplyUnknownFollower 01:15:40,370 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:40,370 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:40,371 AM [main] [ERROR] AbstractLeader - leader (Leader): handleAppendEntriesReply - unknown follower unkown-follower 01:15:40,371 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior698#1277725621] 01:15:40,381 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader699] 01:15:40,381 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower700] 01:15:40,383 AM [main] [INFO] LeaderTest - Starting testThatLeaderSendsAHeartbeatMessageToAllFollowers 01:15:40,383 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:40,383 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:40,383 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:40,383 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 01:15:40,383 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:40,383 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:40,383 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 01:15:40,383 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=2]]} 01:15:40,433 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 01:15:40,433 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=2]]} 01:15:40,434 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior701#1848219807] 01:15:40,444 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader702] 01:15:40,444 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower703] 01:15:40,446 AM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageWithHigherTermThanPreviousEntry 01:15:40,446 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:40,446 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to -1 01:15:40,446 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:40,446 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:40,446 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): Not updating commit index to 0 - retrieved log entry with index 0, term 1 does not match the current term 2 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): Not updating commit index to 1 - retrieved log entry with index 1, term 1 does not match the current term 2 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 01:15:40,447 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: -1 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=2, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=2, payload=foo]]} 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): Not updating commit index to 0 - retrieved log entry with index 0, term 1 does not match the current term 2 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): Not updating commit index to 1 - retrieved log entry with index 1, term 1 does not match the current term 2 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: -1 01:15:40,447 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:15:40,447 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:40,447 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 01:15:40,447 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:40,447 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 01:15:40,447 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 01:15:40,447 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 2 01:15:40,447 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 01:15:40,447 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior704#-398421252] 01:15:40,457 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader705] 01:15:40,458 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower706] 01:15:40,460 AM [main] [INFO] LeaderTest - Starting testMultipleReplicateWithReplyShouldResultInAppendEntries 01:15:40,460 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:40,461 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 01:15:40,461 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 2, nextIndex: 3 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 2, lastAppliedIndex: 1 01:15:40,461 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 01:15:40,461 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 01:15:40,461 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 1 for term 1 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 1 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 3, isSendImmediate: true 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 3, leaderLastIndex: 3, leaderSnapShotIndex: 1 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 3 is present for follower follower 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=2, prevLogTerm=1, leaderCommit=2, replicatedToAllIndex=1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=3, term=1, payload=foo]]} 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 3, nextIndex: 4 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 3, lastAppliedIndex: 2 01:15:40,461 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 3 01:15:40,461 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 2 to 3 01:15:40,461 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 2 for term 1 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 3, leaderSnapShotIndex: 2 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 4, isSendImmediate: true 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 4, leaderLastIndex: 4, leaderSnapShotIndex: 2 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 4 is present for follower follower 01:15:40,461 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=3, prevLogTerm=1, leaderCommit=3, replicatedToAllIndex=2, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=4, term=1, payload=foo]]} 01:15:40,462 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 4, nextIndex: 5 01:15:40,462 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 4, lastAppliedIndex: 3 01:15:40,462 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 4 01:15:40,462 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 3 to 4 01:15:40,462 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 3 for term 1 01:15:40,462 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 5, leaderLastIndex: 4, leaderSnapShotIndex: 3 01:15:40,462 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 5, isSendImmediate: true 01:15:40,462 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 5, leaderLastIndex: 5, leaderSnapShotIndex: 3 01:15:40,462 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 5 is present for follower follower 01:15:40,462 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=4, prevLogTerm=1, leaderCommit=4, replicatedToAllIndex=3, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=5, term=1, payload=foo]]} 01:15:40,462 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 6, isSendImmediate: true 01:15:40,462 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 5, leaderLastIndex: 6, leaderSnapShotIndex: 3 01:15:40,462 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 5 is present for follower follower 01:15:40,462 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior707#-1051234192] 01:15:40,472 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader708] 01:15:40,473 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower709] 01:15:40,475 AM [main] [INFO] LeaderTest - Starting testReplicationConsensusWithNonVotingFollower 01:15:40,475 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:40,475 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower, nonvoting-follower] 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 01:15:40,476 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: false, followerNextIndex: -1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:15:40,476 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:15:40,476 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for nonvoting-follower updated: matchIndex: 0, nextIndex: 1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 1, isSendImmediate: true 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=foo]]} 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower nonvoting-follower 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower nonvoting-follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=foo]]} 01:15:40,476 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for nonvoting-follower updated: matchIndex: 1, nextIndex: 2 01:15:40,477 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower nonvoting-follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:40,979 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:40,979 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 01:15:40,979 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 01:15:40,979 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:40,979 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:40,979 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:40,980 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior710#-663084327] 01:15:40,991 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader711] 01:15:40,991 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower712] 01:15:40,991 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/nonvoting-follower713#712733066] 01:15:40,999 AM [main] [INFO] LeaderTest - Starting testHandleInstallSnapshotReplyLastChunk 01:15:41,0 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:41,0 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:41,0 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:41,0 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 1 01:15:41,0 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=1, success=true} 01:15:41,1 AM [main] [INFO] AbstractLeader - leader (Leader): Snapshot successfully installed on follower follower (last chunk 1) - matchIndex set to 3, nextIndex set to 4 01:15:41,1 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior714#1866269643] 01:15:41,2 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader715] 01:15:41,2 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower716] 01:15:41,11 AM [main] [INFO] LeaderTest - Starting testSendAppendEntriesOnAnInProgressInstallSnapshot 01:15:41,11 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:41,11 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:41,11 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 2, leaderSnapShotIndex: 2 01:15:41,12 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 79 bytes, total chunks to send: 8 01:15:41,12 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=79, offset=0, size=10, hashCode=1052414894 01:15:41,112 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=79, offset=10, size=10, hashCode=4695158 01:15:41,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 10 01:15:41,112 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower719), Chunk: 2/8 01:15:41,112 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior717#1934290827] 01:15:41,123 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader718] 01:15:41,124 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower719] 01:15:41,128 AM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageSendAppendEntriesToFollower 01:15:41,128 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:41,129 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:41,129 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:41,129 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:41,129 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:41,129 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:41,129 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 01:15:41,129 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:41,129 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:15:41,129 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:41,129 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 3, isSendImmediate: true 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 3, leaderSnapShotIndex: 0 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 4, isSendImmediate: true 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 4, leaderSnapShotIndex: 0 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 5, isSendImmediate: true 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 5, leaderSnapShotIndex: 0 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 6, isSendImmediate: true 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 6, leaderSnapShotIndex: 0 01:15:41,130 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:41,130 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior720#1355726097] 01:15:41,140 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader721] 01:15:41,141 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower722] 01:15:41,143 AM [main] [INFO] LeaderTest - Starting testHandleReplicateMessageWhenThereAreNoFollowers 01:15:41,144 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:41,144 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:41,144 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 0 01:15:41,144 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: MockIdentifier{value=state-id}, logIndex: 2, isSendImmediate: true 01:15:41,144 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 01:15:41,144 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:41,144 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 2 01:15:41,144 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 1 to 2 01:15:41,144 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior723#-1732801001] 01:15:41,154 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader724] 01:15:41,155 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower725] 01:15:41,157 AM [main] [INFO] LeaderTest - Starting testIsolatedLeaderCheckTwoFollowers 01:15:41,157 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:41,157 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower-2, follower-1] 01:15:41,157 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:41,158 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:41,168 AM [main] [WARN] Leader - leader (Leader): At least 1 followers need to be active, Switching leader from Leader to IsolatedLeader 01:15:41,168 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Election: Leader has following peers: [follower-2, follower-1] 01:15:41,169 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-2: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:41,169 AM [main] [DEBUG] AbstractLeader - leader (IsolatedLeader): Checking sendAppendEntries for follower follower-1: active: false, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:41,169 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to IsolatedLeader, election term: 1 01:15:41,169 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior726#1103748758] [WARN] [07/24/2025 01:15:41.169] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/follower-2] received dead letter from TestActor[pekko://test/user/leader727]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [WARN] [07/24/2025 01:15:41.169] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/follower-1] received dead letter from TestActor[pekko://test/user/leader727]: AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=4, leaderRaftVersion=5, entries==[]} [INFO] [pekkoDeadLetter][07/24/2025 01:15:41.169] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/follower-2] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader727] to Actor[pekko://test/user/follower-2] was not delivered. [4] dead letters encountered. If this is not an expected behavior then Actor[pekko://test/user/follower-2] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. [INFO] [pekkoDeadLetter][07/24/2025 01:15:41.169] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/follower-1] Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader727] 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'. 01:15:41,169 AM [test-pekko.actor.default-dispatcher-7] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader727] 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'. 01:15:41,169 AM [test-pekko.actor.default-dispatcher-7] [INFO] EmptyLocalActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.messages.AppendEntries] from TestActor[pekko://test/user/leader727] 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'. 01:15:41,179 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader727] 01:15:41,179 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower728] [WARN] [07/24/2025 01:15:41.233] [test-pekko.actor.default-dispatcher-7] [pekko://test/user/leader727] received dead letter from TestActor[pekko://test/user/leader727]: org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat@1c5792e0 [INFO] [pekkoDeadLetter][07/24/2025 01:15:41.233] [test-pekko.actor.default-dispatcher-11] [pekko://test/user/leader727] Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader727] to TestActor[pekko://test/user/leader727] was not delivered. [6] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader727] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:15:41,233 AM [test-pekko.actor.default-dispatcher-11] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader727] to TestActor[pekko://test/user/leader727] was not delivered. [6] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader727] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:15:41,383 AM [main] [INFO] LeaderTest - Starting testHandleSnapshotSendsPreviousChunksHashCodeWhenSendingNextChunk 01:15:41,383 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:41,384 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:41,384 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: 3, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:41,384 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendInstallSnapshot 01:15:41,385 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Snapshot 106 bytes, total chunks to send: 3 01:15:41,385 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=0, size=50, hashCode=-65379387 01:15:41,385 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 01:15:41,385 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower731), Chunk: 1/3 01:15:41,385 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleInstallSnapshotReply: InstallSnapshotReply{term=2, followerId=follower, chunkIndex=1, success=true} 01:15:41,385 AM [main] [DEBUG] AbstractLeader - leader (Leader): Success InstallSnapshotReply from follower, sending next chunk 01:15:41,385 AM [main] [DEBUG] LeaderInstallSnapshotState - leader (Leader): Next chunk: total length=106, offset=50, size=50, hashCode=-2011893223 01:15:41,385 AM [main] [DEBUG] AbstractLeader - leader (Leader): next snapshot chunk size for follower follower: 50 01:15:41,385 AM [main] [DEBUG] AbstractLeader - leader (Leader): InstallSnapshot sent to follower Vector(user, follower731), Chunk: 2/3 01:15:41,385 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior729#-2137578518] 01:15:41,396 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader730] 01:15:41,396 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower731] 01:15:41,398 AM [main] [INFO] LeaderTest - Starting testReplicationWithPayloadSizeThatExceedsThreshold 01:15:41,398 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:41,398 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to -1 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [follower] 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: false, followerNextIndex: -1, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: -1, nextIndex: 0 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: -1, leaderSnapShotIndex: -1 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 0, isSendImmediate: true 01:15:41,399 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 0, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 0 is present for follower follower 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=-1, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=1, payload=foo]]} 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 0, nextIndex: 1 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 0, lastAppliedIndex: -1 01:15:41,399 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 0 01:15:41,399 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 0, leaderSnapShotIndex: -1 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 1, isSendImmediate: true 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 1, leaderLastIndex: 1, leaderSnapShotIndex: -1 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 1 is present for follower follower 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Log entry size 248 exceeds max payload size 198 01:15:41,399 AM [main] [DEBUG] AbstractLeader - leader (Leader): Serializing AppendEntries{term=1, leaderId=leader, prevLogIndex=0, prevLogTerm=1, leaderCommit=0, replicatedToAllIndex=-1, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=1, term=1, payload=large]]} for slicing for follower follower 01:15:41,400 AM [main] [DEBUG] AbstractLeader - leader (Leader): Slicing stream for index 1, follower follower 01:15:41,701 AM [main] [DEBUG] AbstractLeader - leader (Leader): On SharedFileBackedOutputStream cleanup for index 1 01:15:41,702 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntriesReply - FollowerLogInformation for follower updated: matchIndex: 1, nextIndex: 2 01:15:41,702 AM [main] [DEBUG] AbstractLeader - leader (Leader): Applying to log - commitIndex: 1, lastAppliedIndex: 0 01:15:41,702 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Setting last applied to 1 01:15:41,702 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from 0 to 1 01:15:41,702 AM [main] [DEBUG] SnapshotManager - leader: fakeSnapshot purging log to 0 for term 1 01:15:41,702 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 1, leaderSnapShotIndex: 0 01:15:41,702 AM [main] [DEBUG] AbstractLeader - leader (Leader): Replicate message: identifier: null, logIndex: 2, isSendImmediate: true 01:15:41,702 AM [main] [DEBUG] AbstractLeader - leader (Leader): Checking sendAppendEntries for follower follower: active: true, followerNextIndex: 2, leaderLastIndex: 2, leaderSnapShotIndex: 0 01:15:41,702 AM [main] [DEBUG] AbstractLeader - leader (Leader): sendAppendEntries: 2 is present for follower follower 01:15:41,702 AM [main] [DEBUG] AbstractLeader - leader (Leader): Sending AppendEntries to follower follower: AppendEntries{term=1, leaderId=leader, prevLogIndex=1, prevLogTerm=1, leaderCommit=1, replicatedToAllIndex=0, payloadVersion=5, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=2, term=1, payload=foo]]} 01:15:41,702 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior732#1188842057] 01:15:41,713 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader733] 01:15:41,713 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower734] 01:15:41,719 AM [main] [INFO] LeaderTest - Starting testLeaderSchedulesHeartbeatsEvenWhenNoFollowersRespondToInitialAppendEntries 01:15:41,721 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:41,722 AM [main] [DEBUG] AbstractLeader - leader738 (Leader): Election: Leader has following peers: [follower739, follower740] 01:15:41,722 AM [main] [DEBUG] AbstractLeader - leader738 (Leader): Checking sendAppendEntries for follower follower739: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 01:15:41,722 AM [main] [DEBUG] AbstractLeader - leader738 (Leader): Checking sendAppendEntries for follower follower740: active: false, followerNextIndex: -1, leaderLastIndex: 4, leaderSnapShotIndex: -1 01:15:42,722 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior735#1716487078] 01:15:42,734 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader736] 01:15:42,734 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower737] 01:15:42,734 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader738] 01:15:42,734 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower739#143712633] 01:15:42,734 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/follower740#1702444494] 01:15:42,737 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:42,737 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:42,737 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): In requestVote: RequestVote{term=1, candidateId=test, lastLogIndex=10000, lastLogTerm=999} - currentTerm: 1, votedFor: test, lastIndex: 1, lastTerm: 1 01:15:42,737 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): requestVote returning: RequestVoteReply{term=1, voteGranted=true} 01:15:42,737 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior741#-747583481] 01:15:42,748 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader742] 01:15:42,748 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower743] 01:15:42,751 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:42,751 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:42,751 AM [main] [DEBUG] AbstractLeader - leader (Leader): handleAppendEntries: AppendEntries{term=2, leaderId=leader-1, prevLogIndex=-1, prevLogTerm=-1, leaderCommit=2, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, entries==[SimpleReplicatedLogEntry [index=0, term=2, payload=zero]]} 01:15:42,751 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior744#1440984065] 01:15:42,762 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader745] 01:15:42,762 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower746] 01:15:42,764 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:42,764 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:42,764 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): In requestVote: RequestVote{term=1, candidateId=test, lastLogIndex=1999, lastLogTerm=1} - currentTerm: 1, votedFor: test, lastIndex: 2000, lastTerm: 1 01:15:42,764 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): requestVote returning: RequestVoteReply{term=1, voteGranted=false} 01:15:42,765 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior747#220004227] 01:15:42,775 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader748] 01:15:42,775 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower749] 01:15:42,777 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:42,777 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:42,777 AM [main] [INFO] AbstractLeader - leader (Leader): Term 100 in "AppendEntries{term=100, leaderId=leader-1, prevLogIndex=0, prevLogTerm=0, leaderCommit=1, replicatedToAllIndex=-1, payloadVersion=0, recipientRaftVersion=5, leaderRaftVersion=5, entries==[]}" message is greater than leader's term 1 - switching to Follower 01:15:42,777 AM [main] [DEBUG] DefaultConfigParamsImpl - No custom RaftPolicy specified. Using DefaultRaftPolicy 01:15:42,777 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 01:15:42,777 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:42,777 AM [main] [INFO] AbstractLeader - leader (Leader): Term 100 in "AppendEntriesReply{term=100, success=false, followerId=follower-1, logLastIndex=100, logLastTerm=100, forceInstallSnapshot=false, needsLeaderAddress=false, payloadVersion=0, raftVersion=5, recipientRaftVersion=5}" message is greater than leader's term 1 - switching to Follower 01:15:42,777 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 01:15:42,777 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:42,777 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Found higher term in RequestVote rpc, verifying whether it's safe to update term. 01:15:42,777 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Cluster state: [] 01:15:42,777 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): Candidate in requestVote:RequestVote{term=100, candidateId=candidate-1, lastLogIndex=10, lastLogTerm=100} with higher term appears reachable, updating term. 01:15:42,777 AM [main] [INFO] AbstractLeader - leader (Leader): Term 100 in "RequestVote{term=100, candidateId=candidate-1, lastLogIndex=10, lastLogTerm=100}" message is greater than leader's term 1 - switching to Follower 01:15:42,777 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 01:15:42,777 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:42,777 AM [main] [INFO] AbstractLeader - leader (Leader): Term 100 in "RequestVoteReply{term=100, voteGranted=false}" message is greater than leader's term 1 - switching to Follower 01:15:42,778 AM [main] [INFO] RaftActorBehavior - leader (Leader) :- Switching from behavior Leader to Follower, election term: 100 01:15:42,778 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior750#123026845] 01:15:42,788 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader751] 01:15:42,788 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower752] 01:15:42,790 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:42,791 AM [main] [DEBUG] AbstractLeader - test (Leader): Election: Leader has following peers: [] 01:15:42,791 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:42,791 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 0 01:15:42,791 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:42,791 AM [main] [DEBUG] SnapshotManager - test: fakeSnapshot purging log to 0 for term 1 01:15:42,791 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 2 01:15:42,791 AM [main] [DEBUG] SnapshotManager - test: fakeSnapshot purging log to 1 for term 1 01:15:42,791 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 2 01:15:42,791 AM [main] [DEBUG] SnapshotManager - test: fakeSnapshot purging log to 1 for term 1 01:15:42,791 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior753#-857569770] 01:15:42,801 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader754] 01:15:42,802 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower755] 01:15:42,803 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:42,803 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:42,803 AM [main] [INFO] RaftActorBehavior - leader (Leader): Cannot append entries because sender's term 100 is less than 1000 01:15:42,803 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior756#-751540404] [WARN] [07/24/2025 01:15:42.812] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/leader738] received dead letter from TestActor[pekko://test/user/leader738]: org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat@1c5792e0 [INFO] [pekkoDeadLetter][07/24/2025 01:15:42.813] [test-pekko.actor.default-dispatcher-6] [pekko://test/user/leader738] Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader738] to TestActor[pekko://test/user/leader738] was not delivered. [7] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader738] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:15:42,813 AM [test-pekko.actor.default-dispatcher-7] [INFO] TestActorRef - pekkoDeadLetter Message [org.opendaylight.controller.cluster.raft.behaviors.AbstractLeader$SendHeartBeat] from TestActor[pekko://test/user/leader738] to TestActor[pekko://test/user/leader738] was not delivered. [7] dead letters encountered. If this is not an expected behavior then TestActor[pekko://test/user/leader738] may have terminated unexpectedly. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. 01:15:42,814 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader757] 01:15:42,814 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower758] 01:15:42,817 AM [main] [DEBUG] AbstractReplicatedLog - : Moving last applied index from -1 to 1 01:15:42,817 AM [main] [DEBUG] AbstractLeader - leader (Leader): Election: Leader has following peers: [] 01:15:42,817 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): In requestVote: RequestVote{term=999, candidateId=test, lastLogIndex=10000, lastLogTerm=999} - currentTerm: 1000, votedFor: null, lastIndex: 1, lastTerm: 1 01:15:42,817 AM [main] [DEBUG] RaftActorBehavior - leader (Leader): requestVote returning: RequestVoteReply{term=1000, voteGranted=false} 01:15:42,817 AM [main] [INFO] TestActorFactory - Killing actor Actor[pekko://test/user/behavior759#482292296] 01:15:42,828 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/leader760] 01:15:42,828 AM [main] [INFO] TestActorFactory - Killing actor TestActor[pekko://test/user/follower761] [INFO] [07/24/2025 01:15:42.829] [main] [CoordinatedShutdown(pekko://test)] Running CoordinatedShutdown with reason [ActorSystemTerminateReason] 01:15:42,829 AM [test-pekko.actor.default-dispatcher-7] [INFO] CoordinatedShutdown - Running CoordinatedShutdown with reason [ActorSystemTerminateReason] [WARN] [07/24/2025 01:15:42.830] [test-pekko.actor.default-dispatcher-7] [pekko://test/system/cluster/core/daemon] unhandled message from Actor[pekko://test/deadLetters]: Leave(pekko://test@10.30.170.18:17355) 01:15:42,830 AM [test-pekko.actor.default-dispatcher-7] [INFO] LocalActorRef - pekkoDeadLetter Message [org.apache.pekko.cluster.ClusterUserAction$Leave] to Actor[pekko://test/system/cluster/core/daemon#-79541335] was unhandled. [8] dead letters encountered. This logging can be turned off or adjusted with configuration settings 'pekko.log-dead-letters' and 'pekko.log-dead-letters-during-shutdown'. [INFO] [pekkoDeadLetter][07/24/2025 01:15:42.830] [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#-79541335] was unhandled. [8] 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/24/2025 01:15:42.831] [test-pekko.actor.internal-dispatcher-2] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Exiting completed 01:15:42,831 AM [test-pekko.actor.default-dispatcher-7] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Exiting completed [INFO] [07/24/2025 01:15:42.831] [test-pekko.actor.internal-dispatcher-2] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Shutting down... 01:15:42,831 AM [test-pekko.actor.default-dispatcher-7] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Shutting down... [INFO] [07/24/2025 01:15:42.832] [test-pekko.actor.internal-dispatcher-2] [Cluster(pekko://test)] Cluster Node [pekko://test@10.30.170.18:17355] - Successfully shut down 01:15:42,832 AM [test-pekko.actor.default-dispatcher-7] [INFO] Cluster - Cluster Node [pekko://test@10.30.170.18:17355] - Successfully shut down [INFO] [07/24/2025 01:15:42.833] [test-pekko.remote.default-remote-dispatcher-8] [pekko://test@10.30.170.18:17355/system/remoting-terminator] Shutting down remote daemon. 01:15:42,833 AM [test-pekko.actor.default-dispatcher-11] [INFO] RemoteActorRefProvider$RemotingTerminator - Shutting down remote daemon. 01:15:42,833 AM [test-pekko.actor.default-dispatcher-11] [INFO] RemoteActorRefProvider$RemotingTerminator - Remote daemon shut down; proceeding with flushing remote transports. [INFO] [07/24/2025 01:15:42.833] [test-pekko.remote.default-remote-dispatcher-8] [pekko://test@10.30.170.18:17355/system/remoting-terminator] Remote daemon shut down; proceeding with flushing remote transports. 01:15:42,836 AM [test-pekko.actor.default-dispatcher-7] [INFO] RemoteActorRefProvider$RemotingTerminator - Remoting shut down. [INFO] [07/24/2025 01:15:42.836] [test-pekko.remote.default-remote-dispatcher-8] [pekko://test@10.30.170.18:17355/system/remoting-terminator] Remoting shut down. [DEBUG] [07/24/2025 01:15:42.836] [test-pekko.actor.internal-dispatcher-3] [EventStream] shutting down: StandardOutLogger