You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by ar...@apache.org on 2019/04/05 20:22:04 UTC
[hadoop] branch trunk updated: HDDS-1332. Attempt to fix flaky test
testStartStopDatanodeStateMachine (#697)
This is an automated email from the ASF dual-hosted git repository.
arp pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/trunk by this push:
new 274ab4e HDDS-1332. Attempt to fix flaky test testStartStopDatanodeStateMachine (#697)
274ab4e is described below
commit 274ab4e86c162d1446230948659372c6e8dca492
Author: Doroszlai, Attila <64...@users.noreply.github.com>
AuthorDate: Fri Apr 5 22:21:58 2019 +0200
HDDS-1332. Attempt to fix flaky test testStartStopDatanodeStateMachine (#697)
---
.../container/common/statemachine/SCMConnectionManager.java | 13 ++++++++-----
.../ozone/container/common/TestDatanodeStateMachine.java | 8 +++-----
2 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/SCMConnectionManager.java b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/SCMConnectionManager.java
index 775a91a..f6f64a4 100644
--- a/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/SCMConnectionManager.java
+++ b/hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/SCMConnectionManager.java
@@ -35,13 +35,13 @@ import java.io.IOException;
import java.net.InetSocketAddress;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.locks.ReadWriteLock;
import java.util.concurrent.locks.ReentrantReadWriteLock;
+import static java.util.Collections.unmodifiableList;
import static org.apache.hadoop.hdds.scm.HddsServerUtil
.getScmRpcTimeOutInMilliseconds;
@@ -184,7 +184,12 @@ public class SCMConnectionManager
* @return - List of RPC Endpoints.
*/
public Collection<EndpointStateMachine> getValues() {
- return scmMachines.values();
+ readLock();
+ try {
+ return unmodifiableList(new ArrayList<>(scmMachines.values()));
+ } finally {
+ readUnlock();
+ }
}
@Override
@@ -201,9 +206,7 @@ public class SCMConnectionManager
public List<EndpointStateMachineMBean> getSCMServers() {
readLock();
try {
- return Collections
- .unmodifiableList(new ArrayList<>(scmMachines.values()));
-
+ return unmodifiableList(new ArrayList<>(scmMachines.values()));
} finally {
readUnlock();
}
diff --git a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/TestDatanodeStateMachine.java b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/TestDatanodeStateMachine.java
index a6fef1e..29160ee 100644
--- a/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/TestDatanodeStateMachine.java
+++ b/hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/common/TestDatanodeStateMachine.java
@@ -154,8 +154,6 @@ public class TestDatanodeStateMachine {
/**
* Assert that starting statemachine executes the Init State.
- *
- * @throws InterruptedException
*/
@Test
public void testStartStopDatanodeStateMachine() throws IOException,
@@ -167,9 +165,9 @@ public class TestDatanodeStateMachine {
stateMachine.getConnectionManager();
GenericTestUtils.waitFor(
() -> {
- LOG.info("connectionManager.getValues().size() is {}",
- connectionManager.getValues().size());
- return connectionManager.getValues().size() == 1;
+ int size = connectionManager.getValues().size();
+ LOG.info("connectionManager.getValues().size() is {}", size);
+ return size == 1;
}, 1000, 30000);
stateMachine.stopDaemon();
---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org