[
https://issues.apache.org/jira/browse/HADOOP-15486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Arpit Agarwal updated HADOOP-15486:
-----------------------------------
Resolution: Fixed
Hadoop Flags: Reviewed
Fix Version/s: 2.8.5
2.7.7
2.9.2
3.1.1
3.2.0
2.10.0
Status: Resolved (was: Patch Available)
Committed through 3.2.0 to 2.7.7. Thanks for the contribution [~nandakumar131],
thanks for the suggestion [~daryn].
> 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
> Fix For: 2.10.0, 3.2.0, 3.1.1, 2.9.2, 2.7.7, 2.8.5
>
> 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 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: [email protected]
For additional commands, e-mail: [email protected]