diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt index 636a10a3ad..60f94456e9 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -452,6 +452,8 @@ Release 2.2.1 - UNRELEASED HADOOP-10072. TestNfsExports#testMultiMatchers fails due to non-deterministic timing around cache expiry check. (cnauroth) + HADOOP-9898. Set SO_KEEPALIVE on all our sockets. (todd via wang) + Release 2.2.0 - 2013-10-13 INCOMPATIBLE CHANGES 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 8caa7b288b..b444a115cb 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 @@ -575,6 +575,7 @@ private synchronized void setupConnection() throws IOException { try { this.socket = socketFactory.createSocket(); this.socket.setTcpNoDelay(tcpNoDelay); + this.socket.setKeepAlive(true); /* * Bind the socket to the host specified in the principal name of the diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java index ec5fff7499..89f9501d98 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java @@ -762,6 +762,7 @@ void doAccept(SelectionKey key) throws IOException, OutOfMemoryError { channel.configureBlocking(false); channel.socket().setTcpNoDelay(tcpNoDelay); + channel.socket().setKeepAlive(true); Reader reader = getReader(); try {