hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Konstantin Shvachko (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HADOOP-5015) Seprate block/replica management code from FSNamesystem
Date Sat, 02 May 2009 01:43:40 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-5015?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12705205#action_12705205
] 

Konstantin Shvachko commented on HADOOP-5015:
---------------------------------------------

This is a nice refactoring. A few comments:
# FSDirectory should have a method {{getBlockManager()}}. This will let you avoid unnecessary
transient methods in {{FSNamesystem}} that only exist to call the respective {{BlockManager}}
methods.
# {{BlocksWithLocations getBlocks()}} should remain in {{FSNamesystem}}. I think {{BlockManager}}
should not be exposed to external types like {{BlocksWithLocations}}. Besides {{getBlocks()}}
does not work with any intrinsic fields of {{BlockManager}}.
# It seems to me that {{ReplicationTargetChooser replicator}} should be also moved into {{BlockManager}}.
# I am not sure about the following fields, which may be related to block management as well,
but the patch left them inside {{FSNamesystem}}:
#- {{generationStamp}} seem to be related
#- {{blockInvalidateLimit}} looks like unrelated, we may later want to rename it to {{datanodeInvalidateLimit}}.
#- {{ReplicationMonitor}} along with {{replicationRecheckInterval}} - probably related.

> Seprate block/replica management code from FSNamesystem
> -------------------------------------------------------
>
>                 Key: HADOOP-5015
>                 URL: https://issues.apache.org/jira/browse/HADOOP-5015
>             Project: Hadoop Core
>          Issue Type: Improvement
>          Components: dfs
>            Reporter: Hairong Kuang
>            Assignee: Suresh Srinivas
>             Fix For: 0.21.0
>
>         Attachments: blkmanager.patch
>
>
> Currently FSNamesystem contains a big amount of code that manages blocks and replicas.
The code scatters in FSNamesystem and it is hard to read and maintain. It would be nice to
move the code to a separate class called, for example, BlockManager. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message