目录
一、完整报错
二、原因
2.1、动态分区问题
2.2、语句占用内存问题
三、其他
一、完整报错
Error while processing statement: FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
二、原因
2.1、动态分区问题
大概率是因为没有开启或允许动态分区或单次动态分区个数太小了。
-- 动态分区前先运行如下语句
set hive.exec.dynamic.partition = true;
set hive.exec.dynamic.partition.mode = nonstrict;
set hive.exec.max.dynamic.partitions = 1000;
set hive.exec.max.dynamic.partitions.pernode = 1000;
2.2、语句占用内存问题
还有可能就是你的sql语句执行时需要很大的内存,而配置文件要求单条内存不超过xxx内存时报错。设置下内存大小就可以了。文章来源:https://www.toymoban.com/news/detail-720316.html
-- 1024的倍数
set mapreduce.map.memory.mb=5120;
三、其他
如果上面语句没有解决,可以看下yarn配置,或查看日志或后台配置等等。文章来源地址https://www.toymoban.com/news/detail-720316.html
到了这里,关于hive插入动态分区数据时,return code 2报错解决的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!