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

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

This looks good.  I especially like how you replaced a lot of places where we 
were checking for {{!symlink && !directory}} with checking for {{file}} 
directly.

{code}
  void addToParentForImage(INodeDirectory parent, INode newNode)
{code}

Does it make sense to call this {{addToParentUnlocked}}, or something like 
that?  I mean every directory we add is "for the image" since that's where 
directories live.  But most functions take the writeLock, and this one doesn't.

{code}
-  void setQuota(String src, long nsQuota, long dsQuota) 
-    throws FileNotFoundException, QuotaExceededException,
-    UnresolvedLinkException { 
+  void setQuota(String src, long nsQuota, long dsQuota) throws IOException  { 
{code}

It seems like the new throw specification provides less information to the 
caller than the old one.  Considering that people often rely on throw specs as 
a kind of documentation about how the function can fail, are we sure we want to 
remove this?
                
> Clean up FSDirectory and INode
> ------------------------------
>
>                 Key: HDFS-4209
>                 URL: https://issues.apache.org/jira/browse/HDFS-4209
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: name-node
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: Tsz Wo (Nicholas), SZE
>            Priority: Minor
>         Attachments: h4209_20121118b.patch, h4209_20121118.patch
>
>
> - FSDirectory.addToParent(..) is only used by image loading so that 
> synchronization, modification time update and space count update are not 
> needed.
> - There are multiple places checking whether an inode is file by checking 
> !isDirectory() && !isSymlink().  Let's add isFile() to INode.
> - In the addNode/addChild/addChildNoQuotaCheck methods, returning the same 
> INode back is not useful.  It is better to simply return a boolean to 
> indicate whether the inode is added.  Also, the value of childDiskspace 
> parameter is always UNKNOWN_DISK_SPACE.

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

Reply via email to