This is an automated email from the ASF dual-hosted git repository. hexiaoqiao 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 57306566601 HDFS-17574. Make NNThroughputBenchmark support human-friendly units about blocksize. (#6931). Contributed by wangzhongwei. 57306566601 is described below commit 5730656660184d15ba4cc75ba4596f53feeb3e8b Author: gavin.wang <gracejia...@163.com> AuthorDate: Tue Jul 16 20:57:50 2024 +0800 HDFS-17574. Make NNThroughputBenchmark support human-friendly units about blocksize. (#6931). Contributed by wangzhongwei. Signed-off-by: He Xiaoqiao <hexiaoq...@apache.org> --- .../hdfs/server/namenode/NNThroughputBenchmark.java | 6 +++--- .../server/namenode/TestNNThroughputBenchmark.java | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/NNThroughputBenchmark.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/NNThroughputBenchmark.java index f96b33ba2fb..ca29433dbd6 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/NNThroughputBenchmark.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/NNThroughputBenchmark.java @@ -587,7 +587,7 @@ public class NNThroughputBenchmark implements Tool { numOpsRequired = Integer.parseInt(args.get(++i)); } else if (args.get(i).equals("-blockSize")) { if(i+1 == args.size()) printUsage(); - blockSize = Long.parseLong(args.get(++i)); + blockSize = StringUtils.TraditionalBinaryPrefix.string2long(args.get(++i)); } else if(args.get(i).equals("-threads")) { if(i+1 == args.size()) printUsage(); numThreads = Integer.parseInt(args.get(++i)); @@ -1260,7 +1260,7 @@ public class NNThroughputBenchmark implements Tool { blocksPerFile = Integer.parseInt(args.get(++i)); } else if (args.get(i).equals("-blockSize")) { if(i+1 == args.size()) printUsage(); - blockSize = Long.parseLong(args.get(++i)); + blockSize = StringUtils.TraditionalBinaryPrefix.string2long(args.get(++i)); } else if(args.get(i).equals("-baseDirName")) { if (i + 1 == args.size()) { printUsage(); @@ -1498,7 +1498,7 @@ public class NNThroughputBenchmark implements Tool { replication = Short.parseShort(args.get(++i)); } else if (args.get(i).equals("-blockSize")) { if(i+1 == args.size()) printUsage(); - blockSize = Long.parseLong(args.get(++i)); + blockSize = StringUtils.TraditionalBinaryPrefix.string2long(args.get(++i)); } else if(args.get(i).equals("-baseDirName")) { if (i + 1 == args.size()) { printUsage(); diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNNThroughputBenchmark.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNNThroughputBenchmark.java index 651db0c910a..1071564cf02 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNNThroughputBenchmark.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNNThroughputBenchmark.java @@ -285,4 +285,23 @@ public class TestNNThroughputBenchmark { "-blockSize", "32", "-close"}); } } + + /** + * This test runs {@link NNThroughputBenchmark} against a mini DFS cluster + * with explicit -blockSize option like 1m. + */ + @Test(timeout = 120000) + public void testNNThroughputBlockSizeArgWithLetterSuffix() throws Exception { + final Configuration conf = new HdfsConfiguration(); + conf.setInt(DFSConfigKeys.DFS_NAMENODE_MIN_BLOCK_SIZE_KEY, 16); + try (MiniDFSCluster cluster = new MiniDFSCluster.Builder(conf).build()) { + cluster.waitActive(); + final Configuration benchConf = new HdfsConfiguration(); + benchConf.setLong(DFSConfigKeys.DFS_NAMENODE_MIN_BLOCK_SIZE_KEY, 16); + FileSystem.setDefaultUri(benchConf, cluster.getURI()); + NNThroughputBenchmark.runBenchmark(benchConf, + new String[]{"-op", "create", "-keepResults", "-files", "3", + "-blockSize", "1m", "-close"}); + } + } } --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org