Weihao Zheng created HADOOP-17907:
-------------------------------------
Summary: FileUtil#fullyDelete deletes contents of sym-linked
directory when symlink cannot be deleted because of local fs fault
Key: HADOOP-17907
URL: https://issues.apache.org/jira/browse/HADOOP-17907
Project: Hadoop Common
Issue Type: Bug
Components: fs
Reporter: Weihao Zheng
As discussed in HADOOP-6536, FileUtil#fullyDelete should not delete the
contents of the sym-linked directory when we pass a symlink parameter.
Currently we try to delete the resource first by calling deleteImpl, and if
deleteImpl is failed, we regard it as non-empty directory and remove all its
contents and then itself. This logic behaves wrong when local file system
cannot delete symlink to a directory because of faulty disk, local system's
error, etc. When we cannot delete it in the first time, hadoop will try to
remove all the contents of the directory it pointed to and leave an empty dir.
So, we should add an isSymlink checking before we call fullyDeleteContents to
prevent such behavior.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]