背景
在生产业务中一个简单的sql(hive on tez)如下:
insert overwrite table AAA partition(groupcode) select * from BBB;
突然报错如下:
Caused by: org.apache.hadoop.hive.ql.metadata.Hive
:xception: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.pro
ocol.FSLimitException$PathComponentTooLongException): The maximum path c
omponent name limit of
xxxxx in directory /xxxx...../ task tmp.-ext-10002 is exceeded: limit=255 length=265
很奇怪,报的是HDFS路径长度限制,hdfs的路径确实有255 这个长度限制。
重跑了好多次这个错误是必现的。之前从没见过。
仔细观察了下 源表 和 目标表的hdfs路径,都很正常。也看了所有字段长度,也都不是很长,最大都没超过100. 这就奇怪了 ???
分析
仔细观察了表结构,其中源表的最后一个字段类型为 `groupcode` char(255)