[
https://issues.apache.org/jira/browse/HADOOP-7563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13089323#comment-13089323
]
Aaron T. Myers commented on HADOOP-7563:
----------------------------------------
I tested this out by building a dist layout and setting HADOOP_COMMON_HOME and
HADOOP_HDFS_HOME to the resulting directories. When applied with the patch from
HDFS-2277, this patch seems to have fixed the issues with finding the
hadoop-config.sh file, and HDFS-2277 seems to have fixed the HDFS classpath to
find the HDFS jars. However, I now get this error when I try to start at NN:
{noformat}
java.lang.NoClassDefFoundError: org/apache/hadoop/alfredo/util/KerberosName
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
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)
at
org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:197)
at
org.apache.hadoop.security.UserGroupInformation.setConfiguration(UserGroupInformation.java:254)
at
org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:411)
at
org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:566)
at
org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:558)
at
org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1546)
at
org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1586)
Caused by: java.lang.ClassNotFoundException:
org.apache.hadoop.alfredo.util.KerberosName
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)
{noformat}
Once this is fixed, I think these patches are ready to go.
However, at this point the scopes of both this JIRA and HDFS-2277 have creeped
somewhat. This JIRA is now addressing more than just setting HADOOP_HDFS_HOME
and HADOOP_MAPRED_HOME appropriately, and HDFS-2277 is doing more than just
fixing the classpath to include the HDFS jars. Since these two JIRAs seem
intimately related, I suggest we make all of the needed changes (to both Common
and HDFS) in this JIRA, change the description of this JIRA to something like
"fix hadoop scripts to reference each other and set up classpaths correctly,"
and resolve HDFS-2277 as a duplicate.
> hadoop-config.sh setup HADOOP_HDFS_HOME and HADOOP_MAPRED_HOME incorrectly
> --------------------------------------------------------------------------
>
> Key: HADOOP-7563
> URL: https://issues.apache.org/jira/browse/HADOOP-7563
> Project: Hadoop Common
> Issue Type: Bug
> Components: scripts
> Affects Versions: 0.23.0
> Reporter: Eric Yang
> Assignee: Eric Yang
> Fix For: 0.23.0
>
> Attachments: HADOOP-7563-1.patch, HADOOP-7563.patch
>
>
> HADOOP_HDFS_HOME and HADOOP_MAPRED_HOME was set to
> HADOOP_PREFIX/share/hadoop/hdfs and HADOOP_PREFIX/share/hadoop/mapreduce.
> This setup confuses the location of hdfs and mapred scripts. Instead the
> script should look for hdfs and mapred script in HADOOP_PREFIX/bin.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira