HADOOP-12653. Use SO_REUSEADDR to avoid getting "Address already in use" when using kerberos and attempting to bind to any port on the local IP address (cmccabe)
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/30c7dfd8 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/30c7dfd8 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/30c7dfd8 Branch: refs/heads/HDFS-1312 Commit: 30c7dfd8ba87fe1b455ad6c05c0a6cd6486f55b7 Parents: 25051c3 Author: Colin Patrick Mccabe <[email protected]> Authored: Tue Jan 12 10:46:22 2016 -0800 Committer: Colin Patrick Mccabe <[email protected]> Committed: Tue Jan 12 10:46:22 2016 -0800 ---------------------------------------------------------------------- hadoop-common-project/hadoop-common/CHANGES.txt | 4 ++++ .../src/main/java/org/apache/hadoop/ipc/Client.java | 1 + 2 files changed, 5 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/30c7dfd8/hadoop-common-project/hadoop-common/CHANGES.txt ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt index 6357a09..2cb86f6 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -659,6 +659,10 @@ Release 2.9.0 - UNRELEASED HADOOP-12663. Remove Hard-Coded Values From FileSystem.java. (BELUGA BEHR via stevel) + HADOOP-12653. Use SO_REUSEADDR to avoid getting "Address already in use" + when using kerberos and attempting to bind to any port on the local IP + address (cmccabe) + BUG FIXES HADOOP-12655. TestHttpServer.testBindAddress bind port range is wider http://git-wip-us.apache.org/repos/asf/hadoop/blob/30c7dfd8/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java index 22326f2..8d87957 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java @@ -625,6 +625,7 @@ public class Client { // If host name is a valid local address then bind socket to it InetAddress localAddr = NetUtils.getLocalInetAddress(host); if (localAddr != null) { + this.socket.setReuseAddress(true); this.socket.bind(new InetSocketAddress(localAddr, 0)); } }
