HDFS-11409. DatanodeInfo getNetworkLocation and setNetworkLocation shoud use volatile instead of synchronized. Contributed by Chen Liang.
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/aaf27132 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/aaf27132 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/aaf27132 Branch: refs/heads/YARN-5734 Commit: aaf27132350547fcde1fdb372f19626838f44bc4 Parents: 0cf5993 Author: Xiaoyu Yao <[email protected]> Authored: Tue Feb 14 12:52:34 2017 -0800 Committer: Xiaoyu Yao <[email protected]> Committed: Tue Feb 14 12:52:34 2017 -0800 ---------------------------------------------------------------------- .../java/org/apache/hadoop/hdfs/protocol/DatanodeInfo.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/aaf27132/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/protocol/DatanodeInfo.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/protocol/DatanodeInfo.java b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/protocol/DatanodeInfo.java index 41735b1..acbcffa 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/protocol/DatanodeInfo.java +++ b/hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/protocol/DatanodeInfo.java @@ -51,7 +51,7 @@ public class DatanodeInfo extends DatanodeID implements Node { private long lastUpdate; private long lastUpdateMonotonic; private int xceiverCount; - private String location = NetworkTopology.DEFAULT_RACK; + private volatile String location = NetworkTopology.DEFAULT_RACK; private String softwareVersion; private List<String> dependentHostNames = new LinkedList<>(); private String upgradeDomain; @@ -293,11 +293,11 @@ public class DatanodeInfo extends DatanodeID implements Node { /** network location */ @Override - public synchronized String getNetworkLocation() {return location;} + public String getNetworkLocation() {return location;} /** Sets the network location */ @Override - public synchronized void setNetworkLocation(String location) { + public void setNetworkLocation(String location) { this.location = NodeBase.normalize(location); } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
