blob: 67fa143f98bcea34af33e0d649e709dff846c925 [file] [log] [blame]
set hive.mapred.mode=nonstrict;
set hive.optimize.skewjoin.compiletime = true;
set hive.auto.convert.join=true;
CREATE TABLE T1_n157(key STRING, val STRING)
SKEWED BY (key) ON ((2)) STORED AS TEXTFILE;
LOAD DATA LOCAL INPATH '../../data/files/T1.txt' INTO TABLE T1_n157;
CREATE TABLE T2_n92(key STRING, val STRING) STORED AS TEXTFILE;
LOAD DATA LOCAL INPATH '../../data/files/T2.txt' INTO TABLE T2_n92;
-- copy from skewjoinopt11
-- test compile time skew join and auto map join
-- This test is to verify the skew join compile optimization when the join is followed
-- by a union. Both sides of a union consist of a join, which should have used
-- skew join compile time optimization.
-- adding an order by at the end to make the results deterministic
EXPLAIN
select * from
(
select a.key, a.val as val1, b.val as val2 from T1_n157 a join T2_n92 b on a.key = b.key
union all
select a.key, a.val as val1, b.val as val2 from T1_n157 a join T2_n92 b on a.key = b.key
) subq1;
select * from
(
select a.key, a.val as val1, b.val as val2 from T1_n157 a join T2_n92 b on a.key = b.key
union all
select a.key, a.val as val1, b.val as val2 from T1_n157 a join T2_n92 b on a.key = b.key
) subq1
ORDER BY key, val1, val2;