1.报错现象

外部分区表重新建立后,查询不到数据,hdfs对应的目录是数据的
执行 MSCK REPAIR TABLE crumb.dwd_t_std_crumb_event_process;
修复元数据时,报错

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask

2.报错原因

从 Hive 1.3 开始,如果在 HDFS 上找到分区值中包含不允许字符的目录,MSCK 命令将抛出异常,可以在客户端使用hive.msck.path.validation来避免该错误,其参数值"skip"将跳过这些非法目录,其参数值"ignore"会尝试创建分区,这个值可能不会生效。

3.报错解决

设置参数后再次执行后OK

set hive.msck.path.validation=ignore;

在这里插入图片描述

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐