hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Owen O'Malley (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HADOOP-4044) Create symbolic links in HDFS
Date Thu, 09 Oct 2008 23:02:44 GMT

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

Owen O'Malley commented on HADOOP-4044:
---------------------------------------

Getting back to the nuts and bolts of this patch, I don't really like the structure of this
implementation. I think the LinkResolvers and the myriad anonymous classes that extend it
are very hard to read. I'd much rather have something like:

{code}
abstract class LinkResult<T> {
  boolean isLink();
  T getResult();
  FileSystem getFileSystem() throws IOException;
  /** Throws an exception if too deep. */
  Path getNewPath() throws IOException;
}

class DistributedFileSystem extends FileSystem {
  ...
  public FSDataInputStream open(Path p, int buffer) throws IOException {
     LinkResult<FSDataInputStream> result = dfs.open(p, buffer, verifyChecksum, statistics);
     if (result.isLink()) {
       return result.getFileSystem().open(result.getPath(), buffer);
     } else {
       return result.getResult();
     }
  }
}
{code}

It is *much* easier to follow and understand and forces no changes on FileSystems that don't
support links.


> Create symbolic links in HDFS
> -----------------------------
>
>                 Key: HADOOP-4044
>                 URL: https://issues.apache.org/jira/browse/HADOOP-4044
>             Project: Hadoop Core
>          Issue Type: New Feature
>          Components: dfs
>            Reporter: dhruba borthakur
>            Assignee: dhruba borthakur
>         Attachments: symLink1.patch, symLink1.patch, symLink4.patch, symLink5.patch,
symLink6.patch, symLink8.patch, symLink9.patch
>
>
> HDFS should support symbolic links. A symbolic link is a special type of file that contains
a reference to another file or directory in the form of an absolute or relative path and that
affects pathname resolution. Programs which read or write to files named by a symbolic link
will behave as if operating directly on the target file. However, archiving utilities can
handle symbolic links specially and manipulate them directly.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message