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

shenxianqiang updated HDFS-10243:
---------------------------------
    Attachment: HDFS-10243-1.patch

> When using the TableMapping network topology, adding new datanoe need to 
> restart the namenode
> ---------------------------------------------------------------------------------------------
>
>                 Key: HDFS-10243
>                 URL: https://issues.apache.org/jira/browse/HDFS-10243
>             Project: Hadoop HDFS
>          Issue Type: Bug
>         Environment: 2.6.0
>            Reporter: shenxianqiang
>            Priority: Minor
>         Attachments: HDFS-10243-1.patch, HDFS-10243.patch
>
>
> When I use the TableMapping network topology, adding new machines need to 
> restart the namenode. Configure :
> {quote}
>      <property>
>       <name>net.topology.node.switch.mapping.impl</name>
>       <value>org.apache.hadoop.net.TableMapping</value>
>     </property>
>      <property>
>       <name>net.topology.table.file.name</name>
>       <value>/etc/hadoop/conf/net_topology_table</value>
>     </property>
> {quote}
> In /etc/hadoop/conf/net_topology_table:
> {quote}
>   10.0.0.1 /SJS/SJS-1
>   10.0.0.2 /CTC/CTC-2
>   10.0.0.3 /TC/TC-3
> {quote}
> When I add a new datanode like 10.0.0.4 /SJS/SJS-2,datanode throw exception:
> {quote}
> 2016-03-30 17:11:15,608 ERROR 
> org.apache.hadoop.hdfs.server.datanode.DataNode: Initialization failed for 
> Block pool BP-408802935-10.0.0.100-1402130194887 (Datanode Uuid null) service 
> to nn1/10.0.0.100:8020 Failed to add /default-rack/10.0.0.4:50010: You cannot 
> have a rack and a non-rack node at the same level of the network topology.
>         at org.apache.hadoop.net.NetworkTopology.add(NetworkTopology.java:408)
>         at 
> org.apache.hadoop.hdfs.server.blockmanagement.DatanodeManager.registerDatanode(DatanodeManager.java:1001)
>         at 
> org.apache.hadoop.hdfs.server.namenode.FSNamesystem.registerDatanode(FSNamesystem.java:4837)
>         at 
> org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.registerDatanode(NameNodeRpcServer.java:1038)
>         at 
> org.apache.hadoop.hdfs.protocolPB.DatanodeProtocolServerSideTranslatorPB.registerDatanode(DatanodeProtocolServerSideTranslatorPB.java:92)
>         at 
> org.apache.hadoop.hdfs.protocol.proto.DatanodeProtocolProtos$DatanodeProtocolService$2.callBlockingMethod(DatanodeProtocolProtos.java:26378)
>         at 
> org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:587)
>         at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:1026)
>         at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2013)
>         at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2009)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at javax.security.auth.Subject.doAs(Subject.java:415)
>         at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1892)
>         at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2007)
> {quote}
> I need to update /etc/hadoop/conf/net_topology_table,and restart 
> namenode.After that,the new datanode should work.
> Restart Namenode may cause a bad influence.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to