Jesus Camacho Rodriguez created HIVE-11110: ----------------------------------------------
Summary: Enable HiveJoinAddNotNullRule in CBO Key: HIVE-11110 URL: https://issues.apache.org/jira/browse/HIVE-11110 Project: Hive Issue Type: Bug Reporter: Jesus Camacho Rodriguez Assignee: Jesus Camacho Rodriguez Query {code} select count(*) from store_sales ,store_returns ,date_dim d1 ,date_dim d2 where d1.d_quarter_name = '2000Q1' and d1.d_date_sk = ss_sold_date_sk and ss_customer_sk = sr_customer_sk and ss_item_sk = sr_item_sk and ss_ticket_number = sr_ticket_number and sr_returned_date_sk = d2.d_date_sk and d2.d_quarter_name in ('2000Q1','2000Q2','2000Q3’); {code} The store_sales table is partitioned on ss_sold_date_sk, which is also used in a join clause. The join clause should add a filter “filterExpr: ss_sold_date_sk is not null”, which should get pushed the MetaStore when fetching the stats. Currently this is not done in CBO planning, which results in the stats from __HIVE_DEFAULT_PARTITION__ to be fetched and considered in the optimization phase. In particular, this increases the NDV for the join columns and may result in wrong planning. Including HiveJoinAddNotNullRule in the optimization phase solves this issue. -- This message was sent by Atlassian JIRA (v6.3.4#6332)