You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Eli Collins (JIRA)" <ji...@apache.org> on 2010/11/14 08:36:16 UTC
[jira] Resolved: (HDFS-836) Make dot a valid HDFS path?
[ https://issues.apache.org/jira/browse/HDFS-836?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Eli Collins resolved HDFS-836.
------------------------------
Resolution: Later
I think we can punt this until it's requested.
> Make dot a valid HDFS path?
> ---------------------------
>
> Key: HDFS-836
> URL: https://issues.apache.org/jira/browse/HDFS-836
> Project: Hadoop HDFS
> Issue Type: New Feature
> Reporter: Eli Collins
> Attachments: hdfs-836-1.patch
>
>
> What do people think of making "." a valid path in HDFS? The motivation is to allow users to create symlinks to the current directory in HDFS-245, eg see the following test for the current behavior:
> {code}
> @Test
> /** Test create symlink to . */
> public void testCreateLinkToDot() throws IOException {
> Path dir = new Path("/test");
> Path link = new Path("/test/linkToDot");
> fc.mkdir(dir, FileContext.DEFAULT_PERM, true);
> fc.setWorkingDirectory(dir);
> try {
> fc.createSymlink(new Path("."), link);
> fail("Created symlink to dot");
> readFile(new Path("/test/linkToDot/file"));
> } catch (IOException x) {
> // Expected. Path(".") resolves to "" because URI normalizes
> // the dot away and AbstractFileSystem considers "" invalid.
> }
> fc.delete(dir, true);
> }
> {code}
> This involves trade offs since Hadoop Paths represent URIs (rather than the path component of a URI) and in URIs dot normalizes away. Some options:
> # Make symlinks to "." an exception per the above, though it seems odd to consider ".", "..", "/" etc invalid paths (and the latter two happen to work based on how the Path constructor initializes the URI even though isValidName in AbstractFileSystem would consider them invalid names.
> # Making "." immediately parse to an absolute path would be poor symlink semantics (eg a link to "." should not break if you rename the link's parent directory).
> # Making Path special case this so "." doesn't normalize away would be a weird one off case where Path and URIs differ.
> Other alternatives? Of the above I'd prefer the last one.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.