[
https://issues.apache.org/jira/browse/HDFS-10243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15226012#comment-15226012
]
shenxianqiang commented on HDFS-10243:
--------------------------------------
{quote}
Yes, admin should ensure that script updated before datanode started.
This case is there for all implementations which uses cache. Not only
TableMapping.
{quote}
Which java file does your patch apply to?
I think if added a regularly reload thread to solve the admin`s sequence of
operations?
> 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.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)