hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hudson (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-7917) Use file to replace data dirs in test to simulate a disk failure.
Date Tue, 24 Mar 2015 10:41:56 GMT

    [ https://issues.apache.org/jira/browse/HDFS-7917?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14377635#comment-14377635

Hudson commented on HDFS-7917:

FAILURE: Integrated in Hadoop-Yarn-trunk-Java8 #142 (See [https://builds.apache.org/job/Hadoop-Yarn-trunk-Java8/142/])
HDFS-7917. Use file to replace data dirs in test to simulate a disk failure. Contributed by
Lei (Eddy) Xu. (cnauroth: rev 2c238ae4e00371ef76582b007bb0e20ac8455d9c)
* hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/TestDataNodeVolumeFailureReporting.java
* hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/TestDataNodeVolumeFailure.java
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/DataNodeTestUtils.java
* hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/TestDataNodeHotSwapVolumes.java
* hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/TestDataNodeVolumeFailureToleration.java

> Use file to replace data dirs in test to simulate a disk failure. 
> ------------------------------------------------------------------
>                 Key: HDFS-7917
>                 URL: https://issues.apache.org/jira/browse/HDFS-7917
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: test
>    Affects Versions: 2.6.0
>            Reporter: Lei (Eddy) Xu
>            Assignee: Lei (Eddy) Xu
>            Priority: Minor
>             Fix For: 2.7.0
>         Attachments: HDFS-7917.000.patch, HDFS-7917.001.patch, HDFS-7917.002.patch
> Currently, in several tests, e.g., {{TestDataNodeVolumeFailureXXX}} and {{TestDataNotHowSwapVolumes}},
 we simulate a disk failure by setting a directory's executable permission as false. However,
it raises the risk that if the cleanup code could not be executed, the directory can not be
easily removed by Jenkins job. 
> Since in {{DiskChecker#checkDirAccess}}:
> {code}
> private static void checkDirAccess(File dir) throws DiskErrorException {
>     if (!dir.isDirectory()) {
>       throw new DiskErrorException("Not a directory: "
>                                    + dir.toString());
>     }
>     checkAccessByFileMethods(dir);
>   }
> {code}
> We can replace the DN data directory as a file to achieve the same fault injection goal,
while it is safer for cleaning up in any circumstance. Additionally, as [~cnauroth] suggested:

> bq. That might even let us enable some of these tests that are skipped on Windows, because
Windows allows access for the owner even after permissions have been stripped.

This message was sent by Atlassian JIRA

View raw message