ZanderXu created HADOOP-18236: --------------------------------- Summary: Remove duplicate locks in NetworkTopology Key: HADOOP-18236 URL: https://issues.apache.org/jira/browse/HADOOP-18236 Project: Hadoop Common Issue Type: Improvement Reporter: ZanderXu Assignee: ZanderXu
During reading the hadoop NetworkTopology.java, I suspect there is a duplicate lock. chooseRandom(line 532), and code is: {code:java} final int availableNodes; if (excludedScope == null) { availableNodes = countNumOfAvailableNodes(scope, excludedNodes); } else { netlock.readLock().lock(); try { availableNodes = countNumOfAvailableNodes(scope, excludedNodes) - countNumOfAvailableNodes(excludedScope, excludedNodes); } finally { netlock.readLock().unlock(); } } {code} All the places where called `chooseRandom` have the global read lock, so the internal read lock is duplicated. -- This message was sent by Atlassian Jira (v8.20.7#820007) --------------------------------------------------------------------- To unsubscribe, e-mail: common-dev-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-dev-h...@hadoop.apache.org