X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2FRaftActorRecoverySupport.java;h=389e8dfd8ff942a090a9201fa5432b944402d9d8;hb=ebb756e983e44035641b0e890ca6baa96e34c6dd;hp=10375f9406666234bb3f6f69d14cb2ea003ef7f8;hpb=33877f41ffc3f8eb36ad8490315419b90817d26e;p=controller.git diff --git a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/RaftActorRecoverySupport.java b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/RaftActorRecoverySupport.java index 10375f9406..389e8dfd8f 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/RaftActorRecoverySupport.java +++ b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/RaftActorRecoverySupport.java @@ -14,6 +14,7 @@ import java.util.Collections; import java.util.concurrent.TimeUnit; import org.opendaylight.controller.cluster.PersistentDataProvider; import org.opendaylight.controller.cluster.raft.base.messages.ApplySnapshot; +import org.opendaylight.controller.cluster.raft.messages.PersistentPayload; import org.opendaylight.controller.cluster.raft.persisted.ApplyJournalEntries; import org.opendaylight.controller.cluster.raft.persisted.DeleteEntries; import org.opendaylight.controller.cluster.raft.persisted.EmptyState; @@ -22,7 +23,6 @@ import org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPay import org.opendaylight.controller.cluster.raft.persisted.Snapshot; import org.opendaylight.controller.cluster.raft.persisted.Snapshot.State; import org.opendaylight.controller.cluster.raft.persisted.UpdateElectionTerm; -import org.opendaylight.controller.cluster.raft.protobuff.client.messages.PersistentPayload; import org.slf4j.Logger; /** @@ -46,7 +46,7 @@ class RaftActorRecoverySupport { RaftActorRecoverySupport(final RaftActorContext context, final RaftActorRecoveryCohort cohort) { this.context = context; this.cohort = cohort; - this.log = context.getLogger(); + log = context.getLogger(); } boolean handleRecoveryMessage(final Object message, final PersistentDataProvider persistentProvider) { @@ -59,19 +59,18 @@ class RaftActorRecoverySupport { } boolean recoveryComplete = false; - if (message instanceof UpdateElectionTerm) { - context.getTermInformation().update(((UpdateElectionTerm) message).getCurrentTerm(), - ((UpdateElectionTerm) message).getVotedFor()); - } else if (message instanceof SnapshotOffer) { - onRecoveredSnapshot((SnapshotOffer) message); - } else if (message instanceof ReplicatedLogEntry) { - onRecoveredJournalLogEntry((ReplicatedLogEntry) message); - } else if (message instanceof ApplyJournalEntries) { - onRecoveredApplyLogEntries(((ApplyJournalEntries) message).getToIndex()); - } else if (message instanceof DeleteEntries) { - onDeleteEntries((DeleteEntries) message); - } else if (message instanceof ServerConfigurationPayload) { - context.updatePeerIds((ServerConfigurationPayload)message); + if (message instanceof UpdateElectionTerm updateElectionTerm) { + context.getTermInformation().update(updateElectionTerm.getCurrentTerm(), updateElectionTerm.getVotedFor()); + } else if (message instanceof SnapshotOffer snapshotOffer) { + onRecoveredSnapshot(snapshotOffer); + } else if (message instanceof ReplicatedLogEntry replicatedLogEntry) { + onRecoveredJournalLogEntry(replicatedLogEntry); + } else if (message instanceof ApplyJournalEntries applyJournalEntries) { + onRecoveredApplyLogEntries(applyJournalEntries.getToIndex()); + } else if (message instanceof DeleteEntries deleteEntries) { + onDeleteEntries(deleteEntries); + } else if (message instanceof ServerConfigurationPayload serverConfigurationPayload) { + context.updatePeerIds(serverConfigurationPayload); } else if (message instanceof RecoveryCompleted) { recoveryComplete = true; onRecoveryCompletedMessage(persistentProvider); @@ -254,7 +253,7 @@ class RaftActorRecoverySupport { final SnapshotManager snapshotManager = context.getSnapshotManager(); if (snapshotManager.capture(logEntry, -1)) { log.info("Capturing snapshot, resetting timer for the next recovery snapshot interval."); - this.recoverySnapshotTimer.reset().start(); + recoverySnapshotTimer.reset().start(); } else { log.info("SnapshotManager is not able to capture snapshot at this time. It will be retried " + "again with the next recovered entry."); @@ -262,7 +261,7 @@ class RaftActorRecoverySupport { } private boolean shouldTakeRecoverySnapshot() { - return this.recoverySnapshotTimer != null && this.recoverySnapshotTimer.elapsed(TimeUnit.SECONDS) + return recoverySnapshotTimer != null && recoverySnapshotTimer.elapsed(TimeUnit.SECONDS) >= context.getConfigParams().getRecoverySnapshotIntervalSeconds(); } @@ -338,6 +337,6 @@ class RaftActorRecoverySupport { } private static boolean isMigratedSerializable(final Object message) { - return message instanceof MigratedSerializable && ((MigratedSerializable)message).isMigrated(); + return message instanceof MigratedSerializable migrated && migrated.isMigrated(); } }