diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/OfflineImageViewer.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/OfflineImageViewer.java index f1dd9597632..630e4f0f91e 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/OfflineImageViewer.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/OfflineImageViewer.java @@ -186,6 +186,8 @@ public class OfflineImageViewer { options.addOption("p", "processor", true, ""); options.addOption("h", "help", false, ""); + options.addOption("maxSize", true, ""); + options.addOption("step", true, ""); options.addOption("skipBlocks", false, ""); options.addOption("printToScreen", false, ""); options.addOption("delimiter", true, ""); diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/TestOfflineImageViewer.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/TestOfflineImageViewer.java index b9aa7f39e93..a7c30ecf353 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/TestOfflineImageViewer.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/offlineImageViewer/TestOfflineImageViewer.java @@ -601,4 +601,23 @@ public class TestOfflineImageViewer { "FileDistribution", "-maxSize", "23", "-step", "4"}); assertEquals(0, status); } + + @Test + public void testOfflineImageViewerMaxSizeAndStepOptions() throws Exception { + final ByteArrayOutputStream bytes = new ByteArrayOutputStream(); + final PrintStream out = new PrintStream(bytes); + final PrintStream oldOut = System.out; + try { + System.setOut(out); + // Add the -h option to make the test only for option parsing, + // and don't need to do the following operations. + OfflineImageViewer.main(new String[] {"-i", "-", "-o", "-", "-p", + "FileDistribution", "-maxSize", "512", "-step", "8", "-h"}); + Assert.assertFalse(bytes.toString().contains( + "Error parsing command-line options: ")); + } finally { + System.setOut(oldOut); + IOUtils.closeStream(out); + } + } }