FAILED:SemanticException生成地图联接任务错误:由于异常而未能生成新的mapJoin运算符:索引:0,大小:0

问题描述 投票:0回答:1

我正在按照以下步骤进行工会:

 SELECT c1, c2
  FROM T1
  [WHERE conditions]
  UNION ALL
 SELECT c1, c2
  FROM T2
  [WHERE conditions];

T2中的c1被计算为两倍,其中T1中的c1是字符串。

当我在T1中将c1转换为两倍时,出现以下错误:

FAILED:SemanticException生成地图加入任务错误:未能异常生成新的mapJoin运算符:索引:0,大小:0

此表(上述查询的输出)将插入到c1列为double的另一个表中。

hive type-conversion union-all
1个回答
0
投票

最有可能您正在使用视图,这就是联接所在的位置。

尝试按照建议的here禁用MapJoin作为解决方法:

set hive.auto.convert.join=false;

或在查询中使用前实例化视图(加载到表中。)>

© www.soinside.com 2019 - 2024. All rights reserved.