Andrew Wang created HDFS-4765: --------------------------------- Summary: Permission check of symlink deletion incorrectly throws UnresolvedLinkException Key: HDFS-4765 URL: https://issues.apache.org/jira/browse/HDFS-4765 Project: Hadoop HDFS Issue Type: Bug Components: namenode Affects Versions: 2.0.3-alpha, 3.0.0 Reporter: Andrew Wang Assignee: Andrew Wang
With permissions enabled, the permission check in {{FSNamesystem#delete}} will incorrectly throw an UnresolvedLinkException if the path contains a symlink. This leads to FileContext resolving the symlink and instead deleting the link target. The correct check is to see if the user has write permissions on the parent directory of the symlink, e.g. {noformat} -> % ls -ld symtest drwxr-xr-x 2 root root 4096 Apr 26 14:12 symtest -> % ls -l symtest total 12 lrwxrwxrwx 1 root root 6 Apr 26 14:12 link -> target -rw-r--r-- 1 root root 0 Apr 26 14:11 target -> % rm -f symtest/link rm: cannot remove `symtest/link': Permission denied -> % sudo chown andrew symtest -> % rm -f symtest/link -> % {noformat} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira