[ https://issues.apache.org/jira/browse/HDFS-5513?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13827182#comment-13827182 ]
Hudson commented on HDFS-5513: ------------------------------ SUCCESS: Integrated in Hadoop-trunk-Commit #4763 (See [https://builds.apache.org/job/Hadoop-trunk-Commit/4763/]) HDFS-5513. CacheAdmin commands fail when using . as the path. Contributed by Andrew Wang. (wang: http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1543670) * /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt * /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocol/PathBasedCacheDirective.java * /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestPathBasedCacheRequests.java > CacheAdmin commands fail when using . as the path > ------------------------------------------------- > > Key: HDFS-5513 > URL: https://issues.apache.org/jira/browse/HDFS-5513 > Project: Hadoop HDFS > Issue Type: Bug > Components: caching, tools > Affects Versions: 3.0.0 > Reporter: Stephen Chu > Assignee: Andrew Wang > Priority: Minor > Fix For: 3.0.0 > > Attachments: hdfs-5513-1.patch, hdfs-5513-2.patch, hdfs-5513-3.patch > > > The hdfs CLI commands generally accept "." as a path argument. > e.g. > {code} > hdfs dfs -rm . > hdfs dfsadmin -allowSnapshot . > {code} > I don't think it's very common to use the path "." but the CacheAdmin > commands will fail saying that it cannot create a Path from an empty string. > {code} > [schu@hdfs-c5-nfs ~]$ hdfs cacheadmin -removeDirectives -path . > Exception in thread "main" java.lang.IllegalArgumentException: Can not create > a Path from an empty string > at org.apache.hadoop.fs.Path.checkPathArg(Path.java:127) > at org.apache.hadoop.fs.Path.<init>(Path.java:184) > at > org.apache.hadoop.hdfs.protocol.PathBasedCacheDirective$Builder.<init>(PathBasedCacheDirective.java:66) > at > org.apache.hadoop.hdfs.DistributedFileSystem.listPathBasedCacheDirectives(DistributedFileSystem.java:1639) > at > org.apache.hadoop.hdfs.tools.CacheAdmin$RemovePathBasedCacheDirectivesCommand.run(CacheAdmin.java:365) > at org.apache.hadoop.hdfs.tools.CacheAdmin.run(CacheAdmin.java:82) > at org.apache.hadoop.hdfs.tools.CacheAdmin.main(CacheAdmin.java:87) > [schu@hdfs-c5-nfs ~]$ hdfs cacheadmin -addDirective -path . -pool schu > Exception in thread "main" java.lang.IllegalArgumentException: Can not create > a Path from an empty string > at org.apache.hadoop.fs.Path.checkPathArg(Path.java:127) > at org.apache.hadoop.fs.Path.<init>(Path.java:184) > at > org.apache.hadoop.hdfs.protocol.PathBasedCacheDirective$Builder.<init>(PathBasedCacheDirective.java:66) > at > org.apache.hadoop.hdfs.DistributedFileSystem.addPathBasedCacheDirective(DistributedFileSystem.java:1598) > at > org.apache.hadoop.hdfs.tools.CacheAdmin$AddPathBasedCacheDirectiveCommand.run(CacheAdmin.java:180) > at org.apache.hadoop.hdfs.tools.CacheAdmin.run(CacheAdmin.java:82) > at org.apache.hadoop.hdfs.tools.CacheAdmin.main(CacheAdmin.java:87) > {code} -- This message was sent by Atlassian JIRA (v6.1#6144)