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

Alejandro Abdelnur commented on HDFS-2316:
------------------------------------------

Nicholas,

Thanks for updating the spec. Getting there. A few follow up 
comments/open-issues:

*1. Case insensitivity of the param names/values.*

Current opinions favor case sensitivity in the spec (IMO the implementation 
could be case insensitive, but the spec should be case sensitive. The 
client/server components should produce as per spec, they could be lax to 
understand. In other words Postel Law).

*2. Inconsistency on the JSON responses names:*

* MAKEDIRS/RENAME/DELETE/SETREPLICATION returns: { "boolean" : <BOOLEAN> }
* GETHOMEDIRECTORY returns: { "path" : "<PATH>" }
* GETDELEGATIONTOKEN returns: { "urlString" : "<DT>" }
* RENEWDELEGATIONTOKEN returns: { "long" : <LONG> }
* GETFILESTATUS returns: { "fileStatus" : .... }
* LISTSTATUS returns: { "fileStatuses" : .... }

Sometimes are basic types, sometimes are structure names, sometimes are 
functional names ('urlString'). 

Because structure names give a sense of functional names, i'd suggest we use 
functional names for everything. Then it would be:

* MAKEDIRS/RENAME/DELETE/SETREPLICATION returns: { "mkdirs/rename/.." : 
<BOOLEAN> }
* GETHOMEDIRECTORY returns: { "homeDir" : "<PATH>" }
* GETDELEGATIONTOKEN returns: { "delegationToken" : "<DT>" }
* RENEWDELEGATIONTOKEN returns: { "delegationTokenRenewal" : <LONG> }
* GETFILESTATUS returns: { "fileStatus" : .... }
* LISTSTATUS returns: { "fileStatuses" : .... }

*3. FileStatus does not have symlinkPath for symlinks.*

symlinkPath should be an optional value (and the same for pathSuffix when the 
status is for a symlink)

*4. FileStatus permission is a String but the permission parameter is a short*

Both should be short (octal).

*5. The encoding of the delegation token, both as parameter and as response is 
not defined.*

The encoding should be the same in both cases (I assume, from the code, you are 
using HEXA. If so, wouldn't BASE64 be a more common encoding to use?)

*6. The final doc that gets checked in should no include authors, same as we 
don't use @author tag in the code.*
                
> webhdfs: a complete FileSystem implementation for accessing HDFS over HTTP
> --------------------------------------------------------------------------
>
>                 Key: HDFS-2316
>                 URL: https://issues.apache.org/jira/browse/HDFS-2316
>             Project: Hadoop HDFS
>          Issue Type: New Feature
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: Tsz Wo (Nicholas), SZE
>         Attachments: WebHdfsAPI20111020.pdf, WebHdfsAPI20111103.pdf, 
> WebHdfsAPI20111111.pdf, test-webhdfs, test-webhdfs-0.20s
>
>
> We current have hftp for accessing HDFS over HTTP.  However, hftp is a 
> read-only FileSystem and does not provide "write" accesses.
> In HDFS-2284, we propose to have webhdfs for providing a complete FileSystem 
> implementation for accessing HDFS over HTTP.  The is the umbrella JIRA for 
> the tasks.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to