一天之内第二次踩坑hive 建立lzo压缩分区表-报错return code 2 from org.apache.hadoop.hive.ql.exec.mr...

一天之内第二次踩坑hive 建立lzo压缩分区表-报错return code 2 from org.apache.hadoop.hive.ql.exec.mr…

需求:通过建立tmp表将数据导入采用lzo格式压缩的分区表

需要通过tmp表将数据导入采用lzo格式压缩的分区表,在数据导入tmp表后,在将数据从tmp表导入分区表的过程中持续报错:
return code 2 from org.apache.hadoop.hive.ql.exec.mr…
从网上搜索了一些解决方法,修改了map task和reduce task的数量,并不成功。

报错信息

Error: Error while processing statement: FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask (state=08S01,code=2)
一天之内第二次踩坑hive 建立lzo压缩分区表-报错return code 2 from org.apache.hadoop.hive.ql.exec.mr...
开始读jobhistoryserver中的报错信息主要集中于第一部分,怀疑数据可能有些问题。完全忽略了下面的提醒lzo library not available。直到浪费了很多时间排查各种问题后,才注意到日志中提出的这一句。于是找到了问题使用的lzo jar包是未编译版本。

一天之内第二次踩坑hive 建立lzo压缩分区表-报错return code 2 from org.apache.hadoop.hive.ql.exec.mr...

解决方法

这个问题的解决方法当然就是下载编译后的jar包,之后运行成功。不过从这个问题中学到的最重要的内容是一定要仔细看日志。求人不如求己,求论坛不如求日志呀。