[ https://issues.apache.org/jira/browse/HDFS-4765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13690657#comment-13690657 ]
Daryn Sharp commented on HDFS-4765: ----------------------------------- +1 to 23 patch. looks like a straightforward back-port. > 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: 3.0.0, 2.0.3-alpha > Reporter: Andrew Wang > Assignee: Andrew Wang > Fix For: 2.1.0-beta > > Attachments: hdfs-4765-1.patch, hdfs-4765-2.patch, > hdfs-4765-branch-0.23.patch, hdfs-4765-branch-2-1.patch > > > 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