From ee06d41fcfb891420452e90046be4c224a1ab1b4 Mon Sep 17 00:00:00 2001 From: gf13871 Date: Thu, 25 Nov 2021 10:34:44 +0800 Subject: [PATCH 1/3] 'triggerrebuild' From f50700e0f9c76cdff6845db5fb335a9d5a7d8269 Mon Sep 17 00:00:00 2001 From: gf13871 Date: Mon, 21 Mar 2022 20:28:21 +0800 Subject: [PATCH 2/3] improve ec error message --- .../hadoop/hdfs/server/namenode/FSDirErasureCodingOp.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirErasureCodingOp.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirErasureCodingOp.java index 6628b56a132e0..4034c7009c87b 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirErasureCodingOp.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSDirErasureCodingOp.java @@ -168,8 +168,8 @@ private static List setErasureCodingPolicyXAttr(final FSNamesystem fsn, throw new FileNotFoundException("Path not found: " + srcIIP.getPath()); } if (!inode.isDirectory()) { - throw new IOException("Attempt to set an erasure coding policy " + - "for a file " + src); + throw new IOException("Cannot set an erasure coding policy " + + "for a file " + src + ". Expected to be a directory"); } final XAttr ecXAttr; From 9073517068c58944279fa81478bb3f3cb6e21543 Mon Sep 17 00:00:00 2001 From: gf13871 Date: Tue, 22 Mar 2022 19:49:32 +0800 Subject: [PATCH 3/3] fixtestcase --- .../hadoop/hdfs/TestUnsetAndChangeDirectoryEcPolicy.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestUnsetAndChangeDirectoryEcPolicy.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestUnsetAndChangeDirectoryEcPolicy.java index 4f33ce759626f..959a1d9b69575 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestUnsetAndChangeDirectoryEcPolicy.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestUnsetAndChangeDirectoryEcPolicy.java @@ -362,8 +362,8 @@ public void testEcPolicyOnFile() throws Exception { fs.setErasureCodingPolicy(ecFilePath, ecPolicy.getName()); fail("IOException should be thrown for setting EC policy on file"); } catch (IOException e) { - assertExceptionContains("Attempt to set an erasure coding policy " + - "for a file " + ecFilePath, e); + assertExceptionContains("Cannot set an erasure coding policy " + + "for a file " + ecFilePath + ". Expected to be a directory", e); } // Unset EC policy on file