You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by he...@apache.org on 2020/06/23 09:01:19 UTC
[hadoop] branch trunk updated: HADOOP-17068. Client fails forever
when namenode ipaddr changed. Contributed by Sean Chow.
This is an automated email from the ASF dual-hosted git repository.
hexiaoqiao pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/trunk by this push:
new fa14e4b HADOOP-17068. Client fails forever when namenode ipaddr changed. Contributed by Sean Chow.
fa14e4b is described below
commit fa14e4bc001e28d9912e8d985d09bab75aedb87c
Author: He Xiaoqiao <he...@apache.org>
AuthorDate: Tue Jun 23 16:13:43 2020 +0800
HADOOP-17068. Client fails forever when namenode ipaddr changed. Contributed by Sean Chow.
---
.../src/main/java/org/apache/hadoop/ipc/Client.java | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
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 688eed6..6240f85 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
@@ -649,6 +649,7 @@ public class Client implements AutoCloseable {
private synchronized void setupConnection(
UserGroupInformation ticket) throws IOException {
+ LOG.debug("Setup connection to " + server.toString());
short ioFailures = 0;
short timeoutFailures = 0;
while (true) {
@@ -711,8 +712,16 @@ public class Client implements AutoCloseable {
} catch (IOException ie) {
if (updateAddress()) {
timeoutFailures = ioFailures = 0;
+ try {
+ // HADOOP-17068: when server changed, ignore the exception.
+ handleConnectionFailure(ioFailures++, ie);
+ } catch (IOException ioe) {
+ LOG.warn("Exception when handle ConnectionFailure: "
+ + ioe.getMessage());
+ }
+ } else {
+ handleConnectionFailure(ioFailures++, ie);
}
- handleConnectionFailure(ioFailures++, ie);
}
}
}
@@ -1277,7 +1286,7 @@ public class Client implements AutoCloseable {
cleanupCalls();
}
} else {
- // log the info
+ // Log the newest server information if update address.
if (LOG.isDebugEnabled()) {
LOG.debug("closing ipc connection to " + server + ": " +
closeException.getMessage(),closeException);
---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org