Repository: hadoop Updated Branches: refs/heads/trunk 76e309ead -> 95a41bf35
YARN-3157. Refactor the exception handling in ConverterUtils#to*Id. Contributed by Bibin A Chundatt. Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/95a41bf3 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/95a41bf3 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/95a41bf3 Branch: refs/heads/trunk Commit: 95a41bf35d8ba0a1ec087f456914231103d98fb9 Parents: 76e309e Author: Tsuyoshi Ozawa <[email protected]> Authored: Thu Feb 12 18:39:29 2015 +0900 Committer: Tsuyoshi Ozawa <[email protected]> Committed: Thu Feb 12 18:41:17 2015 +0900 ---------------------------------------------------------------------- hadoop-yarn-project/CHANGES.txt | 3 +++ .../org/apache/hadoop/yarn/util/ConverterUtils.java | 14 +++++++++++++- .../apache/hadoop/yarn/util/TestConverterUtils.java | 15 +++++++++++++++ 3 files changed, 31 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/95a41bf3/hadoop-yarn-project/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/CHANGES.txt b/hadoop-yarn-project/CHANGES.txt index 23923d0..985e4f5 100644 --- a/hadoop-yarn-project/CHANGES.txt +++ b/hadoop-yarn-project/CHANGES.txt @@ -269,6 +269,9 @@ Release 2.7.0 - UNRELEASED YARN-1237. Description for yarn.nodemanager.aux-services in yarn-default.xml is misleading. (Brahma Reddy Battula via ozawa) + YARN-3157. Refactor the exception handling in ConverterUtils#to*Id. + (Bibin A Chundatt via ozawa) + OPTIMIZATIONS YARN-2990. FairScheduler's delay-scheduling always waits for node-local and http://git-wip-us.apache.org/repos/asf/hadoop/blob/95a41bf3/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/util/ConverterUtils.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/util/ConverterUtils.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/util/ConverterUtils.java index 0aa68a2..7013fc8 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/util/ConverterUtils.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/util/ConverterUtils.java @@ -27,6 +27,7 @@ import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; +import java.util.NoSuchElementException; import org.apache.hadoop.classification.InterfaceAudience.Private; import org.apache.hadoop.fs.Path; @@ -175,7 +176,12 @@ public class ConverterUtils { } public static ContainerId toContainerId(String containerIdStr) { - return ContainerId.fromString(containerIdStr); + try { + return ContainerId.fromString(containerIdStr); + } catch (NoSuchElementException e) { + throw new IllegalArgumentException("Invalid ContainerId: " + + containerIdStr, e); + } } public static ApplicationAttemptId toApplicationAttemptId( @@ -190,6 +196,9 @@ public class ConverterUtils { } catch (NumberFormatException n) { throw new IllegalArgumentException("Invalid AppAttemptId: " + applicationAttmeptIdStr, n); + } catch (NoSuchElementException e){ + throw new IllegalArgumentException("Invalid AppAttemptId: " + + applicationAttmeptIdStr, e); } } @@ -206,6 +215,9 @@ public class ConverterUtils { } catch (NumberFormatException n) { throw new IllegalArgumentException("Invalid ApplicationId: " + appIdStr, n); + } catch (NoSuchElementException e){ + throw new IllegalArgumentException("Invalid ApplicationId: " + + appIdStr, e); } } http://git-wip-us.apache.org/repos/asf/hadoop/blob/95a41bf3/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/util/TestConverterUtils.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/util/TestConverterUtils.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/util/TestConverterUtils.java index 7d53785..3cec38b 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/util/TestConverterUtils.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/test/java/org/apache/hadoop/yarn/util/TestConverterUtils.java @@ -99,4 +99,19 @@ public class TestConverterUtils { assertEquals(nid.getPort(), 0); assertEquals(nid.getHost(), "node"); } + + @Test(expected = IllegalArgumentException.class) + public void testInvalidContainerId() { + ConverterUtils.toContainerId("container_e20_1423221031460_0003_01"); + } + + @Test(expected = IllegalArgumentException.class) + public void testInvalidAppattemptId() { + ConverterUtils.toApplicationAttemptId("appattempt_1423221031460"); + } + + @Test(expected = IllegalArgumentException.class) + public void testApplicationId() { + ConverterUtils.toApplicationId("application_1423221031460"); + } }
