在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上添加一个配置即可。
1 2 3 4 | <property> <name>hive.insert.into.multilevel.dirs</name> <value>true</value> </property> |
本文介绍在CDH上执行Hive SQL时遇到的一个特定错误:ExecutionError, returncode 1 from org.apache.hadoop.hive.ql.exec.MoveTask。此错误发生在尝试将数据写入不存在的目录时,并提供了详细的解决方案,包括调整Hive配置来解决该问题。
2157

被折叠的 条评论
为什么被折叠?



