X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2FAbstractRaftActorIntegrationTest.java;h=f59598876de66a975c06766577f39ad3371aa62c;hb=HEAD;hp=1e4859254fe091d0196e2ae75dd2325715593e84;hpb=534bf6f83465cc8a575b097c1e28fbb1f34d110a;p=controller.git diff --git a/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/AbstractRaftActorIntegrationTest.java b/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/AbstractRaftActorIntegrationTest.java index 1e4859254f..a421f53b20 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/AbstractRaftActorIntegrationTest.java +++ b/opendaylight/md-sal/sal-akka-raft/src/test/java/org/opendaylight/controller/cluster/raft/AbstractRaftActorIntegrationTest.java @@ -7,7 +7,6 @@ */ package org.opendaylight.controller.cluster.raft; -import static akka.pattern.Patterns.ask; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; @@ -17,16 +16,15 @@ import akka.actor.PoisonPill; import akka.actor.Terminated; import akka.dispatch.Dispatchers; import akka.dispatch.Mailboxes; +import akka.pattern.Patterns; import akka.testkit.TestActorRef; import akka.testkit.javadsl.TestKit; import akka.util.Timeout; import com.google.common.base.Stopwatch; -import com.google.common.collect.ImmutableMap; import com.google.common.util.concurrent.Uninterruptibles; import java.io.OutputStream; import java.time.Duration; import java.util.ArrayList; -import java.util.Collections; import java.util.List; import java.util.Map; import java.util.Optional; @@ -126,7 +124,7 @@ public abstract class AbstractRaftActorIntegrationTest extends AbstractActorTest TestRaftActor(final Builder builder) { super(builder); - this.collectorActor = builder.collectorActor; + collectorActor = builder.collectorActor; } public void startDropMessages(final Class msgClass) { @@ -148,26 +146,23 @@ public abstract class AbstractRaftActorIntegrationTest extends AbstractActorTest @SuppressWarnings({ "rawtypes", "unchecked", "checkstyle:IllegalCatch" }) @Override public void handleCommand(final Object message) { - if (message instanceof MockPayload) { - MockPayload payload = (MockPayload) message; + if (message instanceof MockPayload payload) { super.persistData(collectorActor, new MockIdentifier(payload.toString()), payload, false); return; } - if (message instanceof ServerConfigurationPayload) { - super.persistData(collectorActor, new MockIdentifier("serverConfig"), (Payload) message, false); + if (message instanceof ServerConfigurationPayload payload) { + super.persistData(collectorActor, new MockIdentifier("serverConfig"), payload, false); return; } - if (message instanceof SetPeerAddress) { - setPeerAddress(((SetPeerAddress) message).getPeerId(), - ((SetPeerAddress) message).getPeerAddress()); + if (message instanceof SetPeerAddress setPeerAddress) { + setPeerAddress(setPeerAddress.getPeerId(), setPeerAddress.getPeerAddress()); return; } - if (message instanceof TestPersist) { - persistData(((TestPersist) message).getActorRef(), ((TestPersist) message).getIdentifier(), - ((TestPersist) message).getPayload(), false); + if (message instanceof TestPersist testPersist) { + persistData(testPersist.getActorRef(), testPersist.getIdentifier(), testPersist.getPayload(), false); return; } @@ -190,9 +185,9 @@ public abstract class AbstractRaftActorIntegrationTest extends AbstractActorTest @Override @SuppressWarnings("checkstyle:IllegalCatch") public void createSnapshot(final ActorRef actorRef, final Optional installSnapshotStream) { - MockSnapshotState snapshotState = new MockSnapshotState(new ArrayList<>(getState())); + MockSnapshotState snapshotState = new MockSnapshotState(List.copyOf(getState())); if (installSnapshotStream.isPresent()) { - SerializationUtils.serialize(snapshotState, installSnapshotStream.get()); + SerializationUtils.serialize(snapshotState, installSnapshotStream.orElseThrow()); } actorRef.tell(new CaptureSnapshotReply(snapshotState, installSnapshotStream), actorRef); @@ -214,13 +209,14 @@ public abstract class AbstractRaftActorIntegrationTest extends AbstractActorTest } public Builder collectorActor(final ActorRef newCollectorActor) { - this.collectorActor = newCollectorActor; + collectorActor = newCollectorActor; return this; } } } - protected static final int SNAPSHOT_CHUNK_SIZE = 100; + // FIXME: this is an arbitrary limit. Document interactions and/or improve them to improve maintainability + protected static final int MAXIMUM_MESSAGE_SLICE_SIZE = 700; protected final Logger testLog = LoggerFactory.getLogger(getClass()); @@ -242,16 +238,16 @@ public abstract class AbstractRaftActorIntegrationTest extends AbstractActorTest protected String follower2Id = factory.generateActorId("follower"); protected TestActorRef follower2Actor; protected ActorRef follower2CollectorActor; - protected RaftActorBehavior follower2; + protected RaftActorBehavior follower2; protected RaftActorContext follower2Context; - protected ImmutableMap peerAddresses; + protected Map peerAddresses; protected long initialTerm = 5; protected long currentTerm; protected int snapshotBatchCount = 4; - protected int snapshotChunkSize = SNAPSHOT_CHUNK_SIZE; + protected int maximumMessageSliceSize = MAXIMUM_MESSAGE_SLICE_SIZE; protected List expSnapshotState = new ArrayList<>(); @@ -269,7 +265,7 @@ public abstract class AbstractRaftActorIntegrationTest extends AbstractActorTest configParams.setSnapshotBatchCount(snapshotBatchCount); configParams.setSnapshotDataThresholdPercentage(70); configParams.setIsolatedLeaderCheckInterval(new FiniteDuration(1, TimeUnit.DAYS)); - configParams.setSnapshotChunkSize(snapshotChunkSize); + configParams.setMaximumMessageSliceSize(maximumMessageSliceSize); return configParams; } @@ -287,7 +283,7 @@ public abstract class AbstractRaftActorIntegrationTest extends AbstractActorTest protected TestActorRef newTestRaftActor(final String id, final Map newPeerAddresses, final ConfigParams configParams) { return newTestRaftActor(id, TestRaftActor.newBuilder().peerAddresses(newPeerAddresses != null - ? newPeerAddresses : Collections.emptyMap()).config(configParams)); + ? newPeerAddresses : Map.of()).config(configParams)); } protected TestActorRef newTestRaftActor(final String id, final TestRaftActor.Builder builder) { @@ -341,12 +337,12 @@ public abstract class AbstractRaftActorIntegrationTest extends AbstractActorTest protected void verifyPersistedJournal(final String persistenceId, final List expJournal) { - List journal = InMemoryJournal.get(persistenceId, ReplicatedLogEntry.class); + final var journal = InMemoryJournal.get(persistenceId, ReplicatedLogEntry.class); assertEquals("Journal ReplicatedLogEntry count", expJournal.size(), journal.size()); for (int i = 0; i < expJournal.size(); i++) { - ReplicatedLogEntry expected = expJournal.get(i); - ReplicatedLogEntry actual = journal.get(i); - verifyReplicatedLogEntry(expected, actual.getTerm(), actual.getIndex(), actual.getData()); + final var expected = expJournal.get(i); + final var actual = journal.get(i); + verifyReplicatedLogEntry(expected, actual.term(), actual.index(), actual.getData()); } } @@ -378,8 +374,8 @@ public abstract class AbstractRaftActorIntegrationTest extends AbstractActorTest protected void verifyReplicatedLogEntry(final ReplicatedLogEntry replicatedLogEntry, final long expTerm, final long expIndex, final Payload payload) { - assertEquals("ReplicatedLogEntry getTerm", expTerm, replicatedLogEntry.getTerm()); - assertEquals("ReplicatedLogEntry getIndex", expIndex, replicatedLogEntry.getIndex()); + assertEquals("ReplicatedLogEntry getTerm", expTerm, replicatedLogEntry.term()); + assertEquals("ReplicatedLogEntry getIndex", expIndex, replicatedLogEntry.index()); assertEquals("ReplicatedLogEntry getData", payload, replicatedLogEntry.getData()); } @@ -423,7 +419,7 @@ public abstract class AbstractRaftActorIntegrationTest extends AbstractActorTest Stopwatch sw = Stopwatch.createStarted(); while (sw.elapsed(TimeUnit.SECONDS) <= 5) { try { - OnDemandRaftState raftState = (OnDemandRaftState)Await.result(ask(raftActor, + OnDemandRaftState raftState = (OnDemandRaftState)Await.result(Patterns.ask(raftActor, GetOnDemandRaftState.INSTANCE, timeout), timeout.duration()); verifier.accept(raftState); return;