You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Junping Du (JIRA)" <ji...@apache.org> on 2012/09/16 20:40:08 UTC

[jira] [Updated] (HADOOP-8469) Make NetworkTopology class pluggable

     [ https://issues.apache.org/jira/browse/HADOOP-8469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Junping Du updated HADOOP-8469:
-------------------------------

    Target Version/s: 2.0.3-alpha
    
> Make NetworkTopology class pluggable
> ------------------------------------
>
>                 Key: HADOOP-8469
>                 URL: https://issues.apache.org/jira/browse/HADOOP-8469
>             Project: Hadoop Common
>          Issue Type: Sub-task
>    Affects Versions: 1.0.0, 2.0.0-alpha
>            Reporter: Junping Du
>            Assignee: Junping Du
>             Fix For: 3.0.0
>
>         Attachments: HADOOP-8469-NetworkTopology-pluggable.patch, HADOOP-8469-NetworkTopology-pluggable-v2.patch, HADOOP-8469-NetworkTopology-pluggable-v3.patch, HADOOP-8469-NetworkTopology-pluggable-v4.patch, HADOOP-8469-NetworkTopology-pluggable-v5.patch
>
>
> The class NetworkTopology is where the three-layer hierarchical topology is modeled in the current code base and is instantiated directly by the DatanodeManager and Balancer.
> To support alternative topologies, changes were make the topology class pluggable, that is to support using a user specified topology class specified in the Hadoop configuration file core-defaul.xml. The user specified topology class is instantiated using reflection in the same manner as other customizable classes in Hadoop. If no use specified topology class is found, the fallback is to use the NetworkTopology to preserve current behavior. To make it possible to reuse code in NetworkTopology several minor changes were made to make the class more extensible. The NetworkTopology class is currently annotated with @InterfaceAudience.LimitedPrivate({"HDFS", "MapReduce"}) and @InterfaceStability.Unstable.
> The proposed changes in NetworkTopology listed below
> 1. Some fields were changes from private to protected
> 2. Added some protected methods so that sub classes could override behavior
> 3. Added a new method,isNodeGroupAware,to NetworkTopology
> 4. The inner class InnerNode was made a package protected class to it would be easier to subclass

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