Repository: hadoop Updated Branches: refs/heads/branch-2.6 c8d48d298 -> cccfc27e0
YARN-2723. Fix rmadmin -replaceLabelsOnNode does not correctly parse port. Contributed by Naganarasimha G R Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/cccfc27e Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/cccfc27e Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/cccfc27e Branch: refs/heads/branch-2.6 Commit: cccfc27e0d2df66adf50f7b0e5cfea72a4bd31d6 Parents: c8d48d2 Author: Xuan <[email protected]> Authored: Sat Oct 25 12:49:05 2014 -0700 Committer: Xuan <[email protected]> Committed: Sat Oct 25 12:49:05 2014 -0700 ---------------------------------------------------------------------- hadoop-yarn-project/CHANGES.txt | 3 +++ .../org/apache/hadoop/yarn/client/cli/RMAdminCLI.java | 2 +- .../apache/hadoop/yarn/client/cli/TestRMAdminCLI.java | 14 ++++++++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/cccfc27e/hadoop-yarn-project/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index 6884be7..eee45ba 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -687,6 +687,9 @@ Release 2.6.0 - UNRELEASED prevent creating thousands of threads in a large cluster. (Jason Lowe via jianhe) + YARN-2723. Fix rmadmin -replaceLabelsOnNode does not correctly parse port. + (Naganarasimha G R via xgong) + Release 2.5.1 - 2014-09-05 INCOMPATIBLE CHANGES http://git-wip-us.apache.org/repos/asf/hadoop/blob/cccfc27e/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/RMAdminCLI.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/RMAdminCLI.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/RMAdminCLI.java index 5e3f2a8..cd884f2 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/RMAdminCLI.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/RMAdminCLI.java @@ -454,7 +454,7 @@ public class RMAdminCLI extends HAAdmin { int port; if (nodeIdStr.contains(":")) { nodeName = nodeIdStr.substring(0, nodeIdStr.indexOf(":")); - port = Integer.valueOf(nodeIdStr.substring(nodeIdStr.indexOf(":"))); + port = Integer.valueOf(nodeIdStr.substring(nodeIdStr.indexOf(":") + 1)); } else { nodeName = nodeIdStr; port = 0; http://git-wip-us.apache.org/repos/asf/hadoop/blob/cccfc27e/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestRMAdminCLI.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestRMAdminCLI.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestRMAdminCLI.java index b4d29b6..4cabeb7 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestRMAdminCLI.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestRMAdminCLI.java @@ -488,6 +488,20 @@ public class TestRMAdminCLI { "-directlyAccessNodeLabelStore" }; assertTrue(0 != rmAdminCLI.run(args)); } + + @Test + public void testReplaceLabelsOnNodeWithPort() throws Exception { + // Successfully replace labels + dummyNodeLabelsManager.addToCluserNodeLabels(ImmutableSet.of("x", "y")); + String[] args = + { "-replaceLabelsOnNode", "node1:8000,x,y node2:8000,y", + "-directlyAccessNodeLabelStore" }; + assertEquals(0, rmAdminCLI.run(args)); + assertTrue(dummyNodeLabelsManager.getNodeLabels().containsKey( + NodeId.newInstance("node1", 8000))); + assertTrue(dummyNodeLabelsManager.getNodeLabels().containsKey( + NodeId.newInstance("node2", 8000))); + } @Test public void testGetClusterNodeLabels() throws Exception {
