hive - return code (数字) from org.apache.hadoop.hive.ql.exec错误系列集合

return code 2 from org.apache.hadoop.hive.ql.exec.tez.TezTask. Vertex failed

解决方法:开启查询向量模式
设置参数: set hive.vectorized.execution.enabled=false;

return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask

出现问题的原因是分配的分区超出了设置,可以在当亲的会话中修改临时配置
set hive.exec.max.dynamic.partitions.pernode=500;

return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask. Unable to move source hdfs://XXX to destination hdfs://xxx

原因:执行hive任务的用户对hdfs://xxx没有操作权限
解决:对目录授权
命令:hdfs dfs -chown -R use:group  hdfs://xxx

return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask. Exception when loading 1 in table

报错详情:
ERROR : FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask. Exception when loading 1 in table dwd_ihp_inventory_detail with loadPath=hdfs://prod-yingzi-cluster/warehouse/tablespace/external/hive/yz_datawarehouse_dwd.db/dwd_ihp_inventory_detail/.hive-staging_hive_2021-11-29_21-14-43_450_8705887740980246760-5563/-ext-10000

原因分析:
1、insert 的表是外部分区表
2、人为物理删除分区目录文件,但没有进行分区修复:MSCK REPAIR TABLE table_name; 【没有删除元数据库对应的数据】 ,这会导致元数据不一致而无法写入数据

解决:
1、执行分区修复命令:MSCK REPAIR TABLE table_name;
2、多跑几次或许会成功[看运气]
3、建议改为使用内部分区表[基本都可以解决]

你可能感兴趣的:(hive,hive)