http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query23.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query23.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query23.q.out
index ace7cf5..b55f2c1 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query23.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query23.q.out
@@ -1,7 +1,7 @@
-Warning: Shuffle Join MERGEJOIN[593][tables = [$hdt$_1, $hdt$_2]] in Stage 
'Reducer 29' is a cross product
-Warning: Shuffle Join MERGEJOIN[594][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in 
Stage 'Reducer 30' is a cross product
-Warning: Shuffle Join MERGEJOIN[596][tables = [$hdt$_1, $hdt$_2]] in Stage 
'Reducer 33' is a cross product
-Warning: Shuffle Join MERGEJOIN[597][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in 
Stage 'Reducer 34' is a cross product
+Warning: Shuffle Join MERGEJOIN[583][tables = [$hdt$_1, $hdt$_2]] in Stage 
'Reducer 29' is a cross product
+Warning: Shuffle Join MERGEJOIN[584][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in 
Stage 'Reducer 30' is a cross product
+Warning: Shuffle Join MERGEJOIN[586][tables = [$hdt$_1, $hdt$_2]] in Stage 
'Reducer 33' is a cross product
+Warning: Shuffle Join MERGEJOIN[587][tables = [$hdt$_1, $hdt$_2, $hdt$_0]] in 
Stage 'Reducer 34' is a cross product
 PREHOOK: query: explain cbo
 with frequent_ss_items as 
  (select substr(i_item_desc,1,30) itemdesc,i_item_sk item_sk,d_date 
solddate,count(*) cnt
@@ -128,16 +128,15 @@ HiveSortLimit(fetch=[100])
             HiveJoin(condition=[=($3, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveProject($f0=[$0])
                 HiveJoin(condition=[>($1, *(0.95, $3))], joinType=[inner], 
algorithm=[none], cost=[not available])
-                  HiveProject($f0=[$0], $f1=[$1])
-                    HiveAggregate(group=[{0}], agg#0=[sum($1)])
-                      HiveProject($f0=[$3], $f1=[*(CAST($1):DECIMAL(10, 0), 
$2)])
-                        HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                          HiveProject(ss_customer_sk=[$3], ss_quantity=[$10], 
ss_sales_price=[$13])
-                            HiveFilter(condition=[IS NOT NULL($3)])
-                              HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                          HiveProject(c_customer_sk=[$0])
-                            HiveFilter(condition=[IS NOT NULL($0)])
-                              HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
+                  HiveProject(c_customer_sk=[$0], $f1=[$1])
+                    HiveAggregate(group=[{2}], agg#0=[sum($1)])
+                      HiveJoin(condition=[=($0, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                        HiveProject(ss_customer_sk=[$3], 
*=[*(CAST($10):DECIMAL(10, 0), $13)])
+                          HiveFilter(condition=[IS NOT NULL($3)])
+                            HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
+                        HiveProject(c_customer_sk=[$0])
+                          HiveFilter(condition=[IS NOT NULL($0)])
+                            HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
                   HiveJoin(condition=[true], joinType=[inner], 
algorithm=[none], cost=[not available])
                     HiveProject(cnt=[$0])
                       HiveFilter(condition=[<=(sq_count_check($0), 1)])
@@ -146,75 +145,71 @@ HiveSortLimit(fetch=[100])
                             HiveProject
                               HiveProject($f0=[$0])
                                 HiveAggregate(group=[{}], agg#0=[count($0)])
-                                  HiveProject($f0=[$0], $f1=[$1])
-                                    HiveAggregate(group=[{0}], agg#0=[sum($1)])
-                                      HiveProject($f0=[$0], 
$f1=[*(CAST($3):DECIMAL(10, 0), $4)])
-                                        HiveJoin(condition=[=($2, $0)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                          HiveProject(c_customer_sk=[$0])
-                                            HiveFilter(condition=[IS NOT 
NULL($0)])
-                                              HiveTableScan(table=[[default, 
customer]], table:alias=[customer])
-                                          HiveJoin(condition=[=($0, $4)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                            HiveProject(ss_sold_date_sk=[$0], 
ss_customer_sk=[$3], ss_quantity=[$10], ss_sales_price=[$13])
-                                              HiveFilter(condition=[AND(IS NOT 
NULL($3), IS NOT NULL($0))])
-                                                HiveTableScan(table=[[default, 
store_sales]], table:alias=[store_sales])
-                                            HiveProject(d_date_sk=[$0], 
d_year=[$6])
-                                              HiveFilter(condition=[AND(IN($6, 
1999, 2000, 2001, 2002), IS NOT NULL($0))])
-                                                HiveTableScan(table=[[default, 
date_dim]], table:alias=[date_dim])
+                                  HiveProject(c_customer_sk=[$0], $f1=[$1])
+                                    HiveAggregate(group=[{0}], agg#0=[sum($3)])
+                                      HiveJoin(condition=[=($2, $0)], 
joinType=[inner], algorithm=[none], cost=[not available])
+                                        HiveProject(c_customer_sk=[$0])
+                                          HiveFilter(condition=[IS NOT 
NULL($0)])
+                                            HiveTableScan(table=[[default, 
customer]], table:alias=[customer])
+                                        HiveJoin(condition=[=($0, $3)], 
joinType=[inner], algorithm=[none], cost=[not available])
+                                          HiveProject(ss_sold_date_sk=[$0], 
ss_customer_sk=[$3], *=[*(CAST($10):DECIMAL(10, 0), $13)])
+                                            HiveFilter(condition=[AND(IS NOT 
NULL($3), IS NOT NULL($0))])
+                                              HiveTableScan(table=[[default, 
store_sales]], table:alias=[store_sales])
+                                          HiveProject(d_date_sk=[$0])
+                                            HiveFilter(condition=[AND(IN($6, 
1999, 2000, 2001, 2002), IS NOT NULL($0))])
+                                              HiveTableScan(table=[[default, 
date_dim]], table:alias=[date_dim])
                     HiveProject($f0=[$0])
                       HiveAggregate(group=[{}], agg#0=[max($1)])
-                        HiveProject($f0=[$0], $f1=[$1])
-                          HiveAggregate(group=[{0}], agg#0=[sum($1)])
-                            HiveProject($f0=[$0], $f1=[*(CAST($3):DECIMAL(10, 
0), $4)])
-                              HiveJoin(condition=[=($2, $0)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                HiveProject(c_customer_sk=[$0])
-                                  HiveFilter(condition=[IS NOT NULL($0)])
-                                    HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
-                                HiveJoin(condition=[=($0, $4)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                  HiveProject(ss_sold_date_sk=[$0], 
ss_customer_sk=[$3], ss_quantity=[$10], ss_sales_price=[$13])
-                                    HiveFilter(condition=[AND(IS NOT NULL($3), 
IS NOT NULL($0))])
-                                      HiveTableScan(table=[[default, 
store_sales]], table:alias=[store_sales])
-                                  HiveProject(d_date_sk=[$0], d_year=[$6])
-                                    HiveFilter(condition=[AND(IN($6, 1999, 
2000, 2001, 2002), IS NOT NULL($0))])
-                                      HiveTableScan(table=[[default, 
date_dim]], table:alias=[date_dim])
-              HiveJoin(condition=[=($3, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                HiveProject($f1=[$0])
-                  HiveAggregate(group=[{1}])
-                    HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3])
-                      HiveFilter(condition=[>($3, 4)])
-                        HiveAggregate(group=[{0, 1, 2}], agg#0=[count()])
-                          HiveProject($f0=[substr($6, 1, 30)], $f1=[$5], 
$f2=[$3])
-                            HiveJoin(condition=[=($1, $5)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                              HiveJoin(condition=[=($0, $2)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                HiveProject(ss_sold_date_sk=[$0], 
ss_item_sk=[$2])
-                                  HiveFilter(condition=[AND(IS NOT NULL($0), 
IS NOT NULL($2))])
+                        HiveProject(c_customer_sk=[$0], $f1=[$1])
+                          HiveAggregate(group=[{0}], agg#0=[sum($3)])
+                            HiveJoin(condition=[=($2, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                              HiveProject(c_customer_sk=[$0])
+                                HiveFilter(condition=[IS NOT NULL($0)])
+                                  HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
+                              HiveJoin(condition=[=($0, $3)], 
joinType=[inner], algorithm=[none], cost=[not available])
+                                HiveProject(ss_sold_date_sk=[$0], 
ss_customer_sk=[$3], *=[*(CAST($10):DECIMAL(10, 0), $13)])
+                                  HiveFilter(condition=[AND(IS NOT NULL($3), 
IS NOT NULL($0))])
                                     HiveTableScan(table=[[default, 
store_sales]], table:alias=[store_sales])
-                                HiveProject(d_date_sk=[$0], d_date=[$2], 
d_year=[$6])
+                                HiveProject(d_date_sk=[$0])
                                   HiveFilter(condition=[AND(IN($6, 1999, 2000, 
2001, 2002), IS NOT NULL($0))])
                                     HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-                              HiveProject(i_item_sk=[$0], i_item_desc=[$4])
-                                HiveFilter(condition=[IS NOT NULL($0)])
-                                  HiveTableScan(table=[[default, item]], 
table:alias=[item])
+              HiveJoin(condition=[=($3, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                HiveProject(i_item_sk=[$0])
+                  HiveAggregate(group=[{1}])
+                    HiveFilter(condition=[>($3, 4)])
+                      HiveProject(substr=[$2], i_item_sk=[$1], d_date=[$0], 
$f3=[$3])
+                        HiveAggregate(group=[{3, 4, 5}], agg#0=[count()])
+                          HiveJoin(condition=[=($1, $4)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                            HiveJoin(condition=[=($0, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                              HiveProject(ss_sold_date_sk=[$0], 
ss_item_sk=[$2])
+                                HiveFilter(condition=[AND(IS NOT NULL($0), IS 
NOT NULL($2))])
+                                  HiveTableScan(table=[[default, 
store_sales]], table:alias=[store_sales])
+                              HiveProject(d_date_sk=[$0], d_date=[$2])
+                                HiveFilter(condition=[AND(IN($6, 1999, 2000, 
2001, 2002), IS NOT NULL($0))])
+                                  HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
+                            HiveProject(i_item_sk=[$0], substr=[substr($4, 1, 
30)])
+                              HiveFilter(condition=[IS NOT NULL($0)])
+                                HiveTableScan(table=[[default, item]], 
table:alias=[item])
                 HiveJoin(condition=[=($0, $5)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(cs_sold_date_sk=[$0], cs_bill_customer_sk=[$3], 
cs_item_sk=[$15], cs_quantity=[$18], cs_list_price=[$20])
                     HiveFilter(condition=[AND(IS NOT NULL($15), IS NOT 
NULL($3), IS NOT NULL($0))])
                       HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
-                  HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_moy=[CAST(1):INTEGER])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(=($6, 1999), =($8, 1), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
           HiveProject(sales=[*(CAST($5):DECIMAL(10, 0), $6)])
             HiveJoin(condition=[=($4, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveProject($f0=[$0])
                 HiveJoin(condition=[>($1, *(0.95, $3))], joinType=[inner], 
algorithm=[none], cost=[not available])
-                  HiveProject($f0=[$0], $f1=[$1])
-                    HiveAggregate(group=[{0}], agg#0=[sum($1)])
-                      HiveProject($f0=[$3], $f1=[*(CAST($1):DECIMAL(10, 0), 
$2)])
-                        HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                          HiveProject(ss_customer_sk=[$3], ss_quantity=[$10], 
ss_sales_price=[$13])
-                            HiveFilter(condition=[IS NOT NULL($3)])
-                              HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                          HiveProject(c_customer_sk=[$0])
-                            HiveFilter(condition=[IS NOT NULL($0)])
-                              HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
+                  HiveProject(c_customer_sk=[$0], $f1=[$1])
+                    HiveAggregate(group=[{2}], agg#0=[sum($1)])
+                      HiveJoin(condition=[=($0, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                        HiveProject(ss_customer_sk=[$3], 
*=[*(CAST($10):DECIMAL(10, 0), $13)])
+                          HiveFilter(condition=[IS NOT NULL($3)])
+                            HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
+                        HiveProject(c_customer_sk=[$0])
+                          HiveFilter(condition=[IS NOT NULL($0)])
+                            HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
                   HiveJoin(condition=[true], joinType=[inner], 
algorithm=[none], cost=[not available])
                     HiveProject(cnt=[$0])
                       HiveFilter(condition=[<=(sq_count_check($0), 1)])
@@ -223,59 +218,56 @@ HiveSortLimit(fetch=[100])
                             HiveProject
                               HiveProject($f0=[$0])
                                 HiveAggregate(group=[{}], agg#0=[count($0)])
-                                  HiveProject($f0=[$0], $f1=[$1])
-                                    HiveAggregate(group=[{0}], agg#0=[sum($1)])
-                                      HiveProject($f0=[$0], 
$f1=[*(CAST($3):DECIMAL(10, 0), $4)])
-                                        HiveJoin(condition=[=($2, $0)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                          HiveProject(c_customer_sk=[$0])
-                                            HiveFilter(condition=[IS NOT 
NULL($0)])
-                                              HiveTableScan(table=[[default, 
customer]], table:alias=[customer])
-                                          HiveJoin(condition=[=($0, $4)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                            HiveProject(ss_sold_date_sk=[$0], 
ss_customer_sk=[$3], ss_quantity=[$10], ss_sales_price=[$13])
-                                              HiveFilter(condition=[AND(IS NOT 
NULL($3), IS NOT NULL($0))])
-                                                HiveTableScan(table=[[default, 
store_sales]], table:alias=[store_sales])
-                                            HiveProject(d_date_sk=[$0], 
d_year=[$6])
-                                              HiveFilter(condition=[AND(IN($6, 
1999, 2000, 2001, 2002), IS NOT NULL($0))])
-                                                HiveTableScan(table=[[default, 
date_dim]], table:alias=[date_dim])
+                                  HiveProject(c_customer_sk=[$0], $f1=[$1])
+                                    HiveAggregate(group=[{0}], agg#0=[sum($3)])
+                                      HiveJoin(condition=[=($2, $0)], 
joinType=[inner], algorithm=[none], cost=[not available])
+                                        HiveProject(c_customer_sk=[$0])
+                                          HiveFilter(condition=[IS NOT 
NULL($0)])
+                                            HiveTableScan(table=[[default, 
customer]], table:alias=[customer])
+                                        HiveJoin(condition=[=($0, $3)], 
joinType=[inner], algorithm=[none], cost=[not available])
+                                          HiveProject(ss_sold_date_sk=[$0], 
ss_customer_sk=[$3], *=[*(CAST($10):DECIMAL(10, 0), $13)])
+                                            HiveFilter(condition=[AND(IS NOT 
NULL($3), IS NOT NULL($0))])
+                                              HiveTableScan(table=[[default, 
store_sales]], table:alias=[store_sales])
+                                          HiveProject(d_date_sk=[$0])
+                                            HiveFilter(condition=[AND(IN($6, 
1999, 2000, 2001, 2002), IS NOT NULL($0))])
+                                              HiveTableScan(table=[[default, 
date_dim]], table:alias=[date_dim])
                     HiveProject($f0=[$0])
                       HiveAggregate(group=[{}], agg#0=[max($1)])
-                        HiveProject($f0=[$0], $f1=[$1])
-                          HiveAggregate(group=[{0}], agg#0=[sum($1)])
-                            HiveProject($f0=[$0], $f1=[*(CAST($3):DECIMAL(10, 
0), $4)])
-                              HiveJoin(condition=[=($2, $0)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                HiveProject(c_customer_sk=[$0])
-                                  HiveFilter(condition=[IS NOT NULL($0)])
-                                    HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
-                                HiveJoin(condition=[=($0, $4)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                  HiveProject(ss_sold_date_sk=[$0], 
ss_customer_sk=[$3], ss_quantity=[$10], ss_sales_price=[$13])
-                                    HiveFilter(condition=[AND(IS NOT NULL($3), 
IS NOT NULL($0))])
-                                      HiveTableScan(table=[[default, 
store_sales]], table:alias=[store_sales])
-                                  HiveProject(d_date_sk=[$0], d_year=[$6])
-                                    HiveFilter(condition=[AND(IN($6, 1999, 
2000, 2001, 2002), IS NOT NULL($0))])
-                                      HiveTableScan(table=[[default, 
date_dim]], table:alias=[date_dim])
-              HiveJoin(condition=[=($2, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                HiveProject($f1=[$0])
-                  HiveAggregate(group=[{1}])
-                    HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3])
-                      HiveFilter(condition=[>($3, 4)])
-                        HiveAggregate(group=[{0, 1, 2}], agg#0=[count()])
-                          HiveProject($f0=[substr($6, 1, 30)], $f1=[$5], 
$f2=[$3])
-                            HiveJoin(condition=[=($1, $5)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                              HiveJoin(condition=[=($0, $2)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                HiveProject(ss_sold_date_sk=[$0], 
ss_item_sk=[$2])
-                                  HiveFilter(condition=[AND(IS NOT NULL($0), 
IS NOT NULL($2))])
+                        HiveProject(c_customer_sk=[$0], $f1=[$1])
+                          HiveAggregate(group=[{0}], agg#0=[sum($3)])
+                            HiveJoin(condition=[=($2, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                              HiveProject(c_customer_sk=[$0])
+                                HiveFilter(condition=[IS NOT NULL($0)])
+                                  HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
+                              HiveJoin(condition=[=($0, $3)], 
joinType=[inner], algorithm=[none], cost=[not available])
+                                HiveProject(ss_sold_date_sk=[$0], 
ss_customer_sk=[$3], *=[*(CAST($10):DECIMAL(10, 0), $13)])
+                                  HiveFilter(condition=[AND(IS NOT NULL($3), 
IS NOT NULL($0))])
                                     HiveTableScan(table=[[default, 
store_sales]], table:alias=[store_sales])
-                                HiveProject(d_date_sk=[$0], d_date=[$2], 
d_year=[$6])
+                                HiveProject(d_date_sk=[$0])
                                   HiveFilter(condition=[AND(IN($6, 1999, 2000, 
2001, 2002), IS NOT NULL($0))])
                                     HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-                              HiveProject(i_item_sk=[$0], i_item_desc=[$4])
-                                HiveFilter(condition=[IS NOT NULL($0)])
-                                  HiveTableScan(table=[[default, item]], 
table:alias=[item])
+              HiveJoin(condition=[=($2, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                HiveProject(i_item_sk=[$0])
+                  HiveAggregate(group=[{1}])
+                    HiveFilter(condition=[>($3, 4)])
+                      HiveProject(substr=[$2], i_item_sk=[$1], d_date=[$0], 
$f3=[$3])
+                        HiveAggregate(group=[{3, 4, 5}], agg#0=[count()])
+                          HiveJoin(condition=[=($1, $4)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                            HiveJoin(condition=[=($0, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                              HiveProject(ss_sold_date_sk=[$0], 
ss_item_sk=[$2])
+                                HiveFilter(condition=[AND(IS NOT NULL($0), IS 
NOT NULL($2))])
+                                  HiveTableScan(table=[[default, 
store_sales]], table:alias=[store_sales])
+                              HiveProject(d_date_sk=[$0], d_date=[$2])
+                                HiveFilter(condition=[AND(IN($6, 1999, 2000, 
2001, 2002), IS NOT NULL($0))])
+                                  HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
+                            HiveProject(i_item_sk=[$0], substr=[substr($4, 1, 
30)])
+                              HiveFilter(condition=[IS NOT NULL($0)])
+                                HiveTableScan(table=[[default, item]], 
table:alias=[item])
                 HiveJoin(condition=[=($0, $5)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(ws_sold_date_sk=[$0], ws_item_sk=[$3], 
ws_bill_customer_sk=[$4], ws_quantity=[$18], ws_list_price=[$20])
                     HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT 
NULL($4), IS NOT NULL($0))])
                       HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
-                  HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_moy=[CAST(1):INTEGER])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(=($6, 1999), =($8, 1), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query24.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query24.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query24.q.out
index 1d005b8..3add88a 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query24.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query24.q.out
@@ -119,50 +119,50 @@ HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3])
     HiveProject(c_last_name=[$1], c_first_name=[$0], s_store_name=[$2], 
$f3=[$3])
       HiveAggregate(group=[{4, 5, 7}], agg#0=[sum($9)])
         HiveProject(i_current_price=[$0], i_size=[$1], i_units=[$2], 
i_manager_id=[$3], c_first_name=[$4], c_last_name=[$5], ca_state=[$6], 
s_store_name=[$7], s_state=[$8], $f9=[$9])
-          HiveAggregate(group=[{8, 9, 11, 12, 15, 16, 19, 23, 25}], 
agg#0=[sum($6)])
+          HiveAggregate(group=[{8, 9, 10, 11, 14, 15, 18, 22, 23}], 
agg#0=[sum($6)])
             HiveJoin(condition=[AND(=($5, $1), =($2, $0))], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveProject(sr_item_sk=[$2], sr_ticket_number=[$9])
                 HiveFilter(condition=[AND(IS NOT NULL($9), IS NOT NULL($2))])
                   HiveTableScan(table=[[default, store_returns]], 
table:alias=[store_returns])
-              HiveJoin(condition=[AND(=($1, $11), =($2, $20))], 
joinType=[inner], algorithm=[none], cost=[not available])
+              HiveJoin(condition=[AND(=($1, $10), =($2, $19))], 
joinType=[inner], algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($0, $5)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(ss_item_sk=[$2], ss_customer_sk=[$3], 
ss_store_sk=[$7], ss_ticket_number=[$9], ss_sales_price=[$13])
                     HiveFilter(condition=[AND(IS NOT NULL($9), IS NOT 
NULL($2), IS NOT NULL($7), IS NOT NULL($3))])
                       HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                  HiveProject(i_item_sk=[$0], i_current_price=[$5], 
i_size=[$15], i_color=[CAST(_UTF-16LE'orchid'):VARCHAR(2147483647) CHARACTER 
SET "UTF-16LE" COLLATE "ISO-8859-1$en_US$primary"], i_units=[$18], 
i_manager_id=[$20])
+                  HiveProject(i_item_sk=[$0], i_current_price=[$5], 
i_size=[$15], i_units=[$18], i_manager_id=[$20])
                     HiveFilter(condition=[AND(=($17, _UTF-16LE'orchid'), IS 
NOT NULL($0))])
                       HiveTableScan(table=[[default, item]], 
table:alias=[item])
-                HiveProject(c_customer_sk=[$0], c_current_addr_sk=[$1], 
c_first_name=[$2], c_last_name=[$3], c_birth_country=[$4], ca_address_sk=[$5], 
ca_state=[$6], ca_zip=[$7], ca_country=[$8], s_store_sk=[$9], 
s_store_name=[$10], s_market_id=[$11], s_state=[$12], s_zip=[$13])
-                  HiveJoin(condition=[AND(=($1, $5), <>($4, UPPER($8)))], 
joinType=[inner], algorithm=[none], cost=[not available])
+                HiveProject(c_customer_sk=[$0], c_current_addr_sk=[$1], 
c_first_name=[$2], c_last_name=[$3], c_birth_country=[$4], ca_address_sk=[$5], 
ca_state=[$6], ca_zip=[$7], UPPER=[$8], s_store_sk=[$9], s_store_name=[$10], 
s_state=[$11], s_zip=[$12])
+                  HiveJoin(condition=[AND(=($1, $5), <>($4, $8))], 
joinType=[inner], algorithm=[none], cost=[not available])
                     HiveProject(c_customer_sk=[$0], c_current_addr_sk=[$4], 
c_first_name=[$8], c_last_name=[$9], c_birth_country=[$14])
                       HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($4))])
                         HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
-                    HiveJoin(condition=[=($8, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                      HiveProject(ca_address_sk=[$0], ca_state=[$8], 
ca_zip=[$9], ca_country=[$10])
+                    HiveJoin(condition=[=($7, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                      HiveProject(ca_address_sk=[$0], ca_state=[$8], 
ca_zip=[$9], UPPER=[UPPER($10)])
                         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($9))])
                           HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
-                      HiveProject(s_store_sk=[$0], s_store_name=[$5], 
s_market_id=[CAST(7):INTEGER], s_state=[$24], s_zip=[$25])
+                      HiveProject(s_store_sk=[$0], s_store_name=[$5], 
s_state=[$24], s_zip=[$25])
                         HiveFilter(condition=[AND(=($10, 7), IS NOT NULL($0), 
IS NOT NULL($25))])
                           HiveTableScan(table=[[default, store]], 
table:alias=[store])
     HiveProject(_o__c0=[*(0.05, /($0, $1))])
       HiveAggregate(group=[{}], agg#0=[sum($10)], agg#1=[count($10)])
         HiveProject(c_first_name=[$0], c_last_name=[$1], ca_state=[$2], 
s_store_name=[$3], s_state=[$4], i_current_price=[$5], i_size=[$6], 
i_color=[$7], i_units=[$8], i_manager_id=[$9], $f10=[$10])
-          HiveAggregate(group=[{7, 8, 11, 15, 17, 20, 21, 22, 23, 24}], 
agg#0=[sum($4)])
-            HiveJoin(condition=[AND(=($3, $26), =($0, $25))], 
joinType=[inner], algorithm=[none], cost=[not available])
-              HiveJoin(condition=[=($0, $19)], joinType=[inner], 
algorithm=[none], cost=[not available])
+          HiveAggregate(group=[{7, 8, 11, 15, 16, 19, 20, 21, 22, 23}], 
agg#0=[sum($4)])
+            HiveJoin(condition=[AND(=($3, $25), =($0, $24))], 
joinType=[inner], algorithm=[none], cost=[not available])
+              HiveJoin(condition=[=($0, $18)], joinType=[inner], 
algorithm=[none], cost=[not available])
                 HiveJoin(condition=[AND(=($1, $5), =($2, $14))], 
joinType=[inner], algorithm=[none], cost=[not available])
                   HiveProject(ss_item_sk=[$2], ss_customer_sk=[$3], 
ss_store_sk=[$7], ss_ticket_number=[$9], ss_sales_price=[$13])
                     HiveFilter(condition=[AND(IS NOT NULL($9), IS NOT 
NULL($2), IS NOT NULL($7), IS NOT NULL($3))])
                       HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                  HiveJoin(condition=[AND(=($1, $5), <>($4, UPPER($8)))], 
joinType=[inner], algorithm=[none], cost=[not available])
+                  HiveJoin(condition=[AND(=($1, $5), <>($4, $8))], 
joinType=[inner], algorithm=[none], cost=[not available])
                     HiveProject(c_customer_sk=[$0], c_current_addr_sk=[$4], 
c_first_name=[$8], c_last_name=[$9], c_birth_country=[$14])
                       HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($4))])
                         HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
-                    HiveJoin(condition=[=($8, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                      HiveProject(ca_address_sk=[$0], ca_state=[$8], 
ca_zip=[$9], ca_country=[$10])
+                    HiveJoin(condition=[=($7, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                      HiveProject(ca_address_sk=[$0], ca_state=[$8], 
ca_zip=[$9], UPPER=[UPPER($10)])
                         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($9))])
                           HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
-                      HiveProject(s_store_sk=[$0], s_store_name=[$5], 
s_market_id=[CAST(7):INTEGER], s_state=[$24], s_zip=[$25])
+                      HiveProject(s_store_sk=[$0], s_store_name=[$5], 
s_state=[$24], s_zip=[$25])
                         HiveFilter(condition=[AND(=($10, 7), IS NOT NULL($0), 
IS NOT NULL($25))])
                           HiveTableScan(table=[[default, store]], 
table:alias=[store])
                 HiveProject(i_item_sk=[$0], i_current_price=[$5], 
i_size=[$15], i_color=[$17], i_units=[$18], i_manager_id=[$20])

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query25.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query25.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query25.q.out
index 88e0cf0..db13a5d 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query25.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query25.q.out
@@ -109,35 +109,35 @@ POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], sort3=[$3], dir0=[ASC], 
dir1=[ASC], dir2=[ASC], dir3=[ASC], fetch=[100])
   HiveProject(i_item_id=[$0], i_item_desc=[$1], s_store_id=[$2], 
s_store_name=[$3], $f4=[$4], $f5=[$5], $f6=[$6])
-    HiveAggregate(group=[{1, 2, 28, 29}], agg#0=[sum($8)], agg#1=[sum($23)], 
agg#2=[sum($15)])
-      HiveJoin(condition=[=($27, $6)], joinType=[inner], algorithm=[none], 
cost=[not available])
+    HiveAggregate(group=[{1, 2, 22, 23}], agg#0=[sum($8)], agg#1=[sum($19)], 
agg#2=[sum($13)])
+      HiveJoin(condition=[=($21, $6)], joinType=[inner], algorithm=[none], 
cost=[not available])
         HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveProject(i_item_sk=[$0], i_item_id=[$1], i_item_desc=[$4])
             HiveFilter(condition=[IS NOT NULL($0)])
               HiveTableScan(table=[[default, item]], table:alias=[item])
-          HiveJoin(condition=[AND(AND(=($2, $18), =($1, $17)), =($4, $19))], 
joinType=[inner], algorithm=[none], cost=[not available])
+          HiveJoin(condition=[AND(AND(=($2, $14), =($1, $13)), =($4, $15))], 
joinType=[inner], algorithm=[none], cost=[not available])
             HiveJoin(condition=[=($6, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2], 
ss_customer_sk=[$3], ss_store_sk=[$7], ss_ticket_number=[$9], 
ss_net_profit=[$22])
                 HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($2), IS 
NOT NULL($9), IS NOT NULL($0), IS NOT NULL($7))])
                   HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-              HiveProject(d_date_sk=[$0], d_year=[CAST(2000):INTEGER], 
d_moy=[CAST(4):INTEGER])
+              HiveProject(d_date_sk=[$0])
                 HiveFilter(condition=[AND(=($8, 4), =($6, 2000), IS NOT 
NULL($0))])
                   HiveTableScan(table=[[default, date_dim]], table:alias=[d1])
-            HiveProject(cs_sold_date_sk=[$0], cs_bill_customer_sk=[$1], 
cs_item_sk=[$2], cs_net_profit=[$3], d_date_sk=[$4], d_year=[$5], d_moy=[$6], 
sr_returned_date_sk=[$7], sr_item_sk=[$8], sr_customer_sk=[$9], 
sr_ticket_number=[$10], sr_net_loss=[$11], d_date_sk0=[$12], d_year0=[$13], 
d_moy0=[$14])
-              HiveJoin(condition=[AND(=($9, $1), =($8, $2))], 
joinType=[inner], algorithm=[none], cost=[not available])
+            HiveProject(cs_sold_date_sk=[$0], cs_bill_customer_sk=[$1], 
cs_item_sk=[$2], cs_net_profit=[$3], d_date_sk=[$4], sr_returned_date_sk=[$5], 
sr_item_sk=[$6], sr_customer_sk=[$7], sr_ticket_number=[$8], sr_net_loss=[$9], 
d_date_sk0=[$10])
+              HiveJoin(condition=[AND(=($7, $1), =($6, $2))], 
joinType=[inner], algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($0, $4)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(cs_sold_date_sk=[$0], cs_bill_customer_sk=[$3], 
cs_item_sk=[$15], cs_net_profit=[$33])
                     HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT 
NULL($15), IS NOT NULL($0))])
                       HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
-                  HiveProject(d_date_sk=[$0], d_year=[CAST(2000):INTEGER], 
d_moy=[$8])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(BETWEEN(false, $8, 4, 10), =($6, 
2000), IS NOT NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[d3])
-                HiveProject(sr_returned_date_sk=[$0], sr_item_sk=[$1], 
sr_customer_sk=[$2], sr_ticket_number=[$3], sr_net_loss=[$4], d_date_sk=[$5], 
d_year=[$6], d_moy=[$7])
+                HiveProject(sr_returned_date_sk=[$0], sr_item_sk=[$1], 
sr_customer_sk=[$2], sr_ticket_number=[$3], sr_net_loss=[$4], d_date_sk=[$5])
                   HiveJoin(condition=[=($0, $5)], joinType=[inner], 
algorithm=[none], cost=[not available])
                     HiveProject(sr_returned_date_sk=[$0], sr_item_sk=[$2], 
sr_customer_sk=[$3], sr_ticket_number=[$9], sr_net_loss=[$19])
                       HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT 
NULL($2), IS NOT NULL($9), IS NOT NULL($0))])
                         HiveTableScan(table=[[default, store_returns]], 
table:alias=[store_returns])
-                    HiveProject(d_date_sk=[$0], d_year=[CAST(2000):INTEGER], 
d_moy=[$8])
+                    HiveProject(d_date_sk=[$0])
                       HiveFilter(condition=[AND(BETWEEN(false, $8, 4, 10), 
=($6, 2000), IS NOT NULL($0))])
                         HiveTableScan(table=[[default, date_dim]], 
table:alias=[d2])
         HiveProject(s_store_sk=[$0], s_store_id=[$1], s_store_name=[$5])

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query26.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query26.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query26.q.out
index 8b36aed..9f51402 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query26.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query26.q.out
@@ -58,19 +58,19 @@ HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100])
         HiveProject(i_item_sk=[$0], i_item_id=[$1])
           HiveFilter(condition=[IS NOT NULL($0)])
             HiveTableScan(table=[[default, item]], table:alias=[item])
-        HiveJoin(condition=[=($3, $14)], joinType=[inner], algorithm=[none], 
cost=[not available])
-          HiveJoin(condition=[=($0, $12)], joinType=[inner], algorithm=[none], 
cost=[not available])
+        HiveJoin(condition=[=($3, $10)], joinType=[inner], algorithm=[none], 
cost=[not available])
+          HiveJoin(condition=[=($0, $9)], joinType=[inner], algorithm=[none], 
cost=[not available])
             HiveJoin(condition=[=($1, $8)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveProject(cs_sold_date_sk=[$0], cs_bill_cdemo_sk=[$4], 
cs_item_sk=[$15], cs_promo_sk=[$16], cs_quantity=[$18], cs_list_price=[$20], 
cs_sales_price=[$21], cs_coupon_amt=[$27])
                 HiveFilter(condition=[AND(IS NOT NULL($4), IS NOT NULL($0), IS 
NOT NULL($15), IS NOT NULL($16))])
                   HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
-              HiveProject(cd_demo_sk=[$0], 
cd_gender=[CAST(_UTF-16LE'F'):VARCHAR(2147483647) CHARACTER SET "UTF-16LE" 
COLLATE "ISO-8859-1$en_US$primary"], 
cd_marital_status=[CAST(_UTF-16LE'W'):VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE" COLLATE "ISO-8859-1$en_US$primary"], 
cd_education_status=[CAST(_UTF-16LE'Primary'):VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE" COLLATE "ISO-8859-1$en_US$primary"])
+              HiveProject(cd_demo_sk=[$0])
                 HiveFilter(condition=[AND(=($1, _UTF-16LE'F'), =($2, 
_UTF-16LE'W'), =($3, _UTF-16LE'Primary'), IS NOT NULL($0))])
                   HiveTableScan(table=[[default, customer_demographics]], 
table:alias=[customer_demographics])
-            HiveProject(d_date_sk=[$0], d_year=[CAST(1998):INTEGER])
+            HiveProject(d_date_sk=[$0])
               HiveFilter(condition=[AND(=($6, 1998), IS NOT NULL($0))])
                 HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-          HiveProject(p_promo_sk=[$0], p_channel_email=[$9], 
p_channel_event=[$14])
+          HiveProject(p_promo_sk=[$0])
             HiveFilter(condition=[AND(OR(=($9, _UTF-16LE'N'), =($14, 
_UTF-16LE'N')), IS NOT NULL($0))])
               HiveTableScan(table=[[default, promotion]], 
table:alias=[promotion])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query27.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query27.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query27.q.out
index 9a6718a..e072692 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query27.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query27.q.out
@@ -58,21 +58,21 @@ CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], dir1=[ASC], fetch=[100])
   HiveProject(i_item_id=[$0], s_state=[$1], g_state=[grouping($10, 0)], 
agg1=[/(CAST($2):DOUBLE, $3)], agg2=[/($4, $5)], agg3=[/($6, $7)], agg4=[/($8, 
$9)])
     HiveAggregate(group=[{0, 1}], groups=[[{0, 1}, {0}, {}]], agg#0=[sum($2)], 
agg#1=[count($2)], agg#2=[sum($3)], agg#3=[count($3)], agg#4=[sum($4)], 
agg#5=[count($4)], agg#6=[sum($5)], agg#7=[count($5)], 
GROUPING__ID=[GROUPING__ID()])
-      HiveProject($f0=[$1], $f1=[$17], $f2=[$6], $f3=[$7], $f4=[$9], $f5=[$8])
+      HiveProject($f0=[$1], $f1=[$13], $f2=[$6], $f3=[$7], $f4=[$9], $f5=[$8])
         HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveProject(i_item_sk=[$0], i_item_id=[$1])
             HiveFilter(condition=[IS NOT NULL($0)])
               HiveTableScan(table=[[default, item]], table:alias=[item])
-          HiveJoin(condition=[=($3, $14)], joinType=[inner], algorithm=[none], 
cost=[not available])
-            HiveJoin(condition=[=($0, $12)], joinType=[inner], 
algorithm=[none], cost=[not available])
+          HiveJoin(condition=[=($3, $10)], joinType=[inner], algorithm=[none], 
cost=[not available])
+            HiveJoin(condition=[=($0, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveJoin(condition=[=($2, $8)], joinType=[inner], 
algorithm=[none], cost=[not available])
                 HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2], 
ss_cdemo_sk=[$4], ss_store_sk=[$7], ss_quantity=[$10], ss_list_price=[$12], 
ss_sales_price=[$13], ss_coupon_amt=[$19])
                   HiveFilter(condition=[AND(IS NOT NULL($4), IS NOT NULL($0), 
IS NOT NULL($7), IS NOT NULL($2))])
                     HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                HiveProject(cd_demo_sk=[$0], 
cd_gender=[CAST(_UTF-16LE'M'):VARCHAR(2147483647) CHARACTER SET "UTF-16LE" 
COLLATE "ISO-8859-1$en_US$primary"], 
cd_marital_status=[CAST(_UTF-16LE'U'):VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE" COLLATE "ISO-8859-1$en_US$primary"], 
cd_education_status=[CAST(_UTF-16LE'2 yr Degree'):VARCHAR(2147483647) CHARACTER 
SET "UTF-16LE" COLLATE "ISO-8859-1$en_US$primary"])
+                HiveProject(cd_demo_sk=[$0])
                   HiveFilter(condition=[AND(=($1, _UTF-16LE'M'), =($2, 
_UTF-16LE'U'), =($3, _UTF-16LE'2 yr Degree'), IS NOT NULL($0))])
                     HiveTableScan(table=[[default, customer_demographics]], 
table:alias=[customer_demographics])
-              HiveProject(d_date_sk=[$0], d_year=[CAST(2001):INTEGER])
+              HiveProject(d_date_sk=[$0])
                 HiveFilter(condition=[AND(=($6, 2001), IS NOT NULL($0))])
                   HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
             HiveProject(s_store_sk=[$0], s_state=[$24])

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query29.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query29.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query29.q.out
index 9f9ffe5..82a914b 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query29.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query29.q.out
@@ -107,35 +107,35 @@ POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], sort3=[$3], dir0=[ASC], 
dir1=[ASC], dir2=[ASC], dir3=[ASC], fetch=[100])
   HiveProject(i_item_id=[$0], i_item_desc=[$1], s_store_id=[$2], 
s_store_name=[$3], $f4=[$4], $f5=[$5], $f6=[$6])
-    HiveAggregate(group=[{7, 8, 27, 28}], agg#0=[sum($14)], agg#1=[sum($22)], 
agg#2=[sum($3)])
-      HiveJoin(condition=[AND(=($20, $1), =($19, $2))], joinType=[inner], 
algorithm=[none], cost=[not available])
+    HiveAggregate(group=[{6, 7, 22, 23}], agg#0=[sum($13)], agg#1=[sum($19)], 
agg#2=[sum($3)])
+      HiveJoin(condition=[AND(=($17, $1), =($16, $2))], joinType=[inner], 
algorithm=[none], cost=[not available])
         HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveProject(cs_sold_date_sk=[$0], cs_bill_customer_sk=[$3], 
cs_item_sk=[$15], cs_quantity=[$18])
             HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT NULL($15), IS 
NOT NULL($0))])
               HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
-          HiveProject(d_date_sk=[$0], d_year=[$6])
+          HiveProject(d_date_sk=[$0])
             HiveFilter(condition=[AND(IN($6, 1999, 2000, 2001), IS NOT 
NULL($0))])
               HiveTableScan(table=[[default, date_dim]], table:alias=[d3])
-        HiveProject(i_item_sk=[$0], i_item_id=[$1], i_item_desc=[$2], 
ss_sold_date_sk=[$3], ss_item_sk=[$4], ss_customer_sk=[$5], ss_store_sk=[$6], 
ss_ticket_number=[$7], ss_quantity=[$8], d_date_sk=[$9], d_year=[$10], 
d_moy=[$11], sr_returned_date_sk=[$12], sr_item_sk=[$13], sr_customer_sk=[$14], 
sr_ticket_number=[$15], sr_return_quantity=[$16], d_date_sk0=[$17], 
d_year0=[$18], d_moy0=[$19], s_store_sk=[$20], s_store_id=[$21], 
s_store_name=[$22])
-          HiveJoin(condition=[=($20, $6)], joinType=[inner], algorithm=[none], 
cost=[not available])
+        HiveProject(i_item_sk=[$0], i_item_id=[$1], i_item_desc=[$2], 
ss_sold_date_sk=[$3], ss_item_sk=[$4], ss_customer_sk=[$5], ss_store_sk=[$6], 
ss_ticket_number=[$7], ss_quantity=[$8], d_date_sk=[$9], 
sr_returned_date_sk=[$10], sr_item_sk=[$11], sr_customer_sk=[$12], 
sr_ticket_number=[$13], sr_return_quantity=[$14], d_date_sk0=[$15], 
s_store_sk=[$16], s_store_id=[$17], s_store_name=[$18])
+          HiveJoin(condition=[=($16, $6)], joinType=[inner], algorithm=[none], 
cost=[not available])
             HiveJoin(condition=[=($0, $4)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveProject(i_item_sk=[$0], i_item_id=[$1], i_item_desc=[$4])
                 HiveFilter(condition=[IS NOT NULL($0)])
                   HiveTableScan(table=[[default, item]], table:alias=[item])
-              HiveJoin(condition=[AND(AND(=($2, $11), =($1, $10)), =($4, 
$12))], joinType=[inner], algorithm=[none], cost=[not available])
+              HiveJoin(condition=[AND(AND(=($2, $9), =($1, $8)), =($4, $10))], 
joinType=[inner], algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($6, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2], 
ss_customer_sk=[$3], ss_store_sk=[$7], ss_ticket_number=[$9], ss_quantity=[$10])
                     HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT 
NULL($2), IS NOT NULL($9), IS NOT NULL($0), IS NOT NULL($7))])
                       HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                  HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_moy=[CAST(4):INTEGER])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(=($8, 4), =($6, 1999), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[d1])
-                HiveProject(sr_returned_date_sk=[$0], sr_item_sk=[$1], 
sr_customer_sk=[$2], sr_ticket_number=[$3], sr_return_quantity=[$4], 
d_date_sk=[$5], d_year=[$6], d_moy=[$7])
+                HiveProject(sr_returned_date_sk=[$0], sr_item_sk=[$1], 
sr_customer_sk=[$2], sr_ticket_number=[$3], sr_return_quantity=[$4], 
d_date_sk=[$5])
                   HiveJoin(condition=[=($0, $5)], joinType=[inner], 
algorithm=[none], cost=[not available])
                     HiveProject(sr_returned_date_sk=[$0], sr_item_sk=[$2], 
sr_customer_sk=[$3], sr_ticket_number=[$9], sr_return_quantity=[$10])
                       HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT 
NULL($2), IS NOT NULL($9), IS NOT NULL($0))])
                         HiveTableScan(table=[[default, store_returns]], 
table:alias=[store_returns])
-                    HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_moy=[$8])
+                    HiveProject(d_date_sk=[$0])
                       HiveFilter(condition=[AND(BETWEEN(false, $8, 4, 7), 
=($6, 1999), IS NOT NULL($0))])
                         HiveTableScan(table=[[default, date_dim]], 
table:alias=[d2])
             HiveProject(s_store_sk=[$0], s_store_id=[$1], s_store_name=[$5])

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query3.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query3.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query3.q.out
index 09c9bb7..b3688f3 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query3.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query3.q.out
@@ -49,16 +49,16 @@ POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$3], sort2=[$1], dir0=[ASC], 
dir1=[DESC-nulls-last], dir2=[ASC], fetch=[100])
   HiveProject(d_year=[$2], i_brand_id=[$0], i_brand=[$1], $f3=[$3])
-    HiveAggregate(group=[{4, 5, 8}], agg#0=[sum($2)])
-      HiveJoin(condition=[=($7, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
+    HiveAggregate(group=[{4, 5, 7}], agg#0=[sum($2)])
+      HiveJoin(condition=[=($6, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
         HiveJoin(condition=[=($1, $3)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2], 
ss_ext_sales_price=[$15])
             HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($2))])
               HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-          HiveProject(i_item_sk=[$0], i_brand_id=[$7], i_brand=[$8], 
i_manufact_id=[CAST(436):INTEGER])
+          HiveProject(i_item_sk=[$0], i_brand_id=[$7], i_brand=[$8])
             HiveFilter(condition=[AND(=($13, 436), IS NOT NULL($0))])
               HiveTableScan(table=[[default, item]], table:alias=[item])
-        HiveProject(d_date_sk=[$0], d_year=[$6], d_moy=[CAST(12):INTEGER])
+        HiveProject(d_date_sk=[$0], d_year=[$6])
           HiveFilter(condition=[AND(=($8, 12), IS NOT NULL($0))])
             HiveTableScan(table=[[default, date_dim]], table:alias=[dt])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query30.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query30.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query30.q.out
index 067b2bc..02e26a7 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query30.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query30.q.out
@@ -70,13 +70,13 @@ POSTHOOK: Input: default@web_returns
 POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], sort3=[$3], sort4=[$4], 
sort5=[$5], sort6=[$6], sort7=[$7], sort8=[$8], sort9=[$9], sort10=[$10], 
sort11=[$11], sort12=[$12], dir0=[ASC], dir1=[ASC], dir2=[ASC], dir3=[ASC], 
dir4=[ASC], dir5=[ASC], dir6=[ASC], dir7=[ASC], dir8=[ASC], dir9=[ASC], 
dir10=[ASC], dir11=[ASC], dir12=[ASC], fetch=[100])
-  HiveProject(c_customer_id=[$1], c_salutation=[$3], c_first_name=[$4], 
c_last_name=[$5], c_preferred_cust_flag=[$6], c_birth_day=[$7], 
c_birth_month=[$8], c_birth_year=[$9], c_birth_country=[$10], c_login=[$11], 
c_email_address=[$12], c_last_review_date=[$13], ctr_total_return=[$18])
-    HiveJoin(condition=[=($16, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
+  HiveProject(c_customer_id=[$1], c_salutation=[$3], c_first_name=[$4], 
c_last_name=[$5], c_preferred_cust_flag=[$6], c_birth_day=[$7], 
c_birth_month=[$8], c_birth_year=[$9], c_birth_country=[$10], c_login=[$11], 
c_email_address=[$12], c_last_review_date=[$13], ctr_total_return=[$17])
+    HiveJoin(condition=[=($15, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
       HiveJoin(condition=[=($14, $2)], joinType=[inner], algorithm=[none], 
cost=[not available])
         HiveProject(c_customer_sk=[$0], c_customer_id=[$1], 
c_current_addr_sk=[$4], c_salutation=[$7], c_first_name=[$8], c_last_name=[$9], 
c_preferred_cust_flag=[$10], c_birth_day=[$11], c_birth_month=[$12], 
c_birth_year=[$13], c_birth_country=[$14], c_login=[$15], 
c_email_address=[$16], c_last_review_date=[$17])
           HiveFilter(condition=[AND(IS NOT NULL($4), IS NOT NULL($0))])
             HiveTableScan(table=[[default, customer]], table:alias=[customer])
-        HiveProject(ca_address_sk=[$0], 
ca_state=[CAST(_UTF-16LE'IL'):VARCHAR(2147483647) CHARACTER SET "UTF-16LE" 
COLLATE "ISO-8859-1$en_US$primary"])
+        HiveProject(ca_address_sk=[$0])
           HiveFilter(condition=[AND(=($8, _UTF-16LE'IL'), IS NOT NULL($0))])
             HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
       HiveProject(wr_returning_customer_sk=[$0], ca_state=[$1], $f2=[$2], 
_o__c0=[$3], ctr_state=[$4])
@@ -91,7 +91,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], sort3=[$3], 
sort4=[$4], sort5=
                   HiveProject(wr_returned_date_sk=[$0], 
wr_returning_customer_sk=[$7], wr_returning_addr_sk=[$10], wr_return_amt=[$15])
                     HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($10), IS NOT NULL($7))])
                       HiveTableScan(table=[[default, web_returns]], 
table:alias=[web_returns])
-                  HiveProject(d_date_sk=[$0], d_year=[CAST(2002):INTEGER])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(=($6, 2002), IS NOT NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
           HiveProject(_o__c0=[*(/($1, $2), 1.2)], ctr_state=[$0])
@@ -106,7 +106,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], 
sort3=[$3], sort4=[$4], sort5=
                       HiveProject(wr_returned_date_sk=[$0], 
wr_returning_customer_sk=[$7], wr_returning_addr_sk=[$10], wr_return_amt=[$15])
                         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($10))])
                           HiveTableScan(table=[[default, web_returns]], 
table:alias=[web_returns])
-                      HiveProject(d_date_sk=[$0], d_year=[CAST(2002):INTEGER])
+                      HiveProject(d_date_sk=[$0])
                         HiveFilter(condition=[AND(=($6, 2002), IS NOT 
NULL($0))])
                           HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query31.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query31.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query31.q.out
index 5143053..8907b8d 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query31.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query31.q.out
@@ -111,22 +111,22 @@ POSTHOOK: Input: default@store_sales
 POSTHOOK: Input: default@web_sales
 POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
-HiveProject(ca_county=[$0], d_year=[CAST(2000):INTEGER], 
web_q1_q2_increase=[/($9, $7)], store_q1_q2_increase=[/($1, $3)], 
web_q2_q3_increase=[/($11, $9)], store_q2_q3_increase=[/($5, $1)])
-  HiveJoin(condition=[AND(AND(=($0, $6), CASE(>($3, 0), CASE(>($7, 0), >(/($9, 
$7), /($1, $3)), >(null, /($1, $3))), CASE(>($7, 0), >(/($9, $7), null), 
null))), CASE(>($1, 0), CASE(>($9, 0), >(/($11, $9), /($5, $1)), >(null, /($5, 
$1))), CASE(>($9, 0), >(/($11, $9), null), null)))], joinType=[inner], 
algorithm=[none], cost=[not available])
-    HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], 
cost=[not available])
-      HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
-        HiveProject(ca_county=[$0], $f1=[$1])
+HiveProject(ca_county=[$8], d_year=[CAST(2000):INTEGER], 
web_q1_q2_increase=[/($6, $1)], store_q1_q2_increase=[/($9, $11)], 
web_q2_q3_increase=[/($4, $6)], store_q2_q3_increase=[/($13, $9)])
+  HiveJoin(condition=[AND(AND(=($8, $0), CASE(>($11, 0), CASE($2, >(/($6, $1), 
/($9, $11)), >(null, /($9, $11))), CASE($2, >(/($6, $1), null), null))), 
CASE(>($9, 0), CASE($7, >(/($4, $6), /($13, $9)), >(null, /($13, $9))), 
CASE($7, >(/($4, $6), null), null)))], joinType=[inner], algorithm=[none], 
cost=[not available])
+    HiveJoin(condition=[=($0, $5)], joinType=[inner], algorithm=[none], 
cost=[not available])
+      HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], 
cost=[not available])
+        HiveProject($f0=[$0], $f3=[$1], >=[>($1, 0)])
           HiveAggregate(group=[{1}], agg#0=[sum($4)])
             HiveJoin(condition=[=($3, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveProject(ca_address_sk=[$0], ca_county=[$7])
                 HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))])
                   HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
               HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], 
ss_ext_sales_price=[$15])
-                  HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($6))])
-                    HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                HiveProject(d_date_sk=[$0], d_year=[CAST(2000):INTEGER], 
d_qoy=[CAST(2):INTEGER])
-                  HiveFilter(condition=[AND(=($10, 2), =($6, 2000), IS NOT 
NULL($0))])
+                HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], 
ws_ext_sales_price=[$23])
+                  HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))])
+                    HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
+                HiveProject(d_date_sk=[$0])
+                  HiveFilter(condition=[AND(=($10, 1), =($6, 2000), IS NOT 
NULL($0))])
                     HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
         HiveProject(ca_county=[$0], $f1=[$1])
           HiveAggregate(group=[{1}], agg#0=[sum($4)])
@@ -135,28 +135,28 @@ HiveProject(ca_county=[$0], d_year=[CAST(2000):INTEGER], 
web_q1_q2_increase=[/($
                 HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))])
                   HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
               HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], 
ss_ext_sales_price=[$15])
-                  HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($6))])
-                    HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                HiveProject(d_date_sk=[$0], d_year=[CAST(2000):INTEGER], 
d_qoy=[CAST(1):INTEGER])
-                  HiveFilter(condition=[AND(=($10, 1), =($6, 2000), IS NOT 
NULL($0))])
+                HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], 
ws_ext_sales_price=[$23])
+                  HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))])
+                    HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
+                HiveProject(d_date_sk=[$0])
+                  HiveFilter(condition=[AND(=($10, 3), =($6, 2000), IS NOT 
NULL($0))])
                     HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-      HiveProject(ca_county=[$0], $f1=[$1])
+      HiveProject($f0=[$0], $f3=[$1], >=[>($1, 0)])
         HiveAggregate(group=[{1}], agg#0=[sum($4)])
           HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
             HiveProject(ca_address_sk=[$0], ca_county=[$7])
               HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))])
                 HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
             HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
-              HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], 
ss_ext_sales_price=[$15])
-                HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($6))])
-                  HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-              HiveProject(d_date_sk=[$0], d_year=[CAST(2000):INTEGER], 
d_qoy=[CAST(3):INTEGER])
-                HiveFilter(condition=[AND(=($10, 3), =($6, 2000), IS NOT 
NULL($0))])
+              HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], 
ws_ext_sales_price=[$23])
+                HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))])
+                  HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
+              HiveProject(d_date_sk=[$0])
+                HiveFilter(condition=[AND(=($10, 2), =($6, 2000), IS NOT 
NULL($0))])
                   HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
     HiveProject(ca_county=[$0], $f1=[$1], ca_county0=[$2], $f10=[$3], 
ca_county1=[$4], $f11=[$5])
       HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], 
cost=[not available])
-        HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], 
cost=[not available])
+        HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveProject(ca_county=[$0], $f1=[$1])
             HiveAggregate(group=[{1}], agg#0=[sum($4)])
               HiveJoin(condition=[=($3, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
@@ -164,11 +164,11 @@ HiveProject(ca_county=[$0], d_year=[CAST(2000):INTEGER], 
web_q1_q2_increase=[/($
                   HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))])
                     HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
                 HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                  HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], 
ws_ext_sales_price=[$23])
-                    HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($7))])
-                      HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
-                  HiveProject(d_date_sk=[$0], d_year=[CAST(2000):INTEGER], 
d_qoy=[CAST(1):INTEGER])
-                    HiveFilter(condition=[AND(=($10, 1), =($6, 2000), IS NOT 
NULL($0))])
+                  HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], 
ss_ext_sales_price=[$15])
+                    HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($6))])
+                      HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
+                  HiveProject(d_date_sk=[$0])
+                    HiveFilter(condition=[AND(=($10, 2), =($6, 2000), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
           HiveProject(ca_county=[$0], $f1=[$1])
             HiveAggregate(group=[{1}], agg#0=[sum($4)])
@@ -177,11 +177,11 @@ HiveProject(ca_county=[$0], d_year=[CAST(2000):INTEGER], 
web_q1_q2_increase=[/($
                   HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))])
                     HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
                 HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                  HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], 
ws_ext_sales_price=[$23])
-                    HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($7))])
-                      HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
-                  HiveProject(d_date_sk=[$0], d_year=[CAST(2000):INTEGER], 
d_qoy=[CAST(2):INTEGER])
-                    HiveFilter(condition=[AND(=($10, 2), =($6, 2000), IS NOT 
NULL($0))])
+                  HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], 
ss_ext_sales_price=[$15])
+                    HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($6))])
+                      HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
+                  HiveProject(d_date_sk=[$0])
+                    HiveFilter(condition=[AND(=($10, 1), =($6, 2000), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
         HiveProject(ca_county=[$0], $f1=[$1])
           HiveAggregate(group=[{1}], agg#0=[sum($4)])
@@ -190,10 +190,10 @@ HiveProject(ca_county=[$0], d_year=[CAST(2000):INTEGER], 
web_q1_q2_increase=[/($
                 HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))])
                   HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
               HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                HiveProject(ws_sold_date_sk=[$0], ws_bill_addr_sk=[$7], 
ws_ext_sales_price=[$23])
-                  HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($7))])
-                    HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
-                HiveProject(d_date_sk=[$0], d_year=[CAST(2000):INTEGER], 
d_qoy=[CAST(3):INTEGER])
+                HiveProject(ss_sold_date_sk=[$0], ss_addr_sk=[$6], 
ss_ext_sales_price=[$15])
+                  HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($6))])
+                    HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
+                HiveProject(d_date_sk=[$0])
                   HiveFilter(condition=[AND(=($10, 3), =($6, 2000), IS NOT 
NULL($0))])
                     HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query32.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query32.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query32.q.out
index 981d478..837a743 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query32.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query32.q.out
@@ -64,26 +64,26 @@ CBO PLAN:
 HiveSortLimit(fetch=[100])
   HiveProject($f0=[$0])
     HiveAggregate(group=[{}], agg#0=[sum($2)])
-      HiveJoin(condition=[AND(>($2, CAST(*(1.3, $6)):DECIMAL(14, 7)), =($7, 
$1))], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveJoin(condition=[AND(>($2, $5), =($6, $1))], joinType=[inner], 
algorithm=[none], cost=[not available])
         HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveProject(cs_sold_date_sk=[$0], cs_item_sk=[$15], 
cs_ext_discount_amt=[$22])
             HiveFilter(condition=[AND(IS NOT NULL($15), IS NOT NULL($0))])
               HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
-          HiveProject(d_date_sk=[$0], d_date=[$2])
+          HiveProject(d_date_sk=[$0])
             HiveFilter(condition=[AND(BETWEEN(false, CAST($2):TIMESTAMP(9), 
1998-03-18 00:00:00, 1998-06-16 00:00:00), IS NOT NULL($0))])
               HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-        HiveProject(cs_item_sk=[$0], $f1=[$1], i_item_sk=[$2], 
i_manufact_id=[$3])
+        HiveProject(cs_item_sk=[$0], CAST=[$1], i_item_sk=[$2])
           HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], 
cost=[not available])
-            HiveProject(cs_item_sk=[$0], $f1=[/($1, $2)])
+            HiveProject(cs_item_sk=[$0], CAST=[CAST(*(1.3, /($1, 
$2))):DECIMAL(14, 7)])
               HiveAggregate(group=[{1}], agg#0=[sum($2)], agg#1=[count($2)])
                 HiveJoin(condition=[=($3, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(cs_sold_date_sk=[$0], cs_item_sk=[$15], 
cs_ext_discount_amt=[$22])
                     HiveFilter(condition=[AND(IS NOT NULL($15), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
-                  HiveProject(d_date_sk=[$0], d_date=[$2])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(BETWEEN(false, 
CAST($2):TIMESTAMP(9), 1998-03-18 00:00:00, 1998-06-16 00:00:00), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-            HiveProject(i_item_sk=[$0], i_manufact_id=[CAST(269):INTEGER])
+            HiveProject(i_item_sk=[$0])
               HiveFilter(condition=[AND(=($13, 269), IS NOT NULL($0))])
                 HiveTableScan(table=[[default, item]], table:alias=[item])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query33.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query33.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query33.q.out
index b5c7f11..8534997 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query33.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query33.q.out
@@ -167,8 +167,8 @@ HiveSortLimit(sort0=[$1], dir0=[ASC], fetch=[100])
       HiveProject(i_manufact_id=[$0], $f1=[$1])
         HiveUnion(all=[true])
           HiveProject(i_manufact_id=[$0], $f1=[$1])
-            HiveAggregate(group=[{1}], agg#0=[sum($8)])
-              HiveJoin(condition=[=($6, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
+            HiveAggregate(group=[{1}], agg#0=[sum($7)])
+              HiveJoin(condition=[=($5, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($1, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(i_item_sk=[$0], i_manufact_id=[$13])
                     HiveFilter(condition=[AND(IS NOT NULL($13), IS NOT 
NULL($0))])
@@ -177,21 +177,21 @@ HiveSortLimit(sort0=[$1], dir0=[ASC], fetch=[100])
                     HiveAggregate(group=[{13}])
                       HiveFilter(condition=[AND(=($12, _UTF-16LE'Books'), IS 
NOT NULL($13))])
                         HiveTableScan(table=[[default, item]], 
table:alias=[item])
-                HiveProject(ca_address_sk=[$0], ca_gmt_offset=[$1], 
ss_sold_date_sk=[$2], ss_item_sk=[$3], ss_addr_sk=[$4], 
ss_ext_sales_price=[$5], d_date_sk=[$6], d_year=[$7], d_moy=[$8])
-                  HiveJoin(condition=[=($4, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                    HiveProject(ca_address_sk=[$0], 
ca_gmt_offset=[CAST(-6):DECIMAL(5, 2)])
+                HiveProject(ca_address_sk=[$0], ss_sold_date_sk=[$1], 
ss_item_sk=[$2], ss_addr_sk=[$3], ss_ext_sales_price=[$4], d_date_sk=[$5])
+                  HiveJoin(condition=[=($3, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                    HiveProject(ca_address_sk=[$0])
                       HiveFilter(condition=[AND(=($11, -6), IS NOT NULL($0))])
                         HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
                     HiveJoin(condition=[=($0, $4)], joinType=[inner], 
algorithm=[none], cost=[not available])
                       HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2], 
ss_addr_sk=[$6], ss_ext_sales_price=[$15])
                         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($6), IS NOT NULL($2))])
                           HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                      HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_moy=[CAST(3):INTEGER])
+                      HiveProject(d_date_sk=[$0])
                         HiveFilter(condition=[AND(=($6, 1999), =($8, 3), IS 
NOT NULL($0))])
                           HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
           HiveProject(i_manufact_id=[$0], $f1=[$1])
-            HiveAggregate(group=[{1}], agg#0=[sum($8)])
-              HiveJoin(condition=[=($7, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
+            HiveAggregate(group=[{1}], agg#0=[sum($7)])
+              HiveJoin(condition=[=($6, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($1, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(i_item_sk=[$0], i_manufact_id=[$13])
                     HiveFilter(condition=[AND(IS NOT NULL($13), IS NOT 
NULL($0))])
@@ -200,21 +200,21 @@ HiveSortLimit(sort0=[$1], dir0=[ASC], fetch=[100])
                     HiveAggregate(group=[{13}])
                       HiveFilter(condition=[AND(=($12, _UTF-16LE'Books'), IS 
NOT NULL($13))])
                         HiveTableScan(table=[[default, item]], 
table:alias=[item])
-                HiveProject(ca_address_sk=[$0], ca_gmt_offset=[$1], 
cs_sold_date_sk=[$2], cs_bill_addr_sk=[$3], cs_item_sk=[$4], 
cs_ext_sales_price=[$5], d_date_sk=[$6], d_year=[$7], d_moy=[$8])
-                  HiveJoin(condition=[=($3, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                    HiveProject(ca_address_sk=[$0], 
ca_gmt_offset=[CAST(-6):DECIMAL(5, 2)])
+                HiveProject(ca_address_sk=[$0], cs_sold_date_sk=[$1], 
cs_bill_addr_sk=[$2], cs_item_sk=[$3], cs_ext_sales_price=[$4], d_date_sk=[$5])
+                  HiveJoin(condition=[=($2, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                    HiveProject(ca_address_sk=[$0])
                       HiveFilter(condition=[AND(=($11, -6), IS NOT NULL($0))])
                         HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
                     HiveJoin(condition=[=($0, $4)], joinType=[inner], 
algorithm=[none], cost=[not available])
                       HiveProject(cs_sold_date_sk=[$0], cs_bill_addr_sk=[$6], 
cs_item_sk=[$15], cs_ext_sales_price=[$23])
                         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($6), IS NOT NULL($15))])
                           HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
-                      HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_moy=[CAST(3):INTEGER])
+                      HiveProject(d_date_sk=[$0])
                         HiveFilter(condition=[AND(=($6, 1999), =($8, 3), IS 
NOT NULL($0))])
                           HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
           HiveProject(i_manufact_id=[$0], $f1=[$1])
-            HiveAggregate(group=[{1}], agg#0=[sum($8)])
-              HiveJoin(condition=[=($6, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
+            HiveAggregate(group=[{1}], agg#0=[sum($7)])
+              HiveJoin(condition=[=($5, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($1, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(i_item_sk=[$0], i_manufact_id=[$13])
                     HiveFilter(condition=[AND(IS NOT NULL($13), IS NOT 
NULL($0))])
@@ -223,16 +223,16 @@ HiveSortLimit(sort0=[$1], dir0=[ASC], fetch=[100])
                     HiveAggregate(group=[{13}])
                       HiveFilter(condition=[AND(=($12, _UTF-16LE'Books'), IS 
NOT NULL($13))])
                         HiveTableScan(table=[[default, item]], 
table:alias=[item])
-                HiveProject(ca_address_sk=[$0], ca_gmt_offset=[$1], 
ws_sold_date_sk=[$2], ws_item_sk=[$3], ws_bill_addr_sk=[$4], 
ws_ext_sales_price=[$5], d_date_sk=[$6], d_year=[$7], d_moy=[$8])
-                  HiveJoin(condition=[=($4, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                    HiveProject(ca_address_sk=[$0], 
ca_gmt_offset=[CAST(-6):DECIMAL(5, 2)])
+                HiveProject(ca_address_sk=[$0], ws_sold_date_sk=[$1], 
ws_item_sk=[$2], ws_bill_addr_sk=[$3], ws_ext_sales_price=[$4], d_date_sk=[$5])
+                  HiveJoin(condition=[=($3, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                    HiveProject(ca_address_sk=[$0])
                       HiveFilter(condition=[AND(=($11, -6), IS NOT NULL($0))])
                         HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
                     HiveJoin(condition=[=($0, $4)], joinType=[inner], 
algorithm=[none], cost=[not available])
                       HiveProject(ws_sold_date_sk=[$0], ws_item_sk=[$3], 
ws_bill_addr_sk=[$7], ws_ext_sales_price=[$23])
                         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($7), IS NOT NULL($3))])
                           HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
-                      HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_moy=[CAST(3):INTEGER])
+                      HiveProject(d_date_sk=[$0])
                         HiveFilter(condition=[AND(=($6, 1999), =($8, 3), IS 
NOT NULL($0))])
                           HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query34.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query34.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query34.q.out
index 4e50a1c..9299409 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query34.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query34.q.out
@@ -81,19 +81,19 @@ HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], 
sort3=[$3], dir0=[ASC], dir1=[
         HiveFilter(condition=[BETWEEN(false, $2, 15, 20)])
           HiveProject(ss_ticket_number=[$1], ss_customer_sk=[$0], $f2=[$2])
             HiveAggregate(group=[{1, 4}], agg#0=[count()])
-              HiveJoin(condition=[=($3, $12)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                HiveJoin(condition=[=($2, $8)], joinType=[inner], 
algorithm=[none], cost=[not available])
+              HiveJoin(condition=[=($3, $7)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                HiveJoin(condition=[=($2, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveJoin(condition=[=($0, $5)], joinType=[inner], 
algorithm=[none], cost=[not available])
                     HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[$3], 
ss_hdemo_sk=[$5], ss_store_sk=[$7], ss_ticket_number=[$9])
                       HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($7), IS NOT NULL($5), IS NOT NULL($3))])
                         HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                    HiveProject(d_date_sk=[$0], d_year=[$6], d_dom=[$9])
+                    HiveProject(d_date_sk=[$0])
                       HiveFilter(condition=[AND(IN($6, 2000, 2001, 2002), 
OR(BETWEEN(false, $9, 1, 3), BETWEEN(false, $9, 25, 28)), IS NOT NULL($0))])
                         HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-                  HiveProject(hd_demo_sk=[$0], hd_buy_potential=[$2], 
hd_dep_count=[$3], hd_vehicle_count=[$4])
+                  HiveProject(hd_demo_sk=[$0])
                     HiveFilter(condition=[AND(IN($2, _UTF-16LE'>10000', 
_UTF-16LE'unknown'), >($4, 0), CASE(>($4, 0), >(/(CAST($3):DOUBLE, 
CAST($4):DOUBLE), 1.2), null), IS NOT NULL($0))])
                       HiveTableScan(table=[[default, household_demographics]], 
table:alias=[household_demographics])
-                HiveProject(s_store_sk=[$0], s_county=[$23])
+                HiveProject(s_store_sk=[$0])
                   HiveFilter(condition=[AND(IN($23, _UTF-16LE'Mobile County', 
_UTF-16LE'Maverick County', _UTF-16LE'Huron County', _UTF-16LE'Kittitas 
County', _UTF-16LE'Fairfield County', _UTF-16LE'Jackson County', 
_UTF-16LE'Barrow County', _UTF-16LE'Pennington County'), IS NOT NULL($0))])
                     HiveTableScan(table=[[default, store]], 
table:alias=[store])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query35.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query35.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query35.q.out
index 2b8a453..f14a2bd 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query35.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query35.q.out
@@ -151,7 +151,7 @@ HiveProject(ca_state=[$0], cd_gender=[$1], 
cd_marital_status=[$2], cnt1=[$3], _o
                     HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[$3])
                       HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT 
NULL($0))])
                         HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                    HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_qoy=[$10])
+                    HiveProject(d_date_sk=[$0])
                       HiveFilter(condition=[AND(=($6, 1999), <($10, 4), IS NOT 
NULL($0))])
                         HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
               HiveProject(ws_bill_customer_sk0=[$0], $f1=[true])
@@ -160,7 +160,7 @@ HiveProject(ca_state=[$0], cd_gender=[$1], 
cd_marital_status=[$2], cnt1=[$3], _o
                     HiveProject(ws_sold_date_sk=[$0], ws_bill_customer_sk=[$4])
                       HiveFilter(condition=[AND(IS NOT NULL($4), IS NOT 
NULL($0))])
                         HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
-                    HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_qoy=[$10])
+                    HiveProject(d_date_sk=[$0])
                       HiveFilter(condition=[AND(=($6, 1999), <($10, 4), IS NOT 
NULL($0))])
                         HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
             HiveProject(cs_ship_customer_sk0=[$0], $f1=[true])
@@ -169,7 +169,7 @@ HiveProject(ca_state=[$0], cd_gender=[$1], 
cd_marital_status=[$2], cnt1=[$3], _o
                   HiveProject(cs_sold_date_sk=[$0], cs_ship_customer_sk=[$7])
                     HiveFilter(condition=[AND(IS NOT NULL($7), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
-                  HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_qoy=[$10])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(=($6, 1999), <($10, 4), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query36.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query36.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query36.q.out
index b2a713f..9a74bed 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query36.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query36.q.out
@@ -72,17 +72,17 @@ HiveProject(gross_margin=[$0], i_category=[$1], 
i_class=[$2], lochierarchy=[$3],
     HiveProject(gross_margin=[/($2, $3)], i_category=[$0], i_class=[$1], 
lochierarchy=[+(grouping($4, 1), grouping($4, 0))], rank_within_parent=[rank() 
OVER (PARTITION BY +(grouping($4, 1), grouping($4, 0)), CASE(=(grouping($4, 0), 
0), $0, null) ORDER BY /($2, $3) NULLS FIRST ROWS BETWEEN 2147483647 FOLLOWING 
AND 2147483647 PRECEDING)], (tok_function when (= (tok_table_or_col 
lochierarchy) 0) (tok_table_or_col i_category))=[CASE(=(+(grouping($4, 1), 
grouping($4, 0)), 0), $0, null)])
       HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3], GROUPING__ID=[$4])
         HiveAggregate(group=[{0, 1}], groups=[[{0, 1}, {0}, {}]], 
agg#0=[sum($2)], agg#1=[sum($3)], GROUPING__ID=[GROUPING__ID()])
-          HiveProject($f0=[$11], $f1=[$10], $f2=[$4], $f3=[$3])
-            HiveJoin(condition=[=($9, $1)], joinType=[inner], 
algorithm=[none], cost=[not available])
-              HiveJoin(condition=[=($7, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
+          HiveProject($f0=[$9], $f1=[$8], $f2=[$4], $f3=[$3])
+            HiveJoin(condition=[=($7, $1)], joinType=[inner], 
algorithm=[none], cost=[not available])
+              HiveJoin(condition=[=($6, $2)], joinType=[inner], 
algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($5, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2], 
ss_store_sk=[$7], ss_ext_sales_price=[$15], ss_net_profit=[$22])
                     HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($2), IS NOT NULL($7))])
                       HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                  HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(=($6, 1999), IS NOT NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[d1])
-                HiveProject(s_store_sk=[$0], s_state=[$24])
+                HiveProject(s_store_sk=[$0])
                   HiveFilter(condition=[AND(IN($24, _UTF-16LE'SD', 
_UTF-16LE'FL', _UTF-16LE'MI', _UTF-16LE'LA', _UTF-16LE'MO', _UTF-16LE'SC', 
_UTF-16LE'AL', _UTF-16LE'GA'), IS NOT NULL($0))])
                     HiveTableScan(table=[[default, store]], 
table:alias=[store])
               HiveProject(i_item_sk=[$0], i_class=[$10], i_category=[$12])

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query37.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query37.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query37.q.out
index 0edc78b..07b9901 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query37.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query37.q.out
@@ -44,20 +44,20 @@ CBO PLAN:
 HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100])
   HiveProject(i_item_id=[$0], i_item_desc=[$1], i_current_price=[$2])
     HiveAggregate(group=[{2, 3, 4}])
-      HiveJoin(condition=[=($7, $1)], joinType=[inner], algorithm=[none], 
cost=[not available])
+      HiveJoin(condition=[=($6, $1)], joinType=[inner], algorithm=[none], 
cost=[not available])
         HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveProject(cs_item_sk=[$15])
             HiveFilter(condition=[IS NOT NULL($15)])
               HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
-          HiveProject(i_item_sk=[$0], i_item_id=[$1], i_item_desc=[$4], 
i_current_price=[$5], i_manufact_id=[$13])
+          HiveProject(i_item_sk=[$0], i_item_id=[$1], i_item_desc=[$4], 
i_current_price=[$5])
             HiveFilter(condition=[AND(IN($13, 678, 964, 918, 849), 
BETWEEN(false, $5, 22, 52), IS NOT NULL($0))])
               HiveTableScan(table=[[default, item]], table:alias=[item])
-        HiveProject(inv_date_sk=[$0], inv_item_sk=[$1], 
inv_quantity_on_hand=[$2], d_date_sk=[$3], d_date=[$4])
-          HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
-            HiveProject(inv_date_sk=[$0], inv_item_sk=[$1], 
inv_quantity_on_hand=[$3])
+        HiveProject(inv_date_sk=[$0], inv_item_sk=[$1], d_date_sk=[$2])
+          HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
+            HiveProject(inv_date_sk=[$0], inv_item_sk=[$1])
               HiveFilter(condition=[AND(BETWEEN(false, $3, 100, 500), IS NOT 
NULL($1), IS NOT NULL($0))])
                 HiveTableScan(table=[[default, inventory]], 
table:alias=[inventory])
-            HiveProject(d_date_sk=[$0], d_date=[$2])
+            HiveProject(d_date_sk=[$0])
               HiveFilter(condition=[AND(BETWEEN(false, CAST($2):TIMESTAMP(9), 
2001-06-02 00:00:00, 2001-08-01 00:00:00), IS NOT NULL($0))])
                 HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
 

Reply via email to