You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by jm...@apache.org on 2012/04/06 18:06:33 UTC

svn commit: r1310433 - /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/master/HMaster.java

Author: jmhsieh
Date: Fri Apr  6 16:06:33 2012
New Revision: 1310433

URL: http://svn.apache.org/viewvc?rev=1310433&view=rev
Log:
HBASE-5680 Improve compatibility warning about HBase with Hadoop 0.23.x

Modified:
    hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/master/HMaster.java

Modified: hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/master/HMaster.java?rev=1310433&r1=1310432&r2=1310433&view=diff
==============================================================================
--- hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/master/HMaster.java (original)
+++ hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/master/HMaster.java Fri Apr  6 16:06:33 2012
@@ -343,7 +343,17 @@ Server {
         loop();
       }
     } catch (Throwable t) {
-      abort("Unhandled exception. Starting shutdown.", t);
+      // HBASE-5680: Likely hadoop23 vs hadoop 20.x/1.x incompatibility
+      if (t instanceof NoClassDefFoundError && 
+          t.getMessage().contains("org/apache/hadoop/hdfs/protocol/FSConstants$SafeModeAction")) {
+          // improved error message for this special case
+          abort("HBase is having a problem with its Hadoop jars.  You may need to "
+              + "recompile HBase against Hadoop version "
+              +  org.apache.hadoop.util.VersionInfo.getVersion()
+              + " or change your hadoop jars to start properly", t);
+      } else {
+        abort("Unhandled exception. Starting shutdown.", t);
+      }
     } finally {
       startupStatus.cleanup();