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 "Jerry He (JIRA)" <ji...@apache.org> on 2013/06/28 23:51:22 UTC

[jira] [Created] (HDFS-4943) WebHdfsFileSystem does not work when original file path has encoded chars

Jerry He created HDFS-4943:
------------------------------

             Summary: WebHdfsFileSystem does not work when original file path has encoded chars 
                 Key: HDFS-4943
                 URL: https://issues.apache.org/jira/browse/HDFS-4943
             Project: Hadoop HDFS
          Issue Type: Bug
          Components: webhdfs
    Affects Versions: 2.0.4-alpha, 1.1.2, 1.2.0
            Reporter: Jerry He
            Priority: Minor
             Fix For: 2.1.0-beta


In HBase, the WAL (hlog) file name on hdfs is URL encoded. For example, 

hdtest010%2C60020%2C1371000602151.1371058984668

When we use webhdfs client to access the hlog file via httpfs, it does not work in this case.

$ hadoop fs -ls hdfs:///user/biadmin/hbase_hlogs                                                   
Found 1 items
-rw-r--r--   3 biadmin supergroup   15049470 2013-06-12 10:45 /user/biadmin/hbase_hlogs/hdtest010%2C60020%2C1371000602151.1371058984668

$ hadoop fs -ls hdfs:///user/biadmin/hbase_hlogs/hdtest010%2C60020%2C1371000602151.1371058984668
Found 1 items
-rw-r--r--   3 biadmin supergroup   15049470 2013-06-12 10:45 /user/biadmin/hbase_hlogs/hdtest010%2C60020%2C1371000602151.1371058984668

$ hadoop fs -ls webhdfs://hdtest010:14000/user/biadmin/hbase_hlogs
Found 1 items
-rw-r--r--   3 biadmin supergroup   15049470 2013-06-12 10:45 /user/biadmin/hbase_hlogs/hdtest010%2C60020%2C1371000602151.1371058984668
$
$ hadoop fs -ls webhdfs://hdtest010:14000/user/biadmin/hbase_hlogs/hdtest010%2C60020%2C1371000602151.1371058984668
13/06/27 18:36:08 DEBUG web.WebHdfsFileSystem: Original exception is
org.apache.hadoop.ipc.RemoteException:java.io.FileNotFoundException:File does not exist: /user/biadmin/hbase_hlogs/hdtest010,60020,1371000602151.1371058984668
        at org.apache.hadoop.hdfs.web.JsonUtil.toRemoteException(JsonUtil.java:114)
        at org.apache.hadoop.hdfs.web.WebHdfsFileSystem.validateResponse(WebHdfsFileSystem.java:299)
        at org.apache.hadoop.hdfs.web.WebHdfsFileSystem.access$500(WebHdfsFileSystem.java:104)
        at org.apache.hadoop.hdfs.web.WebHdfsFileSystem$Runner.getResponse(WebHdfsFileSystem.java:641)
        at org.apache.hadoop.hdfs.web.WebHdfsFileSystem$Runner.run(WebHdfsFileSystem.java:538)
        at org.apache.hadoop.hdfs.web.WebHdfsFileSystem.run(WebHdfsFileSystem.java:468)
        at org.apache.hadoop.hdfs.web.WebHdfsFileSystem.getHdfsFileStatus(WebHdfsFileSystem.java:662)
        at org.apache.hadoop.hdfs.web.WebHdfsFileSystem.getFileStatus(WebHdfsFileSystem.java:673)
        at org.apache.hadoop.fs.FileSystem.getFileStatus(FileSystem.java:1365)
        at org.apache.hadoop.fs.FileSystem.globStatusInternal(FileSystem.java:1048)
        at org.apache.hadoop.fs.FileSystem.globStatus(FileSystem.java:987)
        at org.apache.hadoop.fs.FileSystem.globStatus(FileSystem.java:965)
        at org.apache.hadoop.fs.FsShell.ls(FsShell.java:573)
        at org.apache.hadoop.fs.FsShell.doall(FsShell.java:1571)
        at org.apache.hadoop.fs.FsShell.run(FsShell.java:1789)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
        at org.apache.hadoop.fs.FsShell.main(FsShell.java:1895)
ls: Cannot access webhdfs://hdtest010:14000/user/biadmin/hbase_hlogs/hdtest010%2C60020%2C1371000602151.1371058984668: No such file or directory.


--
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