[ https://issues.apache.org/jira/browse/HBASE-4243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13113262#comment-13113262 ]
Lars George commented on HBASE-4243: ------------------------------------ Tested on MacOS Lion. Patch works fine and actually triggers another bug {noformat} $ bin/start-hbase.sh ls: /projects/opensource/hadoop-0.20.2-append/hadoop-core*.jar: No such file or directory Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/util/PlatformName Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.PlatformName at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) ls: /projects/opensource/hadoop-0.20.2-append/hadoop-core*.jar: No such file or directory Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/util/PlatformName Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.PlatformName at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) localhost: starting zookeeper, logging to /projects/opensource/hbase-trunk-rw//logs/hbase-larsgeorge-zookeeper-de1-app-mbp-2.out localhost: /projects/opensource/hadoop-0.20.2-append localhost: ls: /projects/opensource/hadoop-0.20.2-append/hadoop-core*.jar: No such file or directory localhost: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/util/PlatformName localhost: Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.PlatformName localhost: at java.net.URLClassLoader$1.run(URLClassLoader.java:202) localhost: at java.security.AccessController.doPrivileged(Native Method) localhost: at java.net.URLClassLoader.findClass(URLClassLoader.java:190) localhost: at java.lang.ClassLoader.loadClass(ClassLoader.java:306) localhost: at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) localhost: at java.lang.ClassLoader.loadClass(ClassLoader.java:247) starting master, logging to /projects/opensource/hbase-trunk-rw/bin/../logs/hbase-larsgeorge-master-de1-app-mbp-2.out /projects/opensource/hadoop-0.20.2-append ls: /projects/opensource/hadoop-0.20.2-append/hadoop-core*.jar: No such file or directory Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/util/PlatformName Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.PlatformName at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) localhost: starting regionserver, logging to /projects/opensource/hbase-trunk-rw//logs/hbase-larsgeorge-regionserver-de1-app-mbp-2.out localhost: /projects/opensource/hadoop-0.20.2-append localhost: ls: /projects/opensource/hadoop-0.20.2-append/hadoop-core*.jar: No such file or directory localhost: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/util/PlatformName localhost: Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.PlatformName localhost: at java.net.URLClassLoader$1.run(URLClassLoader.java:202) localhost: at java.security.AccessController.doPrivileged(Native Method) localhost: at java.net.URLClassLoader.findClass(URLClassLoader.java:190) localhost: at java.lang.ClassLoader.loadClass(ClassLoader.java:306) localhost: at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) localhost: at java.lang.ClassLoader.loadClass(ClassLoader.java:247) {noformat} because of the tar ball naming of: {noformat} $ ll /projects/opensource/hadoop-0.20.2-append/ total 14960 drwxr-xr-x@ 26 larsgeorge staff 884 Apr 13 09:09 . drwxr-xr-x 114 larsgeorge staff 3876 Sep 22 19:42 .. -rw-r--r--@ 1 larsgeorge staff 348624 Apr 13 08:58 CHANGES.txt -rw-r--r--@ 1 larsgeorge staff 13366 Apr 13 08:58 LICENSE.txt -rw-r--r--@ 1 larsgeorge staff 101 Apr 13 08:58 NOTICE.txt -rw-r--r--@ 1 larsgeorge staff 1366 Apr 13 08:58 README.txt drwxr-xr-x@ 17 larsgeorge staff 578 Apr 13 08:58 bin -rw-r--r--@ 1 larsgeorge staff 74035 Apr 13 08:58 build.xml drwxr-xr-x@ 4 larsgeorge staff 136 Apr 13 08:58 c++ drwxr-xr-x 18 larsgeorge staff 612 Aug 9 15:11 conf drwxr-xr-x@ 15 larsgeorge staff 510 Apr 13 08:58 conf.original drwxr-xr-x@ 13 larsgeorge staff 442 Apr 13 08:58 contrib drwxr-xr-x@ 63 larsgeorge staff 2142 Apr 13 08:58 docs -rw-r--r--@ 1 larsgeorge staff 6839 Apr 13 08:58 hadoop-0.20.2-ant.jar -rw-r--r-- 1 larsgeorge staff 2707920 Apr 13 09:06 hadoop-0.20.2-core.jar -rw-r--r--@ 1 larsgeorge staff 2689741 Apr 13 08:58 hadoop-0.20.2-core.jar.original -rw-r--r--@ 1 larsgeorge staff 142466 Apr 13 08:58 hadoop-0.20.2-examples.jar -rw-r--r--@ 1 larsgeorge staff 1563859 Apr 13 08:58 hadoop-0.20.2-test.jar -rw-r--r--@ 1 larsgeorge staff 69940 Apr 13 08:58 hadoop-0.20.2-tools.jar drwxr-xr-x@ 6 larsgeorge staff 204 Apr 13 08:58 ivy -rw-r--r--@ 1 larsgeorge staff 8852 Apr 13 08:58 ivy.xml drwxr-xr-x@ 30 larsgeorge staff 1020 Jul 13 10:20 lib drwxr-xr-x@ 3 larsgeorge staff 102 Apr 13 08:58 librecordio drwxr-xr-x 3 larsgeorge staff 102 May 16 09:56 logs drwxr-xr-x@ 17 larsgeorge staff 578 Apr 13 08:58 src drwxr-xr-x@ 8 larsgeorge staff 272 Apr 13 08:58 webapps $ svn revert bin/hbase Reverted 'bin/hbase' $ killhbase $ bin/start-hbase.sh starting master, logging to /projects/opensource/hbase-trunk-rw/bin/../logs/hbase-larsgeorge-master-de1-app-mbp-2.out $ {noformat} So the revert of the patch fell back to the older behavior of not going through the if branch, which does not trigger the issue. Setting HADOOP_HOME externally does trigger it as expected. PS: Please upload the patch in SVN format (i.e. using --no-prefix with git for example), just so that it conforms to standard I am +1 applying the patch. > HADOOP_HOME should be auto-detected > ----------------------------------- > > Key: HBASE-4243 > URL: https://issues.apache.org/jira/browse/HBASE-4243 > Project: HBase > Issue Type: Improvement > Reporter: Roman Shaposhnik > Assignee: Roman Shaposhnik > Priority: Minor > Attachments: HBASE-4243-2.patch.txt, HBASE-4243.patch.txt > > > Now that HBASE-3465 has been integrated, perhaps we should try to auto-detect > the HADOOP_HOME setting if it is not given explicitly. Something along the > lines of: > {noformat} > # check for hadoop in the path > 141 HADOOP_IN_PATH=`which hadoop 2>/dev/null` > 142 if [ -f ${HADOOP_IN_PATH} ]; then > 143 HADOOP_DIR=`dirname "$HADOOP_IN_PATH"`/.. > 144 fi > 145 # HADOOP_HOME env variable overrides hadoop in the path > 146 HADOOP_HOME=${HADOOP_HOME:-$HADOOP_DIR} > 147 if [ "$HADOOP_HOME" == "" ]; then > 148 echo "Cannot find hadoop installation: \$HADOOP_HOME must be set or > hadoop must be in the path"; > 149 exit 4; > 150 fi > {noformat} > Thoughts? -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira