今天在CDH上执行hive sql的时候报了一个错。
错误内容为:
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask
错误语句:
INSERT OVERWRITE DIRECTORY ‘{$dir}‘ select * from tmp_analyse_os where logdata=‘{$begin}‘ ;
错误原因:
hive源码会检查导出的路径是否存在,如果不存在则报这个错。这个错只有在CDH上的hive才会报错,apache已经修复了这个bug,其实CDH不是没有修复这个bug,而是添加了一个配置文件,但配置文件默认是false(蛋疼)。
解决方法:
在hive上添加一个配置即可。
<property> <name>hive.insert.into.multilevel.dirs</name> <value>true</value> </property>
本文出自 “屌丝程序员的逆袭” 博客,请务必保留此出处http://cdelliqi.blog.51cto.com/9028667/1541625
hive报错(1)MoveTask,布布扣,bubuko.com
原文:http://cdelliqi.blog.51cto.com/9028667/1541625