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 "Daryn Sharp (JIRA)" <ji...@apache.org> on 2018/05/22 14:30:00 UTC
[jira] [Commented] (HADOOP-15486) Add a config option to make
NetworkTopology#netLock fair
[ https://issues.apache.org/jira/browse/HADOOP-15486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16484047#comment-16484047 ]
Daryn Sharp commented on HADOOP-15486:
--------------------------------------
There's no need for a config. Just make the lock always be fair. Updates to the topology should be rare compared to block placements so the throughput degradation of the fair lock will be minimal.
> 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
>
>
> 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-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org