hive报错FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask

问题一:FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask

hive报错FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask

解决方法

(1)查看NameNode所在节点的内存
hive报错FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
(2)查看yarn-site.xml中的如下两个参数

yarn.nodemanager.resource.memory-mb#Yarn可使用的物理内存总量,该值不能大于节点的内存
yarn.scheduler.maximum-allocation-mb#单个任务可申请的物理内存

问题二 开启Hadoop集群运行官网的案例,出现

Container exited with a non-zero exit code 1. Error file:
prelaunch.err. Last 4096 bytes of prelaunch.err : Last 4096 bytes of
stderr : log4j:WARN No appenders could be found for logger
(org.apache.hadoop.mapreduce.v2.app.MRAppMaster). log4j:WARN Please
initialize the log4j system properly.

解决方案

在mapred-site.xml文件中增加如下配置

hive报错FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
注意:$HADOOP_HOME需要改写成实际hadoop安装的绝对路径

问题三 Can’t handle this event at current state

ERROR
org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptImpl:
Can’t handle this event at current state
org.apache.hadoop.yarn.state.InvalidStateTransitonException: Invalid
event: REGISTERED at ALLOCATED

解决方案

修改hdoop.env.sh两个参数JAVA_HOME和HADOOP_CONF_DIR

最终成功了
hive报错FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
总结:日志是个好东西,路径好配好,要学会看日志,解决问题就靠日志了