HDFS-13239. Fix non-empty dir warning message when setting default EC policy. Contributed by Bharat Viswanadham.
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d6931c30 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d6931c30 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d6931c30 Branch: refs/heads/HDFS-12996 Commit: d6931c30c5a643ca192109b05a9c44da42a6318c Parents: 84c1095 Author: Xiao Chen <x...@apache.org> Authored: Tue Mar 13 10:06:55 2018 -0700 Committer: Xiao Chen <x...@apache.org> Committed: Tue Mar 13 10:07:26 2018 -0700 ---------------------------------------------------------------------- .../org/apache/hadoop/hdfs/tools/ECAdmin.java | 12 ++++----- .../test/resources/testErasureCodingConf.xml | 28 +++++++++++++++++--- 2 files changed, 30 insertions(+), 10 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/d6931c30/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/ECAdmin.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/ECAdmin.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/ECAdmin.java index e30b083..9b9fe14 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/ECAdmin.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/ECAdmin.java @@ -358,17 +358,15 @@ public class ECAdmin extends Configured implements Tool { try { dfs.setErasureCodingPolicy(p, ecPolicyName); if (ecPolicyName == null){ - System.out.println("Set default erasure coding policy" + - " on " + path); - } else { - System.out.println("Set erasure coding policy " + ecPolicyName + - " on " + path); + ecPolicyName = "default"; } + System.out.println("Set " + ecPolicyName + " erasure coding policy on" + + " " + path); RemoteIterator<FileStatus> dirIt = dfs.listStatusIterator(p); if (dirIt.hasNext()) { System.out.println("Warning: setting erasure coding policy on a " + - "non-empty directory will not automatically convert existing" + - " files to " + ecPolicyName); + "non-empty directory will not automatically convert existing " + + "files to " + ecPolicyName + " erasure coding policy"); } } catch (Exception e) { System.err.println(AdminHelper.prettifyException(e)); http://git-wip-us.apache.org/repos/asf/hadoop/blob/d6931c30/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testErasureCodingConf.xml ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testErasureCodingConf.xml b/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testErasureCodingConf.xml index fc0c060..2f7a6a7 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testErasureCodingConf.xml +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testErasureCodingConf.xml @@ -214,7 +214,7 @@ <comparators> <comparator> <type>SubstringComparator</type> - <expected-output>Set erasure coding policy RS-6-3-1024k on /ecdir</expected-output> + <expected-output>Set RS-6-3-1024k erasure coding policy on /ecdir</expected-output> </comparator> </comparators> </test> @@ -232,7 +232,7 @@ <comparators> <comparator> <type>SubstringComparator</type> - <expected-output>Set erasure coding policy RS-6-3-1024k on /ecdir</expected-output> + <expected-output>Set RS-6-3-1024k erasure coding policy on /ecdir</expected-output> </comparator> </comparators> </test> @@ -311,7 +311,7 @@ <comparators> <comparator> <type>SubstringComparator</type> - <expected-output>Warning: setting erasure coding policy on a non-empty directory will not automatically convert existing files to RS-6-3-1024</expected-output> + <expected-output>Warning: setting erasure coding policy on a non-empty directory will not automatically convert existing files to RS-6-3-1024k erasure coding policy</expected-output> </comparator> </comparators> </test> @@ -696,6 +696,28 @@ </test> <test> + <description>setPolicy : set erasure coding policy without given a specific policy name on a non empty directory</description> + <test-commands> + <command>-fs NAMENODE -mkdir /ecdir</command> + <command>-fs NAMENODE -mkdir /ecdir/ecsubdir</command> + <ec-admin-command>-fs NAMENODE -setPolicy -path /ecdir</ec-admin-command> + </test-commands> + <cleanup-commands> + <command>-fs NAMENODE -rm -R /ecdir</command> + </cleanup-commands> + <comparators> + <comparator> + <type>SubstringComparator</type> + <expected-output>Set default erasure coding policy on /ecdir</expected-output> + </comparator> + <comparator> + <type>SubstringComparator</type> + <expected-output>Warning: setting erasure coding policy on a non-empty directory will not automatically convert existing files to default erasure coding policy</expected-output> + </comparator> + </comparators> + </test> + + <test> <description>getPolicy: get the default policy after setPolicy without given a specific policy name</description> <test-commands> <command>-fs NAMENODE -mkdir /ecdir</command> --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org