失败:SemanticException生成映射联接任务错误:由于异常生成新的映射联接运算符失败:索引:0,大小:0



我正在做一个联合,如下所示:

insert overwrite table T3 select * from
( 
SELECT cast (c1 as decimal(6,3)) as c1, c2
FROM T1
[WHERE conditions]
UNION ALL
SELECT c1, c2
FROM T2
[WHERE conditions]
);

计算T2中的c1,它是T1中的c1是字符串的两倍。

当我在T1中铸造c1以加倍;出现以下错误:

失败:SemanticException生成映射联接任务错误:未能通过异常生成新的mapJoin运算符:索引:0,大小:0

这个表(上面查询的输出(将被插入到另一个c1列为双的表中。

如果您正在使用视图,并且这可能是连接所在的位置。

尝试禁用MapJoin作为一种变通方法,如建议此处:

set hive.auto.convert.join=false;

或者在查询中使用之前具体化视图(加载到表中(。

最新更新