commit 0e8a027c8b9378d810ed637bb93261781bd0ebd7 Author: Eric Yang Date: Mon Nov 6 18:02:42 2017 -0500 YARN-7447. Fixed Jaxb provider for YARN services and bootstrap bug. diff --git a/hadoop-yarn-project/hadoop-yarn/bin/yarn b/hadoop-yarn-project/hadoop-yarn/bin/yarn index 00596c2..d7b44b9 100755 --- a/hadoop-yarn-project/hadoop-yarn/bin/yarn +++ b/hadoop-yarn-project/hadoop-yarn/bin/yarn @@ -149,6 +149,14 @@ ${HADOOP_COMMON_HOME}/${HADOOP_COMMON_LIB_JARS_DIR}" if [[ -n "${YARN_RESOURCEMANAGER_HEAPSIZE}" ]]; then HADOOP_HEAPSIZE_MAX="${YARN_RESOURCEMANAGER_HEAPSIZE}" fi + local sld="${HADOOP_YARN_HOME}/${YARN_DIR},\ +${HADOOP_YARN_HOME}/${YARN_LIB_JARS_DIR},\ +${HADOOP_HDFS_HOME}/${HDFS_DIR},\ +${HADOOP_HDFS_HOME}/${HDFS_LIB_JARS_DIR},\ +${HADOOP_COMMON_HOME}/${HADOOP_COMMON_DIR},\ +${HADOOP_COMMON_HOME}/${HADOOP_COMMON_LIB_JARS_DIR}" + hadoop_translate_cygwin_path sld + hadoop_add_param HADOOP_OPTS service.libdir "-Dservice.libdir=${sld}" ;; rmadmin) HADOOP_CLASSNAME='org.apache.hadoop.yarn.client.cli.RMAdminCLI' diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/RMWebApp.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/RMWebApp.java index bee9354..16818c3 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/RMWebApp.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/webapp/RMWebApp.java @@ -46,6 +46,8 @@ private boolean standby = false; private final static String APISERVER = "org.apache.hadoop.yarn.service.webapp.ApiServer"; + private final static String YARNJACKSONJAXBJSONPROVIDER = + "org.apache.hadoop.yarn.webapp.YarnJacksonJaxbJsonProvider"; public RMWebApp(ResourceManager rm) { this.rm = rm; @@ -66,6 +68,8 @@ public void setup() { // Use reflection here to load ApiServer class, // this is done to avoid creating cyclic dependency // between maven projects. + Class yarnJacksonJaxbJsonProvider = Class.forName(YARNJACKSONJAXBJSONPROVIDER); + bind(yarnJacksonJaxbJsonProvider); Class apiServer = Class.forName(APISERVER); bind(apiServer); } catch (ClassNotFoundException e) {