This is an automated email from the ASF dual-hosted git repository. snemeth 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 94f0602 YARN-10104. FS-CS converter: dry run should work without output defined. Contributed by Peter Bacsko 94f0602 is described below commit 94f060242ec8bf9d548b38c909ca8e2a59f606e3 Author: Szilard Nemeth <snem...@apache.org> AuthorDate: Tue Jan 28 15:36:04 2020 +0100 YARN-10104. FS-CS converter: dry run should work without output defined. Contributed by Peter Bacsko --- .../fair/converter/FSConfigToCSConfigArgumentHandler.java | 12 +++++++----- .../converter/TestFSConfigToCSConfigArgumentHandler.java | 15 +++++++++++++-- 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/FSConfigToCSConfigArgumentHandler.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/FSConfigToCSConfigArgumentHandler.java index 893b237..c751953 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/FSConfigToCSConfigArgumentHandler.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/FSConfigToCSConfigArgumentHandler.java @@ -183,13 +183,14 @@ public class FSConfigToCSConfigArgumentHandler { private FSConfigToCSConfigConverter prepareAndGetConverter( CommandLine cliParser) { - conversionOptions.setDryRun( - cliParser.hasOption(CliOption.DRY_RUN.shortSwitch)); + boolean dryRun = + cliParser.hasOption(CliOption.DRY_RUN.shortSwitch); + conversionOptions.setDryRun(dryRun); conversionOptions.setNoTerminalRuleCheck( cliParser.hasOption(CliOption.NO_TERMINAL_RULE_CHECK.shortSwitch)); checkOptionPresent(cliParser, CliOption.YARN_SITE); - checkOutputDefined(cliParser); + checkOutputDefined(cliParser, dryRun); converterParams = validateInputFiles(cliParser); ruleHandler = new FSConfigToCSConfigRuleHandler(conversionOptions); @@ -238,14 +239,15 @@ public class FSConfigToCSConfigArgumentHandler { } } - private static void checkOutputDefined(CommandLine cliParser) { + private static void checkOutputDefined(CommandLine cliParser, + boolean dryRun) { boolean hasOutputDir = cliParser.hasOption(CliOption.OUTPUT_DIR.shortSwitch); boolean console = cliParser.hasOption(CliOption.CONSOLE_MODE.shortSwitch); - if (!console && !hasOutputDir) { + if (!console && !hasOutputDir && !dryRun) { throw new PreconditionException( "Output directory or console mode was not defined. Please" + " use -h or --help to see command line switches"); diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/TestFSConfigToCSConfigArgumentHandler.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/TestFSConfigToCSConfigArgumentHandler.java index 84df901..edf4c86 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/TestFSConfigToCSConfigArgumentHandler.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/TestFSConfigToCSConfigArgumentHandler.java @@ -108,12 +108,23 @@ public class TestFSConfigToCSConfigArgumentHandler { "-o", FSConfigConverterTestCommons.OUTPUT_DIR); } + private static List<String> getDefaultArgumentsWithNoOutput() { + return Lists.newArrayList("-y", FSConfigConverterTestCommons.YARN_SITE_XML); + } + private String[] getArgumentsAsArrayWithDefaults(String... args) { List<String> result = getDefaultArguments(); result.addAll(Arrays.asList(args)); return result.toArray(new String[0]); } + private String[] getArgumentsAsArrayWithDefaultsNoOutput( + String... args) { + List<String> result = getDefaultArgumentsWithNoOutput(); + result.addAll(Arrays.asList(args)); + return result.toArray(new String[0]); + } + private String[] getArgumentsAsArray(String... args) { List<String> result = Lists.newArrayList(); result.addAll(Arrays.asList(args)); @@ -426,9 +437,9 @@ public class TestFSConfigToCSConfigArgumentHandler { String expectedErrorMessage) throws Exception { setupFSConfigConversionFiles(true); - String[] args = getArgumentsAsArrayWithDefaults("-f", + String[] args = getArgumentsAsArrayWithDefaultsNoOutput("-f", FSConfigConverterTestCommons.FS_ALLOC_FILE, - "-r", FSConfigConverterTestCommons.CONVERSION_RULES_FILE, "-p", + "-r", FSConfigConverterTestCommons.CONVERSION_RULES_FILE, "-d"); FSConfigToCSConfigArgumentHandler argumentHandler = new FSConfigToCSConfigArgumentHandler(conversionOptions); --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org