Fix intermittent testOwnerChangesOnPeerAvailabilityChanges failure
[controller.git] / opendaylight / md-sal / sal-akka-raft / src / main / java / org / opendaylight / controller / cluster / raft / behaviors / PreLeader.java
index eab3f7d7da1d49feb57f71b801b4cbe6b4362d2a..6d2f429de278d2f3ad47d671c582847fc81e8320 100644 (file)
@@ -22,6 +22,7 @@ import org.opendaylight.controller.cluster.raft.persisted.NoopPayload;
  * the log with the leader's current term. Once the no-op entry is committed, all prior entries are committed
  * indirectly. Once all entries are committed, ie commitIndex matches the last log index, it switches to the
  * normal Leader state.
+ *
  * <p>
  * The use of a no-op entry in this manner is outlined in the last paragraph in ยง8 of the
  * <a href="https://raft.github.io/raft.pdf">extended raft version</a>.
@@ -39,7 +40,9 @@ public class PreLeader extends AbstractLeader {
     @Override
     public RaftActorBehavior handleMessage(ActorRef sender, Object message) {
         if (message instanceof ApplyState) {
-            if(context.getLastApplied() >= context.getReplicatedLog().lastIndex()) {
+            log.debug("{}: Received {} - lastApplied: {}, lastIndex: {}", logName(), message, context.getLastApplied(),
+                    context.getReplicatedLog().lastIndex());
+            if (context.getLastApplied() >= context.getReplicatedLog().lastIndex()) {
                 // We've applied all entries - we can switch to Leader.
                 return internalSwitchBehavior(new Leader(context, this));
             } else {