You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Gopal V (JIRA)" <ji...@apache.org> on 2015/11/20 04:36:10 UTC
[jira] [Created] (HIVE-12477) CBO: Left Semijoins are incompatible
with a cross-product
Gopal V created HIVE-12477:
------------------------------
Summary: CBO: Left Semijoins are incompatible with a cross-product
Key: HIVE-12477
URL: https://issues.apache.org/jira/browse/HIVE-12477
Project: Hive
Issue Type: Bug
Components: CBO
Affects Versions: 2.0.0
Reporter: Gopal V
Assignee: Jesus Camacho Rodriguez
with HIVE-12017 in place, a few queries generate left sem-joins without a key.
This is an invalid plan and can be produced by doing.
{code}
explain logical select count(1) from store_sales where ss_sold_date_sk in (select d_date_sk from date_dim where d_date_sk = 1);
LOGICAL PLAN:
$hdt$_0:$hdt$_0:$hdt$_0:store_sales
TableScan (TS_0)
alias: store_sales
filterExpr: (ss_sold_date_sk = 1) (type: boolean)
Filter Operator (FIL_20)
predicate: (ss_sold_date_sk = 1) (type: boolean)
Select Operator (SEL_2)
Reduce Output Operator (RS_9)
sort order:
Join Operator (JOIN_11)
condition map:
Left Semi Join 0 to 1
keys:
0
1
Group By Operator (GBY_14)
aggregations: count(1)
mode: hash
{code}
without CBO
{code}
sq_1:date_dim
TableScan (TS_1)
alias: date_dim
filterExpr: ((1) IN (RS[6]) and (d_date_sk = 1)) (type: boolean)
Filter Operator (FIL_21)
predicate: ((1) IN (RS[6]) and (d_date_sk = 1)) (type: boolean)
Select Operator (SEL_3)
expressions: 1 (type: int)
outputColumnNames: _col0
Group By Operator (GBY_5)
keys: _col0 (type: int)
mode: hash
outputColumnNames: _col0
Reduce Output Operator (RS_8)
key expressions: _col0 (type: int)
sort order: +
Map-reduce partition columns: _col0 (type: int)
Join Operator (JOIN_9)
condition map:
Left Semi Join 0 to 1
keys:
0 ss_sold_date_sk (type: int)
1 _col0 (type: int)
Group By Operator (GBY_12)
aggregations: count(1)
mode: hash
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)