You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ozone.apache.org by ad...@apache.org on 2022/07/01 15:10:59 UTC
[ozone] branch master updated: HDDS-6977. EC: Remove references to ContainerReplicaPendingOps in TestECContainerReplicaCount (#3575)
This is an automated email from the ASF dual-hosted git repository.
adoroszlai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git
The following commit(s) were added to refs/heads/master by this push:
new c02806fd55 HDDS-6977. EC: Remove references to ContainerReplicaPendingOps in TestECContainerReplicaCount (#3575)
c02806fd55 is described below
commit c02806fd55d2205bb3d3bae3d3b03e9be0eb9d82
Author: Stephen O'Donnell <st...@gmail.com>
AuthorDate: Fri Jul 1 16:10:54 2022 +0100
HDDS-6977. EC: Remove references to ContainerReplicaPendingOps in TestECContainerReplicaCount (#3575)
---
.../states/TestECContainerReplicaCount.java | 48 +++++++++-------------
1 file changed, 19 insertions(+), 29 deletions(-)
diff --git a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/container/states/TestECContainerReplicaCount.java b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/container/states/TestECContainerReplicaCount.java
index f123d192f7..94c1dd5e4b 100644
--- a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/container/states/TestECContainerReplicaCount.java
+++ b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/container/states/TestECContainerReplicaCount.java
@@ -21,23 +21,20 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import org.apache.commons.lang3.tuple.Pair;
import org.apache.hadoop.hdds.client.ECReplicationConfig;
-import org.apache.hadoop.hdds.conf.OzoneConfiguration;
import org.apache.hadoop.hdds.protocol.MockDatanodeDetails;
import org.apache.hadoop.hdds.protocol.proto.HddsProtos;
import org.apache.hadoop.hdds.scm.container.ContainerInfo;
import org.apache.hadoop.hdds.scm.container.ContainerReplica;
import org.apache.hadoop.hdds.scm.container.ECContainerReplicaCount;
import org.apache.hadoop.hdds.scm.container.replication.ContainerReplicaOp;
-import org.apache.hadoop.hdds.scm.container.replication.ContainerReplicaPendingOps;
import org.apache.hadoop.hdds.scm.container.replication.ReplicationTestUtil;
-import org.apache.hadoop.ozone.common.MonotonicClock;
import org.jetbrains.annotations.NotNull;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
-import java.time.ZoneOffset;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@@ -55,9 +52,6 @@ public class TestECContainerReplicaCount {
private ECReplicationConfig repConfig;
private ContainerInfo container;
- private ContainerReplicaPendingOps emptyPendingOps =
- new ContainerReplicaPendingOps(new OzoneConfiguration(),
- new MonotonicClock(ZoneOffset.UTC));
@BeforeEach
public void setup() {
@@ -74,7 +68,7 @@ public class TestECContainerReplicaCount {
Pair.of(IN_SERVICE, 5));
ECContainerReplicaCount rcnt =
new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 1);
+ Collections.emptyList(), 1);
Assertions.assertTrue(rcnt.isSufficientlyReplicated(false));
Assertions.assertFalse(rcnt.unRecoverable());
}
@@ -86,7 +80,7 @@ public class TestECContainerReplicaCount {
Pair.of(IN_SERVICE, 3), Pair.of(IN_SERVICE, 4));
ECContainerReplicaCount rcnt =
new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 1);
+ Collections.emptyList(), 1);
Assertions.assertFalse(rcnt.isSufficientlyReplicated(false));
Assertions.assertEquals(1, rcnt.unavailableIndexes(true).size());
Assertions.assertEquals(5,
@@ -152,18 +146,14 @@ public class TestECContainerReplicaCount {
Pair.of(IN_MAINTENANCE, 5));
ECContainerReplicaCount rcnt =
new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 0);
+ Collections.emptyList(), 0);
Assertions.assertTrue(rcnt.isSufficientlyReplicated(false));
rcnt = new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 1);
+ Collections.emptyList(), 1);
Assertions.assertFalse(rcnt.isSufficientlyReplicated(false));
- ContainerReplicaPendingOps pendingOps =
- new ContainerReplicaPendingOps(new OzoneConfiguration(),
- new MonotonicClock(ZoneOffset.UTC));
- pendingOps.scheduleDeleteReplica(container.containerID(),
- MockDatanodeDetails.randomDatanodeDetails(), 1);
- rcnt = new ECContainerReplicaCount(container, replica,
- pendingOps.getPendingOps(container.containerID()), 0);
+ List<ContainerReplicaOp> pendingOps =
+ getContainerReplicaOps(ImmutableList.of(), ImmutableList.of(1));
+ rcnt = new ECContainerReplicaCount(container, replica, pendingOps, 0);
Assertions.assertFalse(rcnt.isSufficientlyReplicated(false));
}
@@ -239,7 +229,7 @@ public class TestECContainerReplicaCount {
Pair.of(IN_MAINTENANCE, 1));
ECContainerReplicaCount rcnt =
new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 1);
+ Collections.emptyList(), 1);
Assertions.assertFalse(rcnt.isSufficientlyReplicated(false));
Assertions.assertFalse(rcnt.isOverReplicated(true));
Assertions.assertEquals(4, rcnt.additionalMaintenanceCopiesNeeded());
@@ -256,7 +246,7 @@ public class TestECContainerReplicaCount {
Pair.of(IN_MAINTENANCE, 5), Pair.of(IN_MAINTENANCE, 1));
ECContainerReplicaCount rcnt =
new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 1);
+ Collections.emptyList(), 1);
Assertions.assertTrue(rcnt.isSufficientlyReplicated(false));
Assertions.assertFalse(rcnt.isOverReplicated(true));
Assertions.assertEquals(0, rcnt.additionalMaintenanceCopiesNeeded());
@@ -267,7 +257,7 @@ public class TestECContainerReplicaCount {
// Repeat the test with redundancy of 2. Once the maintenance copies go
// offline, we should be able to lost 2 more containers.
rcnt = new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 2);
+ Collections.emptyList(), 2);
Assertions.assertFalse(rcnt.isSufficientlyReplicated(false));
Assertions.assertFalse(rcnt.isOverReplicated(true));
Assertions.assertEquals(1, rcnt.additionalMaintenanceCopiesNeeded());
@@ -308,7 +298,7 @@ public class TestECContainerReplicaCount {
Pair.of(IN_MAINTENANCE, 1), Pair.of(IN_MAINTENANCE, 5));
ECContainerReplicaCount rcnt =
new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 1);
+ Collections.emptyList(), 1);
Assertions.assertTrue(rcnt.isSufficientlyReplicated(false));
Assertions.assertFalse(rcnt.isOverReplicated(true));
Assertions.assertEquals(0, rcnt.additionalMaintenanceCopiesNeeded());
@@ -319,7 +309,7 @@ public class TestECContainerReplicaCount {
// Repeat the test with redundancy of 2. Once the maintenance copies go
// offline, we should be able to lost 2 more containers.
rcnt = new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 2);
+ Collections.emptyList(), 2);
Assertions.assertFalse(rcnt.isSufficientlyReplicated(false));
Assertions.assertFalse(rcnt.isOverReplicated(true));
Assertions.assertEquals(1, rcnt.additionalMaintenanceCopiesNeeded());
@@ -337,7 +327,7 @@ public class TestECContainerReplicaCount {
Pair.of(IN_MAINTENANCE, 5));
ECContainerReplicaCount rcnt =
new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 5);
+ Collections.emptyList(), 5);
// EC Parity is 2, which is max redundancy, but we have a
// maintenanceRedundancy of 5, which is not possible. Only 2 more copies
// should be needed.
@@ -349,7 +339,7 @@ public class TestECContainerReplicaCount {
Pair.of(IN_MAINTENANCE, 5), Pair.of(IN_SERVICE, 4),
Pair.of(IN_SERVICE, 5));
rcnt = new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 5);
+ Collections.emptyList(), 5);
Assertions.assertEquals(0, rcnt.additionalMaintenanceCopiesNeeded());
}
@@ -362,7 +352,7 @@ public class TestECContainerReplicaCount {
ECContainerReplicaCount rcnt =
new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 1);
+ Collections.emptyList(), 1);
Assertions.assertFalse(rcnt.isSufficientlyReplicated(false));
Assertions.assertFalse(rcnt.isOverReplicated(true));
Assertions.assertEquals(0, rcnt.additionalMaintenanceCopiesNeeded());
@@ -476,14 +466,14 @@ public class TestECContainerReplicaCount {
public void testMissing() {
ECContainerReplicaCount rcnt =
new ECContainerReplicaCount(container, new HashSet<>(),
- emptyPendingOps.getPendingOps(container.containerID()), 1);
+ Collections.emptyList(), 1);
Assertions.assertTrue(rcnt.unRecoverable());
Assertions.assertEquals(5, rcnt.unavailableIndexes(true).size());
Set<ContainerReplica> replica = ReplicationTestUtil
.createReplicas(Pair.of(IN_SERVICE, 1), Pair.of(IN_MAINTENANCE, 2));
rcnt = new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 1);
+ Collections.emptyList(), 1);
Assertions.assertTrue(rcnt.unRecoverable());
Assertions.assertEquals(3, rcnt.unavailableIndexes(true).size());
Assertions.assertEquals(0, rcnt.additionalMaintenanceCopiesNeeded());
@@ -493,7 +483,7 @@ public class TestECContainerReplicaCount {
Pair.of(DECOMMISSIONED, 3), Pair.of(DECOMMISSIONED, 4),
Pair.of(DECOMMISSIONED, 5));
rcnt = new ECContainerReplicaCount(container, replica,
- emptyPendingOps.getPendingOps(container.containerID()), 1);
+ Collections.emptyList(), 1);
// Not missing as the decommission replicas are still online
Assertions.assertFalse(rcnt.unRecoverable());
Assertions.assertEquals(0, rcnt.unavailableIndexes(true).size());
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@ozone.apache.org
For additional commands, e-mail: commits-help@ozone.apache.org