[ 
https://issues.apache.org/jira/browse/HDFS-4771?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Brandon Li updated HDFS-4771:
-----------------------------

    Description: 
Currently HDFS always resolves symlink when setting certain file attributes, 
such as setPermission and setTime. And thus the client can't set some file 
attributes of the symlink itself.

Two major problems with current symlink support:
 1. HDFS assumes the link is inside its own namespace. This is a problem when 
HDFS is integrated into client's file system namespace.
2. Suppose the linked target is inside HFDS, HDFS doesn't really check whether 
the target saved in the link file is a valid path. Even the target was valid, 
it could become invalid as the namespace changes.

For example, create a symlink /user/brandon/iamlink.lnk and it has the 
content(target) as "/invalid/path". The file /user/brandon/iamlink.lnk can't be 
deleted since HDFS can't resolve it.



  was:
Currently HDFS always resolves symlink when setting certain file attributes, 
such as setPermission and setTime. And thus the client can't set some file 
attributes of the symlink itself.



    
> Remove the assumption that symlink is inside HDFS namespace and resolvable
> --------------------------------------------------------------------------
>
>                 Key: HDFS-4771
>                 URL: https://issues.apache.org/jira/browse/HDFS-4771
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: namenode
>    Affects Versions: 3.0.0
>            Reporter: Brandon Li
>
> Currently HDFS always resolves symlink when setting certain file attributes, 
> such as setPermission and setTime. And thus the client can't set some file 
> attributes of the symlink itself.
> Two major problems with current symlink support:
>  1. HDFS assumes the link is inside its own namespace. This is a problem when 
> HDFS is integrated into client's file system namespace.
> 2. Suppose the linked target is inside HFDS, HDFS doesn't really check 
> whether the target saved in the link file is a valid path. Even the target 
> was valid, it could become invalid as the namespace changes.
> For example, create a symlink /user/brandon/iamlink.lnk and it has the 
> content(target) as "/invalid/path". The file /user/brandon/iamlink.lnk can't 
> be deleted since HDFS can't resolve it.

--
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

Reply via email to