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-4209) Clean up FSDirectory and INode
Date Mon, 19 Nov 2012 18:49:58 GMT

    [ 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

Mime
View raw message