From da564ef9a771309ac744a773160202b23d0c67e3 Mon Sep 17 00:00:00 2001 From: Junping Du Date: Wed, 6 May 2015 16:49:16 -0700 Subject: [PATCH] YARN-3580. [JDK8] TestClientRMService.testGetLabelsToNodes fails. Contributed by Robert Kanter. (cherry picked from commit 31b627b2a8755dec0820d01f6f7ac96e4c6194e2) Conflicts: hadoop-yarn-project/CHANGES.txt --- hadoop-yarn-project/CHANGES.txt | 3 ++ .../resourcemanager/TestClientRMService.java | 45 +++++++++---------- 2 files changed, 25 insertions(+), 23 deletions(-) diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index 232bf95bae9..ca843b68d4c 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -103,6 +103,9 @@ Release 2.7.2 - UNRELEASED YARN-4313. Race condition in MiniMRYarnCluster when getting history server address. (Jian He via xgong) + YARN-3580. [JDK8] TestClientRMService.testGetLabelsToNodes fails. (Robert Kanter + via junping_du) + Release 2.7.1 - 2015-07-06 INCOMPATIBLE CHANGES diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/TestClientRMService.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/TestClientRMService.java index 7014a299e37..26f4925c2b0 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/TestClientRMService.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/TestClientRMService.java @@ -1409,9 +1409,11 @@ public class TestClientRMService { RMNodeLabelsManager labelsMgr = rm.getRMContext().getNodeLabelManager(); labelsMgr.addToCluserNodeLabels(ImmutableSet.of("x", "y")); + NodeId node1 = NodeId.newInstance("host1", 1234); + NodeId node2 = NodeId.newInstance("host2", 1234); Map> map = new HashMap>(); - map.put(NodeId.newInstance("host1", 0), ImmutableSet.of("x")); - map.put(NodeId.newInstance("host2", 0), ImmutableSet.of("y")); + map.put(node1, ImmutableSet.of("x")); + map.put(node2, ImmutableSet.of("y")); labelsMgr.replaceLabelsOnNode(map); // Create a client. @@ -1434,12 +1436,9 @@ public class TestClientRMService { client.getNodeToLabels(GetNodesToLabelsRequest.newInstance()); Map> nodeToLabels = response1.getNodeToLabels(); Assert.assertTrue(nodeToLabels.keySet().containsAll( - Arrays.asList(NodeId.newInstance("host1", 0), - NodeId.newInstance("host2", 0)))); - Assert.assertTrue(nodeToLabels.get(NodeId.newInstance("host1", 0)) - .containsAll(Arrays.asList("x"))); - Assert.assertTrue(nodeToLabels.get(NodeId.newInstance("host2", 0)) - .containsAll(Arrays.asList("y"))); + Arrays.asList(node1, node2))); + Assert.assertTrue(nodeToLabels.get(node1).containsAll(Arrays.asList("x"))); + Assert.assertTrue(nodeToLabels.get(node2).containsAll(Arrays.asList("y"))); rpc.stopProxy(client, conf); rm.close(); @@ -1459,12 +1458,17 @@ public class TestClientRMService { RMNodeLabelsManager labelsMgr = rm.getRMContext().getNodeLabelManager(); labelsMgr.addToCluserNodeLabels(ImmutableSet.of("x", "y", "z")); + NodeId node1A = NodeId.newInstance("host1", 1234); + NodeId node1B = NodeId.newInstance("host1", 5678); + NodeId node2A = NodeId.newInstance("host2", 1234); + NodeId node3A = NodeId.newInstance("host3", 1234); + NodeId node3B = NodeId.newInstance("host3", 5678); Map> map = new HashMap>(); - map.put(NodeId.newInstance("host1", 0), ImmutableSet.of("x")); - map.put(NodeId.newInstance("host1", 1), ImmutableSet.of("z")); - map.put(NodeId.newInstance("host2", 0), ImmutableSet.of("y")); - map.put(NodeId.newInstance("host3", 0), ImmutableSet.of("y")); - map.put(NodeId.newInstance("host3", 1), ImmutableSet.of("z")); + map.put(node1A, ImmutableSet.of("x")); + map.put(node1B, ImmutableSet.of("z")); + map.put(node2A, ImmutableSet.of("y")); + map.put(node3A, ImmutableSet.of("y")); + map.put(node3B, ImmutableSet.of("z")); labelsMgr.replaceLabelsOnNode(map); // Create a client. @@ -1489,14 +1493,11 @@ public class TestClientRMService { Assert.assertTrue( labelsToNodes.keySet().containsAll(Arrays.asList("x", "y", "z"))); Assert.assertTrue( - labelsToNodes.get("x").containsAll(Arrays.asList( - NodeId.newInstance("host1", 0)))); + labelsToNodes.get("x").containsAll(Arrays.asList(node1A))); Assert.assertTrue( - labelsToNodes.get("y").containsAll(Arrays.asList( - NodeId.newInstance("host2", 0), NodeId.newInstance("host3", 0)))); + labelsToNodes.get("y").containsAll(Arrays.asList(node2A, node3A))); Assert.assertTrue( - labelsToNodes.get("z").containsAll(Arrays.asList( - NodeId.newInstance("host1", 1), NodeId.newInstance("host3", 1)))); + labelsToNodes.get("z").containsAll(Arrays.asList(node1B, node3B))); // Get labels to nodes mapping for specific labels Set setlabels = @@ -1507,11 +1508,9 @@ public class TestClientRMService { Assert.assertTrue( labelsToNodes.keySet().containsAll(Arrays.asList("x", "z"))); Assert.assertTrue( - labelsToNodes.get("x").containsAll(Arrays.asList( - NodeId.newInstance("host1", 0)))); + labelsToNodes.get("x").containsAll(Arrays.asList(node1A))); Assert.assertTrue( - labelsToNodes.get("z").containsAll(Arrays.asList( - NodeId.newInstance("host1", 1), NodeId.newInstance("host3", 1)))); + labelsToNodes.get("z").containsAll(Arrays.asList(node1B, node3B))); Assert.assertEquals(labelsToNodes.get("y"), null); rpc.stopProxy(client, conf);