浏览代码

YARN-6145. Improve log message on fail over. Contributed by Jian He.
(cherry picked from commit eec52e158b7bc14b2d3d53512323ba05e15e09e3)

Junping Du 8 年之前
父节点
当前提交
33e7c3044f

+ 5 - 3
hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/io/retry/RetryInvocationHandler.java

@@ -130,7 +130,9 @@ public class RetryInvocationHandler<T> implements RpcInvocationHandler {
           Thread.sleep(retryInfo.delay);
         } catch (InterruptedException e) {
           Thread.currentThread().interrupt();
-          LOG.warn("Interrupted while waiting to retry", e);
+          if (LOG.isDebugEnabled()) {
+            LOG.debug("Interrupted while waiting to retry", e);
+          }
           InterruptedIOException intIOE = new InterruptedIOException(
               "Retry interrupted");
           intIOE.initCause(e);
@@ -375,7 +377,7 @@ public class RetryInvocationHandler<T> implements RpcInvocationHandler {
     }
 
     final StringBuilder b = new StringBuilder()
-        .append("Exception while invoking ")
+        .append(ex + ", while invoking ")
         .append(proxyDescriptor.getProxyInfo().getString(method.getName()));
     if (failovers > 0) {
       b.append(" after ").append(failovers).append(" failover attempts");
@@ -384,7 +386,7 @@ public class RetryInvocationHandler<T> implements RpcInvocationHandler {
     b.append(delay > 0? "after sleeping for " + delay + "ms.": "immediately.");
 
     if (info) {
-      LOG.info(b.toString(), ex);
+      LOG.info(b.toString());
     } else {
       LOG.debug(b.toString(), ex);
     }

+ 4 - 2
hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java

@@ -912,8 +912,10 @@ public class Client implements AutoCloseable {
       }
       if (action.action == RetryAction.RetryDecision.FAIL) {
         if (action.reason != null) {
-          LOG.warn("Failed to connect to server: " + server + ": "
-              + action.reason, ioe);
+          if (LOG.isDebugEnabled()) {
+            LOG.debug("Failed to connect to server: " + server + ": "
+                    + action.reason, ioe);
+          }
         }
         throw ioe;
       }

+ 4 - 2
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common/src/main/java/org/apache/hadoop/yarn/client/RequestHedgingRMFailoverProxyProvider.java

@@ -144,6 +144,8 @@ public class RequestHedgingRMFailoverProxyProvider<T>
             args);
       }
 
+      LOG.info("Looking for the active RM in " + Arrays.toString(rmServiceIds)
+          + "...");
       ExecutorService executor = null;
       CompletionService<Object> completionService;
       try {
@@ -166,7 +168,7 @@ public class RequestHedgingRMFailoverProxyProvider<T>
         Object retVal;
         try {
           retVal = callResultFuture.get();
-          LOG.info("Invocation successful on [" + pInfo + "]");
+          LOG.info("Found active RM [" + pInfo + "]");
           return retVal;
         } catch (Exception ex) {
           // Throw exception from first responding RM so that clients can handle
@@ -192,7 +194,7 @@ public class RequestHedgingRMFailoverProxyProvider<T>
 
   @Override
   public void performFailover(T currentProxy) {
-    LOG.info("Connection lost, trying to fail over.");
+    LOG.info("Connection lost with " + successfulProxy + ", trying to fail over.");
     successfulProxy = null;
   }
 }