[ https://issues.apache.org/jira/browse/HADOOP-15486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16484408#comment-16484408 ]
Nanda kumar commented on HADOOP-15486: -------------------------------------- Agreed, updates to NetworkTopology should be rare. Patch v001 makes the lock always fair. > Add a config option to make NetworkTopology#netLock fair > -------------------------------------------------------- > > Key: HADOOP-15486 > URL: https://issues.apache.org/jira/browse/HADOOP-15486 > Project: Hadoop Common > Issue Type: Improvement > Components: net > Reporter: Nanda kumar > Assignee: Nanda kumar > Priority: Major > Attachments: HADOOP-15486.000.patch, HADOOP-15486.001.patch > > > Whenever a datanode is restarted, the registration call after the restart > received by NameNode lands in {{NetworkTopology#add}} via > {{DatanodeManager#registerDatanode}} requires write lock on > {{NetworkTopology#netLock}}. This registration thread is getting starved by > flood of {{FSNamesystem.getAdditionalDatanode}} calls, which are triggered by > clients those who were writing to the restarted datanode. > The registration call which is waiting for write lock on > {{NetworkTopology#netLock}} is holding write lock on {{FSNamesystem#fsLock}}, > causing all the other RPC calls which require the lock on > {{FSNamesystem#fsLock}} wait. > We can introduce a config property to make {{NetworkTopology#netLock}} lock > fair so that the registration thread will not starve. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org