[
https://issues.apache.org/jira/browse/HADOOP-9761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13715898#comment-13715898
]
Andrew Wang commented on HADOOP-9761:
-------------------------------------
I think the fix is first qualifying paths before they are passed to the
underlying FileSystem. I'm a bit surprised VFS doesn't do this already, but I
guess it's worked so far since DFS (except for rename) just assumes it's the
default FS when given an unqualified path.
I think I'll qualify just for VFS#rename, but it could conceivably be done for
all VFS calls.
> ViewFileSystem#rename fails when using DistributedFileSystem
> ------------------------------------------------------------
>
> Key: HADOOP-9761
> URL: https://issues.apache.org/jira/browse/HADOOP-9761
> Project: Hadoop Common
> Issue Type: Bug
> Components: viewfs
> Affects Versions: 3.0.0, 2.1.0-beta
> Reporter: Andrew Wang
> Assignee: Andrew Wang
>
> ViewFileSystem currently passes unqualified paths (no scheme or authority) to
> underlying FileSystems when doing a rename. DistributedFileSystem symlink
> support added in HADOOP-9418 needs to qualify and check rename sources and
> destinations since cross-filesystem renames aren't supported, so this breaks
> in the following way
> - Default FS URI is configured to viewfs://<viewfs>
> - When doing a rename, ViewFileSystem checks to make sure both src and dst
> FileSystems are the same (which they are, both in same DFS), and then calls
> DistributedFileSystem#rename with unqualified "remainder" paths
> - Since these paths are unqualified, DFS qualifies them with the default FS
> to check that it can do the rename. This turns it into
> viewfs://<viewfs>/<path>
> - Since viewfs://<viewfs> is not the DFS's URI, DFS errors out the rename.
--
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