hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Colin Patrick McCabe (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-5482) DistributedFileSystem#listPathBasedCacheDirectives must support relative paths
Date Fri, 08 Nov 2013 21:31:19 GMT

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

Colin Patrick McCabe commented on HDFS-5482:
--------------------------------------------

Yeah, you're absolutely right.  It looks like we already try to do that in {{DistributedFileSystem#listDirectives}}
by calling {{makeQualified}}, but there is an error in the parameters given to that function
which is preventing it from working as expected.  (It should be passing the working directory.)
 We should probably just change it to use {{makeQualified}} for consistency with the other
functions in {{DistributedFileSystem.java}}.  And you're right, this was a regression introduced
by 5326.  It will be good to have a unit test for this.

> DistributedFileSystem#listPathBasedCacheDirectives must support relative paths
> ------------------------------------------------------------------------------
>
>                 Key: HDFS-5482
>                 URL: https://issues.apache.org/jira/browse/HDFS-5482
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: tools
>    Affects Versions: 3.0.0
>            Reporter: Stephen Chu
>            Assignee: Colin Patrick McCabe
>         Attachments: HDFS-5482.001.patch
>
>
> CacheAdmin -addDirective allows using a relative path.
> However, -removeDirectives will error complaining with "java.net.URISyntaxException:
Relative path in absolute URI"
> {code}
> [schu@hdfs-c5-nfs ~]$ hdfs cacheadmin -addDirective -path foo -pool schu
> Added PathBasedCache entry 3
> [schu@hdfs-c5-nfs ~]$ hdfs cacheadmin -listDirectives
> Found 1 entry
> ID  POOL  PATH           
> 3   schu  /user/schu/foo 
> [schu@hdfs-c5-nfs ~]$ hdfs cacheadmin -removeDirectives -path foo
> Exception in thread "main" java.lang.IllegalArgumentException: java.net.URISyntaxException:
Relative path in absolute URI: hdfs://hdfs-c5-nfs.ent.cloudera.com:8020foo/foo
> 	at org.apache.hadoop.fs.Path.makeQualified(Path.java:470)
> 	at org.apache.hadoop.hdfs.DistributedFileSystem.listPathBasedCacheDirectives(DistributedFileSystem.java:1639)
> 	at org.apache.hadoop.hdfs.tools.CacheAdmin$RemovePathBasedCacheDirectivesCommand.run(CacheAdmin.java:287)
> 	at org.apache.hadoop.hdfs.tools.CacheAdmin.run(CacheAdmin.java:82)
> 	at org.apache.hadoop.hdfs.tools.CacheAdmin.main(CacheAdmin.java:87)
> Caused by: java.net.URISyntaxException: Relative path in absolute URI: hdfs://hdfs-c5-nfs.ent.cloudera.com:8020foo/foo
> 	at java.net.URI.checkPath(URI.java:1788)
> 	at java.net.URI.<init>(URI.java:734)
> 	at org.apache.hadoop.fs.Path.makeQualified(Path.java:467)
> 	... 4 more
> [schu@hdfs-c5-nfs ~]$ 
> {code}



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message