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 zh...@apache.org on 2015/02/06 22:46:38 UTC

[06/50] [abbrv] hadoop git commit: HDFS-7734. Class cast exception in NameNode#main. Contributed by Yi Liu.

HDFS-7734. Class cast exception in NameNode#main. Contributed by Yi Liu.


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/12cbbd2b
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/12cbbd2b
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/12cbbd2b

Branch: refs/heads/HDFS-EC
Commit: 12cbbd2bd11d5bc8ae31f3e4d6ba0773e44e1aba
Parents: 03d05b3
Author: Andrew Wang <wa...@apache.org>
Authored: Wed Feb 4 11:31:31 2015 -0800
Committer: Zhe Zhang <zh...@apache.org>
Committed: Fri Feb 6 13:45:47 2015 -0800

----------------------------------------------------------------------
 .../java/org/apache/hadoop/util/LogAdapter.java | 74 ++++++++++++++++++++
 .../org/apache/hadoop/util/SignalLogger.java    |  8 ++-
 .../org/apache/hadoop/util/StringUtils.java     | 16 +++++
 hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt     |  2 +
 .../server/blockmanagement/BlockManager.java    |  1 -
 .../hadoop/hdfs/server/namenode/NameNode.java   |  3 +-
 6 files changed, 99 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/12cbbd2b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/LogAdapter.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/LogAdapter.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/LogAdapter.java
new file mode 100644
index 0000000..6ef9093
--- /dev/null
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/LogAdapter.java
@@ -0,0 +1,74 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.hadoop.util;
+
+import org.apache.commons.logging.Log;
+import org.slf4j.Logger;
+
+class LogAdapter {
+  private Log LOG;
+  private Logger LOGGER;
+
+  private LogAdapter(Log LOG) {
+    this.LOG = LOG;
+  }
+
+  private LogAdapter(Logger LOGGER) {
+    this.LOGGER = LOGGER;
+  }
+
+  public static LogAdapter create(Log LOG) {
+    return new LogAdapter(LOG);
+  }
+
+  public static LogAdapter create(Logger LOGGER) {
+    return new LogAdapter(LOGGER);
+  }
+
+  public void info(String msg) {
+    if (LOG != null) {
+      LOG.info(msg);
+    } else if (LOGGER != null) {
+      LOGGER.info(msg);
+    }
+  }
+
+  public void warn(String msg, Throwable t) {
+    if (LOG != null) {
+      LOG.warn(msg, t);
+    } else if (LOGGER != null) {
+      LOGGER.warn(msg, t);
+    }
+  }
+
+  public void debug(Throwable t) {
+    if (LOG != null) {
+      LOG.debug(t);
+    } else if (LOGGER != null) {
+      LOGGER.debug("", t);
+    }
+  }
+
+  public void error(String msg) {
+    if (LOG != null) {
+      LOG.error(msg);
+    } else if (LOGGER != null) {
+      LOGGER.error(msg);
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/hadoop/blob/12cbbd2b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java
index c866738..62338c9 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SignalLogger.java
@@ -42,10 +42,10 @@ public enum SignalLogger {
    * Our signal handler.
    */
   private static class Handler implements SignalHandler {
-    final private org.apache.commons.logging.Log LOG;
+    final private LogAdapter LOG;
     final private SignalHandler prevHandler;
 
-    Handler(String name, Log LOG) {
+    Handler(String name, LogAdapter LOG) {
       this.LOG = LOG;
       prevHandler = Signal.handle(new Signal(name), this);
     }
@@ -69,6 +69,10 @@ public enum SignalLogger {
    * @param LOG        The log4j logfile to use in the signal handlers.
    */
   public void register(final Log LOG) {
+    register(LogAdapter.create(LOG));
+  }
+
+  void register(final LogAdapter LOG) {
     if (registered) {
       throw new IllegalStateException("Can't re-install the signal handlers.");
     }

http://git-wip-us.apache.org/repos/asf/hadoop/blob/12cbbd2b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/StringUtils.java
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/StringUtils.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/StringUtils.java
index 4e2783d..ff8edc3 100644
--- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/StringUtils.java
+++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/StringUtils.java
@@ -628,6 +628,22 @@ public class StringUtils {
    */
   public static void startupShutdownMessage(Class<?> clazz, String[] args,
                                      final org.apache.commons.logging.Log LOG) {
+    startupShutdownMessage(clazz, args, LogAdapter.create(LOG));
+  }
+
+  /**
+   * Print a log message for starting up and shutting down
+   * @param clazz the class of the server
+   * @param args arguments
+   * @param LOG the target log object
+   */
+  public static void startupShutdownMessage(Class<?> clazz, String[] args,
+                                     final org.slf4j.Logger LOG) {
+    startupShutdownMessage(clazz, args, LogAdapter.create(LOG));
+  }
+
+  static void startupShutdownMessage(Class<?> clazz, String[] args,
+                                     final LogAdapter LOG) { 
     final String hostname = NetUtils.getHostname();
     final String classname = clazz.getSimpleName();
     LOG.info(

http://git-wip-us.apache.org/repos/asf/hadoop/blob/12cbbd2b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
----------------------------------------------------------------------
diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
index 821fec4..ef891bf 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
+++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
@@ -835,6 +835,8 @@ Release 2.7.0 - UNRELEASED
     HDFS-7707. Edit log corruption due to delayed block removal again.
     (Yongjun Zhang via kihwal)
 
+    HDFS-7734. Class cast exception in NameNode#main. (yliu via wang)
+
 Release 2.6.1 - UNRELEASED
 
   INCOMPATIBLE CHANGES

http://git-wip-us.apache.org/repos/asf/hadoop/blob/12cbbd2b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockManager.java
----------------------------------------------------------------------
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockManager.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockManager.java
index 3feee3c..92031c1 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockManager.java
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockManager.java
@@ -37,7 +37,6 @@ import java.util.TreeMap;
 import java.util.TreeSet;
 import java.util.concurrent.atomic.AtomicLong;
 
-import org.apache.commons.logging.Log;
 import org.apache.hadoop.HadoopIllegalArgumentException;
 import org.apache.hadoop.classification.InterfaceAudience;
 import org.apache.hadoop.conf.Configuration;

http://git-wip-us.apache.org/repos/asf/hadoop/blob/12cbbd2b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNode.java
----------------------------------------------------------------------
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNode.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNode.java
index 97644d3..9dcf25b 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNode.java
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNode.java
@@ -1554,8 +1554,7 @@ public class NameNode implements NameNodeStatusMXBean {
     }
 
     try {
-      StringUtils.startupShutdownMessage(NameNode.class, argv,
-          (org.apache.commons.logging.Log) LogManager.getLogger(LOG.getName()));
+      StringUtils.startupShutdownMessage(NameNode.class, argv, LOG);
       NameNode namenode = createNameNode(argv, null);
       if (namenode != null) {
         namenode.join();