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

Colin Patrick McCabe commented on HADOOP-9817:
----------------------------------------------

I agree, Kousuke: we don't want to eliminate the resolve the symlink when it is 
on the end of the path.  Since this is used in the shell, I think we also want 
to preserve symlinks that are interior to the path.  For example when doing 
{{hadoop fs -ls /a/b}}, it would be nice to get back an entry like {{/a/b}}, 
even when {{/a}} or {{/a/b}} are symlinks.

This patch implements that.  I also unified the {{globStatus}} implementations, 
which were formerly separate between {{FileContext}} and {{FileSystem}}
                
> FileSystem#globStatus and FileContext#globStatus need to work with symlinks
> ---------------------------------------------------------------------------
>
>                 Key: HADOOP-9817
>                 URL: https://issues.apache.org/jira/browse/HADOOP-9817
>             Project: Hadoop Common
>          Issue Type: Bug
>    Affects Versions: 2.3.0
>            Reporter: Colin Patrick McCabe
>            Assignee: Colin Patrick McCabe
>         Attachments: HADOOP-9817.004.patch
>
>
> FileSystem#globStatus and FileContext#globStatus need to work with symlinks.  
> Currently, they resolve all links, so that if you have:
> {code}
> /alpha/beta
> /alphaLink -> alpha
> {code}
> and you take {{globStatus(/alphaLink/*)}}, you will get {{/alpha/beta}}, 
> rather than the expected {{/alphaLink/beta}}.
> We even resolve terminal symlinks, which would prevent listing a symlink in 
> FSShell, for example.  Instead, we should build up the path incrementally.  
> This will allow the shell to behave as expected, and also allow custom 
> globbers to "see" the correct paths for symlinks.

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