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

Hudson commented on HDFS-7917:
------------------------------

FAILURE: Integrated in Hadoop-Hdfs-trunk #2074 (See 
[https://builds.apache.org/job/Hadoop-Hdfs-trunk/2074/])
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/TestDataNodeVolumeFailure.java
* 
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/TestDataNodeVolumeFailureToleration.java
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* 
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/DataNodeTestUtils.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
(v6.3.4#6332)

Reply via email to