You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Nanda kumar (JIRA)" <ji...@apache.org> on 2018/05/21 19:29:00 UTC

[jira] [Created] (HADOOP-15486) Make NetworkTopology#netLock fair

Nanda kumar created HADOOP-15486:
------------------------------------

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


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 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-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-dev-help@hadoop.apache.org