http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query38.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query38.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query38.q.out
index 9633df1..cbf9bca 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query38.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query38.q.out
@@ -75,7 +75,7 @@ HiveSortLimit(fetch=[100])
                             HiveProject(ss_sold_date_sk=[$0], 
ss_customer_sk=[$3])
                               HiveFilter(condition=[AND(IS NOT NULL($0), IS 
NOT NULL($3))])
                                 HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                            HiveProject(d_date_sk=[$0], d_date=[$2], 
d_month_seq=[$3])
+                            HiveProject(d_date_sk=[$0], d_date=[$2])
                               HiveFilter(condition=[AND(BETWEEN(false, $3, 
1212, 1223), IS NOT NULL($0))])
                                 HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
                 HiveProject(c_last_name=[$1], c_first_name=[$0], d_date=[$2], 
$f3=[$3])
@@ -90,7 +90,7 @@ HiveSortLimit(fetch=[100])
                             HiveProject(cs_sold_date_sk=[$0], 
cs_bill_customer_sk=[$3])
                               HiveFilter(condition=[AND(IS NOT NULL($0), IS 
NOT NULL($3))])
                                 HiveTableScan(table=[[default, 
catalog_sales]], table:alias=[catalog_sales])
-                            HiveProject(d_date_sk=[$0], d_date=[$2], 
d_month_seq=[$3])
+                            HiveProject(d_date_sk=[$0], d_date=[$2])
                               HiveFilter(condition=[AND(BETWEEN(false, $3, 
1212, 1223), IS NOT NULL($0))])
                                 HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
                 HiveProject(c_last_name=[$1], c_first_name=[$0], d_date=[$2], 
$f3=[$3])
@@ -105,7 +105,7 @@ HiveSortLimit(fetch=[100])
                             HiveProject(ws_sold_date_sk=[$0], 
ws_bill_customer_sk=[$4])
                               HiveFilter(condition=[AND(IS NOT NULL($0), IS 
NOT NULL($4))])
                                 HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
-                            HiveProject(d_date_sk=[$0], d_date=[$2], 
d_month_seq=[$3])
+                            HiveProject(d_date_sk=[$0], d_date=[$2])
                               HiveFilter(condition=[AND(BETWEEN(false, $3, 
1212, 1223), 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_query39.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query39.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query39.q.out
index fd3038e..51bb901 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query39.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query39.q.out
@@ -68,8 +68,8 @@ HiveProject(w_warehouse_sk=[$0], i_item_sk=[$1], 
d_moy=[CAST(4):INTEGER], mean=[
         HiveProject(w_warehouse_sk=[$1], i_item_sk=[$2], 
mean=[/(CAST($6):DOUBLE, $5)], cov=[CASE(=(/(CAST($6):DOUBLE, $5), 0), null, 
/(POWER(/(-($3, /(*($4, $4), $5)), CASE(=($5, 1), null, -($5, 1))), 0.5), 
/(CAST($6):DOUBLE, $5)))])
           HiveFilter(condition=[CASE(=(/(CAST($6):DOUBLE, $5), 0), false, 
>(/(POWER(/(-($3, /(*($4, $4), $5)), CASE(=($5, 1), null, -($5, 1))), 0.5), 
/(CAST($6):DOUBLE, $5)), 1))])
             HiveAggregate(group=[{0, 1, 2}], agg#0=[sum($5)], agg#1=[sum($4)], 
agg#2=[count($3)], agg#3=[sum($3)])
-              HiveProject($f0=[$9], $f1=[$8], $f2=[$0], $f4=[$4], 
$f40=[CAST($4):DOUBLE], $f6=[*(CAST($4):DOUBLE, CAST($4):DOUBLE)])
-                HiveJoin(condition=[=($3, $8)], joinType=[inner], 
algorithm=[none], cost=[not available])
+              HiveProject($f0=[$7], $f1=[$6], $f2=[$0], $f4=[$4], 
$f40=[CAST($4):DOUBLE], $f6=[*(CAST($4):DOUBLE, CAST($4):DOUBLE)])
+                HiveJoin(condition=[=($3, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveJoin(condition=[=($2, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
                     HiveProject(i_item_sk=[$0])
                       HiveFilter(condition=[IS NOT NULL($0)])
@@ -78,7 +78,7 @@ HiveProject(w_warehouse_sk=[$0], i_item_sk=[$1], 
d_moy=[CAST(4):INTEGER], mean=[
                       HiveProject(inv_date_sk=[$0], inv_item_sk=[$1], 
inv_warehouse_sk=[$2], inv_quantity_on_hand=[$3])
                         HiveFilter(condition=[AND(IS NOT NULL($1), IS NOT 
NULL($2), IS NOT NULL($0))])
                           HiveTableScan(table=[[default, inventory]], 
table:alias=[inventory])
-                      HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_moy=[CAST(4):INTEGER])
+                      HiveProject(d_date_sk=[$0])
                         HiveFilter(condition=[AND(=($6, 1999), =($8, 4), IS 
NOT NULL($0))])
                           HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
                   HiveProject(w_warehouse_sk=[$0], w_warehouse_name=[$2])
@@ -87,8 +87,8 @@ HiveProject(w_warehouse_sk=[$0], i_item_sk=[$1], 
d_moy=[CAST(4):INTEGER], mean=[
         HiveProject(w_warehouse_sk=[$1], i_item_sk=[$2], 
mean=[/(CAST($6):DOUBLE, $5)], cov=[CASE(=(/(CAST($6):DOUBLE, $5), 0), null, 
/(POWER(/(-($3, /(*($4, $4), $5)), CASE(=($5, 1), null, -($5, 1))), 0.5), 
/(CAST($6):DOUBLE, $5)))])
           HiveFilter(condition=[CASE(=(/(CAST($6):DOUBLE, $5), 0), false, 
>(/(POWER(/(-($3, /(*($4, $4), $5)), CASE(=($5, 1), null, -($5, 1))), 0.5), 
/(CAST($6):DOUBLE, $5)), 1))])
             HiveAggregate(group=[{0, 1, 2}], agg#0=[sum($5)], agg#1=[sum($4)], 
agg#2=[count($3)], agg#3=[sum($3)])
-              HiveProject($f0=[$9], $f1=[$8], $f2=[$0], $f4=[$4], 
$f40=[CAST($4):DOUBLE], $f6=[*(CAST($4):DOUBLE, CAST($4):DOUBLE)])
-                HiveJoin(condition=[=($3, $8)], joinType=[inner], 
algorithm=[none], cost=[not available])
+              HiveProject($f0=[$7], $f1=[$6], $f2=[$0], $f4=[$4], 
$f40=[CAST($4):DOUBLE], $f6=[*(CAST($4):DOUBLE, CAST($4):DOUBLE)])
+                HiveJoin(condition=[=($3, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveJoin(condition=[=($2, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
                     HiveProject(i_item_sk=[$0])
                       HiveFilter(condition=[IS NOT NULL($0)])
@@ -97,7 +97,7 @@ HiveProject(w_warehouse_sk=[$0], i_item_sk=[$1], 
d_moy=[CAST(4):INTEGER], mean=[
                       HiveProject(inv_date_sk=[$0], inv_item_sk=[$1], 
inv_warehouse_sk=[$2], inv_quantity_on_hand=[$3])
                         HiveFilter(condition=[AND(IS NOT NULL($1), IS NOT 
NULL($2), IS NOT NULL($0))])
                           HiveTableScan(table=[[default, inventory]], 
table:alias=[inventory])
-                      HiveProject(d_date_sk=[$0], d_year=[CAST(1999):INTEGER], 
d_moy=[CAST(5):INTEGER])
+                      HiveProject(d_date_sk=[$0])
                         HiveFilter(condition=[AND(=($6, 1999), =($8, 5), IS 
NOT NULL($0))])
                           HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
                   HiveProject(w_warehouse_sk=[$0], w_warehouse_name=[$2])

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query4.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query4.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query4.q.out
index d796f86..4b38865 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query4.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query4.q.out
@@ -229,96 +229,90 @@ POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
 HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100])
   HiveProject(customer_preferred_cust_flag=[$1])
-    HiveJoin(condition=[AND(=($0, $7), CASE(CAST(IS NOT NULL($8)):BOOLEAN, 
CASE(CAST(IS NOT NULL($10)):BOOLEAN, >(/($4, $10), /($2, $8)), >(null, /($2, 
$8))), CASE(CAST(IS NOT NULL($10)):BOOLEAN, >(/($4, $10), null), null)))], 
joinType=[inner], algorithm=[none], cost=[not available])
+    HiveJoin(condition=[AND(=($0, $7), CASE(CAST(IS NOT NULL($8)):BOOLEAN, 
CASE($14, >(/($4, $13), /($2, $8)), >(null, /($2, $8))), CASE($14, >(/($4, 
$13), null), null)))], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject($f0=[$0], $f3=[$3], $f8=[$7])
-        HiveAggregate(group=[{0, 1, 2, 3, 4, 5, 6}], agg#0=[sum($7)])
-          HiveProject($f0=[$1], $f1=[$2], $f2=[$3], $f3=[$4], $f4=[$5], 
$f5=[$6], $f6=[$7], $f8=[/(+(-(-($13, $12), $10), $11), CAST(2):DECIMAL(10, 
0))])
+        HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)])
+          HiveJoin(condition=[=($0, $9)], joinType=[inner], algorithm=[none], 
cost=[not available])
+            HiveProject(c_customer_sk=[$0], c_customer_id=[$1], 
c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], 
c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
+              HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                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], 
/=[/(+(-(-($17, $16), $14), $15), CAST(2):DECIMAL(10, 0))])
+                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(=($6, 2002), IS NOT NULL($0))])
+                  HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
+      HiveJoin(condition=[AND(=($4, $0), CASE($8, CASE($11, >(/($1, $10), 
/($3, $7)), >(null, /($3, $7))), CASE($11, >(/($1, $10), null), null)))], 
joinType=[inner], algorithm=[none], cost=[not available])
+        HiveProject($f0=[$0], $f8=[$7])
+          HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)])
             HiveJoin(condition=[=($0, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveProject(c_customer_sk=[$0], c_customer_id=[$1], 
c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], 
c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
                 HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
                   HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
-              HiveJoin(condition=[=($0, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[$3], 
ss_ext_discount_amt=[$14], ss_ext_sales_price=[$15], 
ss_ext_wholesale_cost=[$16], ss_ext_list_price=[$17])
+              HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                HiveProject(cs_sold_date_sk=[$0], cs_bill_customer_sk=[$3], 
/=[/(+(-(-($25, $24), $22), $23), CAST(2):DECIMAL(10, 0))])
                   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(2002):INTEGER])
+                    HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
+                HiveProject(d_date_sk=[$0])
                   HiveFilter(condition=[AND(=($6, 2002), IS NOT NULL($0))])
                     HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-      HiveJoin(condition=[AND(=($4, $0), CASE(CAST(IS NOT NULL($9)):BOOLEAN, 
CASE(CAST(IS NOT NULL($7)):BOOLEAN, >(/($1, $7), /($3, $9)), >(null, /($3, 
$9))), CASE(CAST(IS NOT NULL($7)):BOOLEAN, >(/($1, $7), null), null)))], 
joinType=[inner], algorithm=[none], cost=[not available])
-        HiveProject($f0=[$0], $f8=[$7])
-          HiveAggregate(group=[{0, 1, 2, 3, 4, 5, 6}], agg#0=[sum($7)])
-            HiveProject($f0=[$1], $f1=[$2], $f2=[$3], $f3=[$4], $f4=[$5], 
$f5=[$6], $f6=[$7], $f8=[/(+(-(-($13, $12), $10), $11), CAST(2):DECIMAL(10, 
0))])
-              HiveJoin(condition=[=($0, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                HiveProject(c_customer_sk=[$0], c_customer_id=[$1], 
c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], 
c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
-                  HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                    HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
-                HiveJoin(condition=[=($0, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                  HiveProject(cs_sold_date_sk=[$0], cs_bill_customer_sk=[$3], 
cs_ext_discount_amt=[$22], cs_ext_sales_price=[$23], 
cs_ext_wholesale_cost=[$24], cs_ext_list_price=[$25])
-                    HiveFilter(condition=[AND(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(2002):INTEGER])
-                    HiveFilter(condition=[AND(=($6, 2002), IS NOT NULL($0))])
-                      HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-        HiveJoin(condition=[=($2, $6)], joinType=[inner], algorithm=[none], 
cost=[not available])
+        HiveJoin(condition=[=($2, $7)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveJoin(condition=[=($2, $4)], joinType=[inner], algorithm=[none], 
cost=[not available])
             HiveJoin(condition=[=($2, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveProject($f0=[$0], $f8=[$7])
-                HiveAggregate(group=[{0, 1, 2, 3, 4, 5, 6}], agg#0=[sum($7)])
-                  HiveProject($f0=[$1], $f1=[$2], $f2=[$3], $f3=[$4], 
$f4=[$5], $f5=[$6], $f6=[$7], $f8=[/(+(-(-($13, $12), $10), $11), 
CAST(2):DECIMAL(10, 0))])
-                    HiveJoin(condition=[=($0, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                      HiveProject(c_customer_sk=[$0], c_customer_id=[$1], 
c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], 
c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
-                        HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($1))])
-                          HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
-                      HiveJoin(condition=[=($0, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                        HiveProject(ws_sold_date_sk=[$0], 
ws_bill_customer_sk=[$4], ws_ext_discount_amt=[$22], ws_ext_sales_price=[$23], 
ws_ext_wholesale_cost=[$24], ws_ext_list_price=[$25])
-                          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(2002):INTEGER])
-                          HiveFilter(condition=[AND(=($6, 2002), IS NOT 
NULL($0))])
-                            HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
+                HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)])
+                  HiveJoin(condition=[=($0, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                    HiveProject(c_customer_sk=[$0], c_customer_id=[$1], 
c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], 
c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
+                      HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($1))])
+                        HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
+                    HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                      HiveProject(ws_sold_date_sk=[$0], 
ws_bill_customer_sk=[$4], /=[/(+(-(-($25, $24), $22), $23), CAST(2):DECIMAL(10, 
0))])
+                        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])
+                        HiveFilter(condition=[AND(=($6, 2002), IS NOT 
NULL($0))])
+                          HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
               HiveProject($f0=[$0], $f8=[$7])
                 HiveFilter(condition=[>($7, 0)])
-                  HiveAggregate(group=[{0, 1, 2, 3, 4, 5, 6}], agg#0=[sum($7)])
-                    HiveProject($f0=[$1], $f1=[$2], $f2=[$3], $f3=[$4], 
$f4=[$5], $f5=[$6], $f6=[$7], $f8=[/(+(-(-($13, $12), $10), $11), 
CAST(2):DECIMAL(10, 0))])
-                      HiveJoin(condition=[=($0, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                        HiveProject(c_customer_sk=[$0], c_customer_id=[$1], 
c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], 
c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
-                          HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($1))])
-                            HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
-                        HiveJoin(condition=[=($0, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                          HiveProject(ss_sold_date_sk=[$0], 
ss_customer_sk=[$3], ss_ext_discount_amt=[$14], ss_ext_sales_price=[$15], 
ss_ext_wholesale_cost=[$16], ss_ext_list_price=[$17])
-                            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(2001):INTEGER])
-                            HiveFilter(condition=[AND(=($6, 2001), IS NOT 
NULL($0))])
-                              HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-            HiveProject($f0=[$0], $f8=[$7])
-              HiveFilter(condition=[>($7, 0)])
-                HiveAggregate(group=[{0, 1, 2, 3, 4, 5, 6}], agg#0=[sum($7)])
-                  HiveProject($f0=[$1], $f1=[$2], $f2=[$3], $f3=[$4], 
$f4=[$5], $f5=[$6], $f6=[$7], $f8=[/(+(-(-($13, $12), $10), $11), 
CAST(2):DECIMAL(10, 0))])
+                  HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], 
agg#0=[sum($10)])
                     HiveJoin(condition=[=($0, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
                       HiveProject(c_customer_sk=[$0], c_customer_id=[$1], 
c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], 
c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
                         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($1))])
                           HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
-                      HiveJoin(condition=[=($0, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                        HiveProject(cs_sold_date_sk=[$0], 
cs_bill_customer_sk=[$3], cs_ext_discount_amt=[$22], cs_ext_sales_price=[$23], 
cs_ext_wholesale_cost=[$24], cs_ext_list_price=[$25])
+                      HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                        HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[$3], 
/=[/(+(-(-($17, $16), $14), $15), CAST(2):DECIMAL(10, 0))])
                           HiveFilter(condition=[AND(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(2001):INTEGER])
+                            HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
+                        HiveProject(d_date_sk=[$0])
                           HiveFilter(condition=[AND(=($6, 2001), IS NOT 
NULL($0))])
                             HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-          HiveProject($f0=[$0], $f8=[$7])
-            HiveFilter(condition=[>($7, 0)])
-              HiveAggregate(group=[{0, 1, 2, 3, 4, 5, 6}], agg#0=[sum($7)])
-                HiveProject($f0=[$1], $f1=[$2], $f2=[$3], $f3=[$4], $f4=[$5], 
$f5=[$6], $f6=[$7], $f8=[/(+(-(-($13, $12), $10), $11), CAST(2):DECIMAL(10, 
0))])
+            HiveProject(customer_id=[$0], year_total=[$7], CAST=[CAST(IS NOT 
NULL($7)):BOOLEAN])
+              HiveFilter(condition=[>($7, 0)])
+                HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)])
                   HiveJoin(condition=[=($0, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
                     HiveProject(c_customer_sk=[$0], c_customer_id=[$1], 
c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], 
c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
                       HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($1))])
                         HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
-                    HiveJoin(condition=[=($0, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                      HiveProject(ws_sold_date_sk=[$0], 
ws_bill_customer_sk=[$4], ws_ext_discount_amt=[$22], ws_ext_sales_price=[$23], 
ws_ext_wholesale_cost=[$24], ws_ext_list_price=[$25])
+                    HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                      HiveProject(ws_sold_date_sk=[$0], 
ws_bill_customer_sk=[$4], /=[/(+(-(-($25, $24), $22), $23), CAST(2):DECIMAL(10, 
0))])
                         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(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(customer_id=[$0], year_total=[$7], CAST=[CAST(IS NOT 
NULL($7)):BOOLEAN])
+            HiveFilter(condition=[>($7, 0)])
+              HiveAggregate(group=[{1, 2, 3, 4, 5, 6, 7}], agg#0=[sum($10)])
+                HiveJoin(condition=[=($0, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                  HiveProject(c_customer_sk=[$0], c_customer_id=[$1], 
c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], 
c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
+                    HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($1))])
+                      HiveTableScan(table=[[default, customer]], 
table:alias=[customer])
+                  HiveJoin(condition=[=($0, $3)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                    HiveProject(cs_sold_date_sk=[$0], 
cs_bill_customer_sk=[$3], /=[/(+(-(-($25, $24), $22), $23), CAST(2):DECIMAL(10, 
0))])
+                      HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT 
NULL($0))])
+                        HiveTableScan(table=[[default, catalog_sales]], 
table:alias=[catalog_sales])
+                    HiveProject(d_date_sk=[$0])
+                      HiveFilter(condition=[AND(=($6, 2001), 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_query40.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query40.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query40.q.out
index 7d8fc9b..1f834b5 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query40.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query40.q.out
@@ -68,12 +68,12 @@ CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], dir1=[ASC], fetch=[100])
   HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3])
     HiveAggregate(group=[{0, 1}], agg#0=[sum($2)], agg#1=[sum($3)])
-      HiveProject($f0=[$1], $f1=[$13], $f2=[CASE(<(CAST($11):DATE, 
1998-04-08), -($6, CASE(IS NOT NULL($9), $9, 0)), 0)], 
$f3=[CASE(>=(CAST($11):DATE, 1998-04-08), -($6, CASE(IS NOT NULL($9), $9, 0)), 
0)])
+      HiveProject($f0=[$1], $f1=[$14], $f2=[CASE($11, -($6, CASE(IS NOT 
NULL($9), $9, 0)), 0)], $f3=[CASE($12, -($6, CASE(IS NOT NULL($9), $9, 0)), 0)])
         HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveProject(w_warehouse_sk=[$0], w_state=[$10])
             HiveFilter(condition=[IS NOT NULL($0)])
               HiveTableScan(table=[[default, warehouse]], 
table:alias=[warehouse])
-          HiveJoin(condition=[=($10, $2)], joinType=[inner], algorithm=[none], 
cost=[not available])
+          HiveJoin(condition=[=($11, $2)], joinType=[inner], algorithm=[none], 
cost=[not available])
             HiveJoin(condition=[=($0, $8)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveJoin(condition=[AND(=($3, $6), =($2, $5))], joinType=[left], 
algorithm=[none], cost=[not available])
                 HiveProject(cs_sold_date_sk=[$0], cs_warehouse_sk=[$14], 
cs_item_sk=[$15], cs_order_number=[$17], cs_sales_price=[$21])
@@ -82,10 +82,10 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], 
dir1=[ASC], fetch=[100])
                 HiveProject(cr_item_sk=[$2], cr_order_number=[$16], 
cr_refunded_cash=[$23])
                   HiveFilter(condition=[IS NOT NULL($2)])
                     HiveTableScan(table=[[default, catalog_returns]], 
table:alias=[catalog_returns])
-              HiveProject(d_date_sk=[$0], d_date=[$2])
+              HiveProject(d_date_sk=[$0], <=[<(CAST($2):DATE, 1998-04-08)], 
>==[>=(CAST($2):DATE, 1998-04-08)])
                 HiveFilter(condition=[AND(BETWEEN(false, 
CAST($2):TIMESTAMP(9), 1998-03-09 00:00:00, 1998-05-08 00:00:00), IS NOT 
NULL($0))])
                   HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-            HiveProject(i_item_sk=[$0], i_item_id=[$1], i_current_price=[$5])
+            HiveProject(i_item_sk=[$0], i_item_id=[$1])
               HiveFilter(condition=[AND(BETWEEN(false, $5, 0.99, 1.49), 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_query42.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query42.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query42.q.out
index ddb3223..0a7dac0 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query42.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query42.q.out
@@ -53,16 +53,16 @@ HiveSortLimit(fetch=[100])
   HiveProject(d_year=[CAST(1998):INTEGER], i_category_id=[$0], 
i_category=[$1], _o__c3=[$2])
     HiveSortLimit(sort0=[$3], sort1=[$0], sort2=[$1], dir0=[DESC-nulls-last], 
dir1=[ASC], dir2=[ASC])
       HiveProject(i_category_id=[$0], i_category=[$1], _o__c3=[$2], 
(tok_function sum (tok_table_or_col ss_ext_sales_price))=[$2])
-        HiveAggregate(group=[{7, 8}], agg#0=[sum($2)])
-          HiveJoin(condition=[=($1, $6)], joinType=[inner], algorithm=[none], 
cost=[not available])
+        HiveAggregate(group=[{5, 6}], agg#0=[sum($2)])
+          HiveJoin(condition=[=($1, $4)], joinType=[inner], algorithm=[none], 
cost=[not available])
             HiveJoin(condition=[=($3, $0)], 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(d_date_sk=[$0], d_year=[CAST(1998):INTEGER], 
d_moy=[CAST(12):INTEGER])
+              HiveProject(d_date_sk=[$0])
                 HiveFilter(condition=[AND(=($8, 12), =($6, 1998), IS NOT 
NULL($0))])
                   HiveTableScan(table=[[default, date_dim]], table:alias=[dt])
-            HiveProject(i_item_sk=[$0], i_category_id=[$11], i_category=[$12], 
i_manager_id=[CAST(1):INTEGER])
+            HiveProject(i_item_sk=[$0], i_category_id=[$11], i_category=[$12])
               HiveFilter(condition=[AND(=($20, 1), 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_query43.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query43.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query43.q.out
index f6eeae3..1d86c8b 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query43.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query43.q.out
@@ -46,16 +46,16 @@ CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], sort3=[$3], sort4=[$4], 
sort5=[$5], sort6=[$6], sort7=[$7], sort8=[$8], dir0=[ASC], dir1=[ASC], 
dir2=[ASC], dir3=[ASC], dir4=[ASC], dir5=[ASC], dir6=[ASC], dir7=[ASC], 
dir8=[ASC], fetch=[100])
   HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3], $f4=[$4], $f5=[$5], 
$f6=[$6], $f7=[$7], $f8=[$8])
     HiveAggregate(group=[{0, 1}], agg#0=[sum($2)], agg#1=[sum($3)], 
agg#2=[sum($4)], agg#3=[sum($5)], agg#4=[sum($6)], agg#5=[sum($7)], 
agg#6=[sum($8)])
-      HiveProject($f0=[$8], $f1=[$7], $f2=[CASE(=($5, _UTF-16LE'Sunday'), $2, 
null)], $f3=[CASE(=($5, _UTF-16LE'Monday'), $2, null)], $f4=[CASE(=($5, 
_UTF-16LE'Tuesday'), $2, null)], $f5=[CASE(=($5, _UTF-16LE'Wednesday'), $2, 
null)], $f6=[CASE(=($5, _UTF-16LE'Thursday'), $2, null)], $f7=[CASE(=($5, 
_UTF-16LE'Friday'), $2, null)], $f8=[CASE(=($5, _UTF-16LE'Saturday'), $2, 
null)])
-        HiveJoin(condition=[=($6, $1)], joinType=[inner], algorithm=[none], 
cost=[not available])
+      HiveProject($f0=[$13], $f1=[$12], $f2=[CASE($4, $2, null)], 
$f3=[CASE($5, $2, null)], $f4=[CASE($6, $2, null)], $f5=[CASE($7, $2, null)], 
$f6=[CASE($8, $2, null)], $f7=[CASE($9, $2, null)], $f8=[CASE($10, $2, null)])
+        HiveJoin(condition=[=($11, $1)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
             HiveProject(ss_sold_date_sk=[$0], ss_store_sk=[$7], 
ss_sales_price=[$13])
               HiveFilter(condition=[AND(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(1998):INTEGER], 
d_day_name=[$14])
+            HiveProject(d_date_sk=[$0], ==[=($14, _UTF-16LE'Sunday')], 
=2=[=($14, _UTF-16LE'Monday')], =3=[=($14, _UTF-16LE'Tuesday')], =4=[=($14, 
_UTF-16LE'Wednesday')], =5=[=($14, _UTF-16LE'Thursday')], =6=[=($14, 
_UTF-16LE'Friday')], =7=[=($14, _UTF-16LE'Saturday')])
               HiveFilter(condition=[AND(=($6, 1998), IS NOT NULL($0))])
                 HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-          HiveProject(s_store_sk=[$0], s_store_id=[$1], s_store_name=[$5], 
s_gmt_offset=[CAST(-6):DECIMAL(5, 2)])
+          HiveProject(s_store_sk=[$0], s_store_id=[$1], s_store_name=[$5])
             HiveFilter(condition=[AND(=($27, -6), 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_query46.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query46.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query46.q.out
index 0728056..89218b8 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query46.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query46.q.out
@@ -97,19 +97,19 @@ HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], 
sort3=[$3], sort4=[$4], dir0=[
             HiveProject(ca_address_sk=[$0], ca_city=[$6])
               HiveFilter(condition=[IS NOT NULL($0)])
                 HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
-            HiveJoin(condition=[=($2, $13)], joinType=[inner], 
algorithm=[none], cost=[not available])
-              HiveJoin(condition=[=($4, $11)], joinType=[inner], 
algorithm=[none], cost=[not available])
+            HiveJoin(condition=[=($2, $10)], joinType=[inner], 
algorithm=[none], cost=[not available])
+              HiveJoin(condition=[=($4, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($0, $8)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(ss_sold_date_sk=[$0], ss_customer_sk=[$3], 
ss_hdemo_sk=[$5], ss_addr_sk=[$6], ss_store_sk=[$7], ss_ticket_number=[$9], 
ss_coupon_amt=[$19], ss_net_profit=[$22])
                     HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($7), IS NOT NULL($5), IS NOT NULL($6), IS NOT NULL($3))])
                       HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                  HiveProject(d_date_sk=[$0], d_year=[$6], d_dow=[$7])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(IN($7, 6, 0), IN($6, 1998, 1999, 
2000), IS NOT NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-                HiveProject(s_store_sk=[$0], s_city=[$22])
+                HiveProject(s_store_sk=[$0])
                   HiveFilter(condition=[AND(IN($22, _UTF-16LE'Cedar Grove', 
_UTF-16LE'Wildwood', _UTF-16LE'Union', _UTF-16LE'Salem', _UTF-16LE'Highland 
Park'), IS NOT NULL($0))])
                     HiveTableScan(table=[[default, store]], 
table:alias=[store])
-              HiveProject(hd_demo_sk=[$0], hd_dep_count=[$3], 
hd_vehicle_count=[$4])
+              HiveProject(hd_demo_sk=[$0])
                 HiveFilter(condition=[AND(OR(=($3, 2), =($4, 1)), IS NOT 
NULL($0))])
                   HiveTableScan(table=[[default, household_demographics]], 
table:alias=[household_demographics])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query47.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query47.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query47.q.out
index 11fd577..8dff467 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query47.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query47.q.out
@@ -112,8 +112,8 @@ CBO PLAN:
 HiveProject(i_category=[$0], d_year=[$1], d_moy=[$2], avg_monthly_sales=[$3], 
sum_sales=[$4], psum=[$5], nsum=[$6])
   HiveSortLimit(sort0=[$7], sort1=[$2], dir0=[ASC], dir1=[ASC], fetch=[100])
     HiveProject(i_category=[$12], d_year=[$16], d_moy=[$17], 
avg_monthly_sales=[$19], sum_sales=[$18], psum=[$10], nsum=[$4], (- 
(tok_table_or_col sum_sales) (tok_table_or_col avg_monthly_sales))=[-($18, 
$19)])
-      HiveJoin(condition=[AND(AND(AND(AND(=($12, $0), =($13, $1)), =($14, 
$2)), =($15, $3)), =($20, -($5, 1)))], joinType=[inner], algorithm=[none], 
cost=[not available])
-        HiveProject((tok_table_or_col i_category)=[$0], (tok_table_or_col 
i_brand)=[$1], (tok_table_or_col s_store_name)=[$2], (tok_table_or_col 
s_company_name)=[$3], (tok_function sum (tok_table_or_col 
ss_sales_price))=[$4], rank_window_1=[$5])
+      HiveJoin(condition=[AND(AND(AND(AND(=($12, $0), =($13, $1)), =($14, 
$2)), =($15, $3)), =($20, $5))], joinType=[inner], algorithm=[none], cost=[not 
available])
+        HiveProject((tok_table_or_col i_category)=[$0], (tok_table_or_col 
i_brand)=[$1], (tok_table_or_col s_store_name)=[$2], (tok_table_or_col 
s_company_name)=[$3], (tok_function sum (tok_table_or_col 
ss_sales_price))=[$4], -=[-($5, 1)])
           HiveFilter(condition=[IS NOT NULL($5)])
             HiveProject((tok_table_or_col i_category)=[$1], (tok_table_or_col 
i_brand)=[$0], (tok_table_or_col s_store_name)=[$4], (tok_table_or_col 
s_company_name)=[$5], (tok_function sum (tok_table_or_col 
ss_sales_price))=[$6], rank_window_1=[rank() OVER (PARTITION BY $1, $0, $4, $5 
ORDER BY $2 NULLS LAST, $3 NULLS LAST ROWS BETWEEN 2147483647 FOLLOWING AND 
2147483647 PRECEDING)])
               HiveProject(i_brand=[$0], i_category=[$1], d_year=[$2], 
d_moy=[$3], s_store_name=[$4], s_company_name=[$5], $f6=[$6])
@@ -133,8 +133,8 @@ HiveProject(i_category=[$0], d_year=[$1], d_moy=[$2], 
avg_monthly_sales=[$3], su
                     HiveProject(s_store_sk=[$0], s_store_name=[$5], 
s_company_name=[$17])
                       HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($5), IS NOT NULL($17))])
                         HiveTableScan(table=[[default, store]], 
table:alias=[store])
-        HiveJoin(condition=[AND(AND(AND(AND(=($6, $0), =($7, $1)), =($8, $2)), 
=($9, $3)), =($14, +($5, 1)))], joinType=[inner], algorithm=[none], cost=[not 
available])
-          HiveProject((tok_table_or_col i_category)=[$0], (tok_table_or_col 
i_brand)=[$1], (tok_table_or_col s_store_name)=[$2], (tok_table_or_col 
s_company_name)=[$3], (tok_function sum (tok_table_or_col 
ss_sales_price))=[$4], rank_window_1=[$5])
+        HiveJoin(condition=[AND(AND(AND(AND(=($6, $0), =($7, $1)), =($8, $2)), 
=($9, $3)), =($14, $5))], joinType=[inner], algorithm=[none], cost=[not 
available])
+          HiveProject((tok_table_or_col i_category)=[$0], (tok_table_or_col 
i_brand)=[$1], (tok_table_or_col s_store_name)=[$2], (tok_table_or_col 
s_company_name)=[$3], (tok_function sum (tok_table_or_col 
ss_sales_price))=[$4], +=[+($5, 1)])
             HiveFilter(condition=[IS NOT NULL($5)])
               HiveProject((tok_table_or_col i_category)=[$1], 
(tok_table_or_col i_brand)=[$0], (tok_table_or_col s_store_name)=[$4], 
(tok_table_or_col s_company_name)=[$5], (tok_function sum (tok_table_or_col 
ss_sales_price))=[$6], rank_window_1=[rank() OVER (PARTITION BY $1, $0, $4, $5 
ORDER BY $2 NULLS LAST, $3 NULLS LAST ROWS BETWEEN 2147483647 FOLLOWING AND 
2147483647 PRECEDING)])
                 HiveProject(i_brand=[$0], i_category=[$1], d_year=[$2], 
d_moy=[$3], s_store_name=[$4], s_company_name=[$5], $f6=[$6])

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query48.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query48.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query48.q.out
index feb4012..079556e 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query48.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query48.q.out
@@ -141,24 +141,24 @@ POSTHOOK: Input: default@store
 POSTHOOK: Input: default@store_sales
 POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[sum($13)])
-  HiveJoin(condition=[AND(=($11, $0), OR(AND(IN($1, _UTF-16LE'KY', 
_UTF-16LE'GA', _UTF-16LE'NM'), BETWEEN(false, $15, 0, 2000)), AND(IN($1, 
_UTF-16LE'MT', _UTF-16LE'OR', _UTF-16LE'IN'), BETWEEN(false, $15, 150, 3000)), 
AND(IN($1, _UTF-16LE'WI', _UTF-16LE'MO', _UTF-16LE'WV'), BETWEEN(false, $15, 
50, 25000))))], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(ca_address_sk=[$0], ca_state=[$8], 
ca_country=[CAST(_UTF-16LE'United States'):VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE" COLLATE "ISO-8859-1$en_US$primary"])
+HiveAggregate(group=[{}], agg#0=[sum($11)])
+  HiveJoin(condition=[AND(=($9, $0), OR(AND($1, $12), AND($2, $13), AND($3, 
$14)))], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveProject(ca_address_sk=[$0], IN=[IN($8, _UTF-16LE'KY', _UTF-16LE'GA', 
_UTF-16LE'NM')], IN2=[IN($8, _UTF-16LE'MT', _UTF-16LE'OR', _UTF-16LE'IN')], 
IN3=[IN($8, _UTF-16LE'WI', _UTF-16LE'MO', _UTF-16LE'WV')])
       HiveFilter(condition=[AND(IN($8, _UTF-16LE'KY', _UTF-16LE'GA', 
_UTF-16LE'NM', _UTF-16LE'MT', _UTF-16LE'OR', _UTF-16LE'IN', _UTF-16LE'WI', 
_UTF-16LE'MO', _UTF-16LE'WV'), =($10, _UTF-16LE'United States'), IS NOT 
NULL($0))])
         HiveTableScan(table=[[default, customer_address]], 
table:alias=[customer_address])
-    HiveJoin(condition=[=($0, $7)], joinType=[inner], algorithm=[none], 
cost=[not available])
-      HiveProject(cd_demo_sk=[$0], 
cd_marital_status=[CAST(_UTF-16LE'M'):VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE" COLLATE "ISO-8859-1$en_US$primary"], 
cd_education_status=[CAST(_UTF-16LE'4 yr Degree'):VARCHAR(2147483647) CHARACTER 
SET "UTF-16LE" COLLATE "ISO-8859-1$en_US$primary"])
-        HiveFilter(condition=[AND(=($2, _UTF-16LE'M'), =($3, _UTF-16LE'4 yr 
Degree'), IS NOT NULL($0))])
-          HiveTableScan(table=[[default, customer_demographics]], 
table:alias=[customer_demographics])
-      HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
-        HiveProject(d_date_sk=[$0], d_year=[CAST(1998):INTEGER])
+    HiveJoin(condition=[=($0, $6)], joinType=[inner], algorithm=[none], 
cost=[not available])
+      HiveProject(s_store_sk=[$0])
+        HiveFilter(condition=[IS NOT NULL($0)])
+          HiveTableScan(table=[[default, store]], table:alias=[store])
+      HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], 
cost=[not available])
+        HiveProject(d_date_sk=[$0])
           HiveFilter(condition=[AND(=($6, 1998), IS NOT NULL($0))])
             HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim])
-        HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], 
cost=[not available])
-          HiveProject(s_store_sk=[$0])
-            HiveFilter(condition=[IS NOT NULL($0)])
-              HiveTableScan(table=[[default, store]], table:alias=[store])
-          HiveProject(ss_sold_date_sk=[$0], ss_cdemo_sk=[$4], ss_addr_sk=[$6], 
ss_store_sk=[$7], ss_quantity=[$10], ss_sales_price=[$13], ss_net_profit=[$22])
+        HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], 
cost=[not available])
+          HiveProject(cd_demo_sk=[$0])
+            HiveFilter(condition=[AND(=($2, _UTF-16LE'M'), =($3, _UTF-16LE'4 
yr Degree'), IS NOT NULL($0))])
+              HiveTableScan(table=[[default, customer_demographics]], 
table:alias=[customer_demographics])
+          HiveProject(ss_sold_date_sk=[$0], ss_cdemo_sk=[$4], ss_addr_sk=[$6], 
ss_store_sk=[$7], ss_quantity=[$10], BETWEEN=[BETWEEN(false, $22, 0, 2000)], 
BETWEEN6=[BETWEEN(false, $22, 150, 3000)], BETWEEN7=[BETWEEN(false, $22, 50, 
25000)])
             HiveFilter(condition=[AND(OR(BETWEEN(false, $13, 100, 150), 
BETWEEN(false, $13, 50, 100), BETWEEN(false, $13, 150, 200)), OR(BETWEEN(false, 
$22, 0, 2000), BETWEEN(false, $22, 150, 3000), BETWEEN(false, $22, 50, 25000)), 
IS NOT NULL($7), IS NOT NULL($4), IS NOT NULL($6), IS NOT NULL($0))])
               HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
 

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query49.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query49.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query49.q.out
index 9c31d61..1300dd9 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query49.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query49.q.out
@@ -279,52 +279,49 @@ HiveSortLimit(sort0=[$0], sort1=[$3], sort2=[$4], 
dir0=[ASC], dir1=[ASC], dir2=[
                   HiveProject(channel=[_UTF-16LE'web'], item=[$0], 
return_ratio=[$1], return_rank=[$2], currency_rank=[$3])
                     HiveFilter(condition=[OR(<=($2, 10), <=($3, 10))])
                       HiveProject(item=[$0], 
return_ratio=[/(CAST($1):DECIMAL(15, 4), CAST($2):DECIMAL(15, 4))], 
rank_window_0=[rank() OVER (PARTITION BY 0 ORDER BY /(CAST($1):DECIMAL(15, 4), 
CAST($2):DECIMAL(15, 4)) NULLS LAST ROWS BETWEEN 2147483647 FOLLOWING AND 
2147483647 PRECEDING)], rank_window_1=[rank() OVER (PARTITION BY 0 ORDER BY 
/(CAST($3):DECIMAL(15, 4), CAST($4):DECIMAL(15, 4)) NULLS LAST ROWS BETWEEN 
2147483647 FOLLOWING AND 2147483647 PRECEDING)])
-                        HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3], 
$f4=[$4])
-                          HiveAggregate(group=[{0}], agg#0=[sum($1)], 
agg#1=[sum($2)], agg#2=[sum($3)], agg#3=[sum($4)])
-                            HiveProject($f0=[$5], $f1=[CASE(IS NOT NULL($2), 
$2, 0)], $f2=[CASE(IS NOT NULL($7), $7, 0)], $f3=[CASE(IS NOT NULL($3), $3, 
0)], $f4=[CASE(IS NOT NULL($8), $8, 0)])
-                              HiveJoin(condition=[AND(=($6, $1), =($5, $0))], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                HiveProject(wr_item_sk=[$2], 
wr_order_number=[$13], wr_return_quantity=[$14], wr_return_amt=[$15])
-                                  HiveFilter(condition=[AND(>($15, 10000), IS 
NOT NULL($13), IS NOT NULL($2))])
-                                    HiveTableScan(table=[[default, 
web_returns]], table:alias=[wr])
-                                HiveJoin(condition=[=($0, $6)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                  HiveProject(ws_sold_date_sk=[$0], 
ws_item_sk=[$3], ws_order_number=[$17], ws_quantity=[$18], ws_net_paid=[$29], 
ws_net_profit=[$33])
-                                    HiveFilter(condition=[AND(>($33, 1), 
>($29, 0), >($18, 0), IS NOT NULL($17), IS NOT NULL($3), IS NOT NULL($0))])
-                                      HiveTableScan(table=[[default, 
web_sales]], table:alias=[ws])
-                                  HiveProject(d_date_sk=[$0], 
d_year=[CAST(2000):INTEGER], d_moy=[CAST(12):INTEGER])
-                                    HiveFilter(condition=[AND(=($6, 2000), 
=($8, 12), IS NOT NULL($0))])
-                                      HiveTableScan(table=[[default, 
date_dim]], table:alias=[date_dim])
+                        HiveProject(ws_item_sk=[$0], $f1=[$1], $f2=[$2], 
$f3=[$3], $f4=[$4])
+                          HiveAggregate(group=[{5}], agg#0=[sum($2)], 
agg#1=[sum($7)], agg#2=[sum($3)], agg#3=[sum($8)])
+                            HiveJoin(condition=[AND(=($6, $1), =($5, $0))], 
joinType=[inner], algorithm=[none], cost=[not available])
+                              HiveProject(wr_item_sk=[$2], 
wr_order_number=[$13], CASE=[CASE(IS NOT NULL($14), $14, 0)], CASE3=[CASE(IS 
NOT NULL($15), $15, 0)])
+                                HiveFilter(condition=[AND(>($15, 10000), IS 
NOT NULL($13), IS NOT NULL($2))])
+                                  HiveTableScan(table=[[default, 
web_returns]], table:alias=[wr])
+                              HiveJoin(condition=[=($0, $5)], 
joinType=[inner], algorithm=[none], cost=[not available])
+                                HiveProject(ws_sold_date_sk=[$0], 
ws_item_sk=[$3], ws_order_number=[$17], CASE=[CASE(IS NOT NULL($18), $18, 0)], 
CASE4=[CASE(IS NOT NULL($29), $29, 0)])
+                                  HiveFilter(condition=[AND(>($33, 1), >($29, 
0), >($18, 0), IS NOT NULL($17), IS NOT NULL($3), IS NOT NULL($0))])
+                                    HiveTableScan(table=[[default, 
web_sales]], table:alias=[ws])
+                                HiveProject(d_date_sk=[$0])
+                                  HiveFilter(condition=[AND(=($6, 2000), =($8, 
12), IS NOT NULL($0))])
+                                    HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
                   HiveProject(channel=[_UTF-16LE'catalog'], item=[$0], 
return_ratio=[$1], return_rank=[$2], currency_rank=[$3])
                     HiveFilter(condition=[OR(<=($2, 10), <=($3, 10))])
                       HiveProject(item=[$0], 
return_ratio=[/(CAST($1):DECIMAL(15, 4), CAST($2):DECIMAL(15, 4))], 
rank_window_0=[rank() OVER (PARTITION BY 0 ORDER BY /(CAST($1):DECIMAL(15, 4), 
CAST($2):DECIMAL(15, 4)) NULLS LAST ROWS BETWEEN 2147483647 FOLLOWING AND 
2147483647 PRECEDING)], rank_window_1=[rank() OVER (PARTITION BY 0 ORDER BY 
/(CAST($3):DECIMAL(15, 4), CAST($4):DECIMAL(15, 4)) NULLS LAST ROWS BETWEEN 
2147483647 FOLLOWING AND 2147483647 PRECEDING)])
-                        HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3], 
$f4=[$4])
-                          HiveAggregate(group=[{0}], agg#0=[sum($1)], 
agg#1=[sum($2)], agg#2=[sum($3)], agg#3=[sum($4)])
-                            HiveProject($f0=[$5], $f1=[CASE(IS NOT NULL($2), 
$2, 0)], $f2=[CASE(IS NOT NULL($7), $7, 0)], $f3=[CASE(IS NOT NULL($3), $3, 
0)], $f4=[CASE(IS NOT NULL($8), $8, 0)])
-                              HiveJoin(condition=[AND(=($6, $1), =($5, $0))], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                HiveProject(cr_item_sk=[$2], 
cr_order_number=[$16], cr_return_quantity=[$17], cr_return_amount=[$18])
-                                  HiveFilter(condition=[AND(>($18, 10000), IS 
NOT NULL($16), IS NOT NULL($2))])
-                                    HiveTableScan(table=[[default, 
catalog_returns]], table:alias=[cr])
-                                HiveJoin(condition=[=($0, $6)], 
joinType=[inner], algorithm=[none], cost=[not available])
-                                  HiveProject(cs_sold_date_sk=[$0], 
cs_item_sk=[$15], cs_order_number=[$17], cs_quantity=[$18], cs_net_paid=[$29], 
cs_net_profit=[$33])
-                                    HiveFilter(condition=[AND(>($33, 1), 
>($29, 0), >($18, 0), IS NOT NULL($17), IS NOT NULL($15), IS NOT NULL($0))])
-                                      HiveTableScan(table=[[default, 
catalog_sales]], table:alias=[cs])
-                                  HiveProject(d_date_sk=[$0], 
d_year=[CAST(2000):INTEGER], d_moy=[CAST(12):INTEGER])
-                                    HiveFilter(condition=[AND(=($6, 2000), 
=($8, 12), IS NOT NULL($0))])
-                                      HiveTableScan(table=[[default, 
date_dim]], table:alias=[date_dim])
+                        HiveProject(cs_item_sk=[$0], $f1=[$1], $f2=[$2], 
$f3=[$3], $f4=[$4])
+                          HiveAggregate(group=[{5}], agg#0=[sum($2)], 
agg#1=[sum($7)], agg#2=[sum($3)], agg#3=[sum($8)])
+                            HiveJoin(condition=[AND(=($6, $1), =($5, $0))], 
joinType=[inner], algorithm=[none], cost=[not available])
+                              HiveProject(cr_item_sk=[$2], 
cr_order_number=[$16], CASE=[CASE(IS NOT NULL($17), $17, 0)], CASE3=[CASE(IS 
NOT NULL($18), $18, 0)])
+                                HiveFilter(condition=[AND(>($18, 10000), IS 
NOT NULL($16), IS NOT NULL($2))])
+                                  HiveTableScan(table=[[default, 
catalog_returns]], table:alias=[cr])
+                              HiveJoin(condition=[=($0, $5)], 
joinType=[inner], algorithm=[none], cost=[not available])
+                                HiveProject(cs_sold_date_sk=[$0], 
cs_item_sk=[$15], cs_order_number=[$17], CASE=[CASE(IS NOT NULL($18), $18, 0)], 
CASE4=[CASE(IS NOT NULL($29), $29, 0)])
+                                  HiveFilter(condition=[AND(>($33, 1), >($29, 
0), >($18, 0), IS NOT NULL($17), IS NOT NULL($15), IS NOT NULL($0))])
+                                    HiveTableScan(table=[[default, 
catalog_sales]], table:alias=[cs])
+                                HiveProject(d_date_sk=[$0])
+                                  HiveFilter(condition=[AND(=($6, 2000), =($8, 
12), IS NOT NULL($0))])
+                                    HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
           HiveProject(channel=[_UTF-16LE'store'], item=[$0], 
return_ratio=[$1], return_rank=[$2], currency_rank=[$3])
             HiveFilter(condition=[OR(<=($2, 10), <=($3, 10))])
               HiveProject(item=[$0], return_ratio=[/(CAST($1):DECIMAL(15, 4), 
CAST($2):DECIMAL(15, 4))], rank_window_0=[rank() OVER (PARTITION BY 0 ORDER BY 
/(CAST($1):DECIMAL(15, 4), CAST($2):DECIMAL(15, 4)) NULLS LAST ROWS BETWEEN 
2147483647 FOLLOWING AND 2147483647 PRECEDING)], rank_window_1=[rank() OVER 
(PARTITION BY 0 ORDER BY /(CAST($3):DECIMAL(15, 4), CAST($4):DECIMAL(15, 4)) 
NULLS LAST ROWS BETWEEN 2147483647 FOLLOWING AND 2147483647 PRECEDING)])
-                HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3], $f4=[$4])
-                  HiveAggregate(group=[{0}], agg#0=[sum($1)], agg#1=[sum($2)], 
agg#2=[sum($3)], agg#3=[sum($4)])
-                    HiveProject($f0=[$5], $f1=[CASE(IS NOT NULL($2), $2, 0)], 
$f2=[CASE(IS NOT NULL($7), $7, 0)], $f3=[CASE(IS NOT NULL($3), $3, 0)], 
$f4=[CASE(IS NOT NULL($8), $8, 0)])
-                      HiveJoin(condition=[AND(=($6, $1), =($5, $0))], 
joinType=[inner], algorithm=[none], cost=[not available])
-                        HiveProject(sr_item_sk=[$2], sr_ticket_number=[$9], 
sr_return_quantity=[$10], sr_return_amt=[$11])
-                          HiveFilter(condition=[AND(>($11, 10000), IS NOT 
NULL($9), IS NOT NULL($2))])
-                            HiveTableScan(table=[[default, store_returns]], 
table:alias=[sr])
-                        HiveJoin(condition=[=($0, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
-                          HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2], 
ss_ticket_number=[$9], ss_quantity=[$10], ss_net_paid=[$20], 
ss_net_profit=[$22])
-                            HiveFilter(condition=[AND(>($22, 1), >($20, 0), 
>($10, 0), IS NOT NULL($9), IS NOT NULL($2), IS NOT NULL($0))])
-                              HiveTableScan(table=[[default, store_sales]], 
table:alias=[sts])
-                          HiveProject(d_date_sk=[$0], 
d_year=[CAST(2000):INTEGER], d_moy=[CAST(12):INTEGER])
-                            HiveFilter(condition=[AND(=($6, 2000), =($8, 12), 
IS NOT NULL($0))])
-                              HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
+                HiveProject(ss_item_sk=[$0], $f1=[$1], $f2=[$2], $f3=[$3], 
$f4=[$4])
+                  HiveAggregate(group=[{5}], agg#0=[sum($2)], agg#1=[sum($7)], 
agg#2=[sum($3)], agg#3=[sum($8)])
+                    HiveJoin(condition=[AND(=($6, $1), =($5, $0))], 
joinType=[inner], algorithm=[none], cost=[not available])
+                      HiveProject(sr_item_sk=[$2], sr_ticket_number=[$9], 
CASE=[CASE(IS NOT NULL($10), $10, 0)], CASE3=[CASE(IS NOT NULL($11), $11, 0)])
+                        HiveFilter(condition=[AND(>($11, 10000), IS NOT 
NULL($9), IS NOT NULL($2))])
+                          HiveTableScan(table=[[default, store_returns]], 
table:alias=[sr])
+                      HiveJoin(condition=[=($0, $5)], joinType=[inner], 
algorithm=[none], cost=[not available])
+                        HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2], 
ss_ticket_number=[$9], CASE=[CASE(IS NOT NULL($10), $10, 0)], CASE4=[CASE(IS 
NOT NULL($20), $20, 0)])
+                          HiveFilter(condition=[AND(>($22, 1), >($20, 0), 
>($10, 0), IS NOT NULL($9), IS NOT NULL($2), IS NOT NULL($0))])
+                            HiveTableScan(table=[[default, store_sales]], 
table:alias=[sts])
+                        HiveProject(d_date_sk=[$0])
+                          HiveFilter(condition=[AND(=($6, 2000), =($8, 12), 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_query5.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query5.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query5.q.out
index a82f011..e78c3e5 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query5.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query5.q.out
@@ -281,8 +281,8 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], 
dir1=[ASC], fetch=[100])
       HiveProject(channel=[$0], id=[$1], sales=[$2], returns=[$3], profit=[$4])
         HiveUnion(all=[true])
           HiveProject(channel=[_UTF-16LE'store channel'], 
id=[||(_UTF-16LE'store', $0)], sales=[$1], returns=[$3], profit=[-($2, $4)])
-            HiveAggregate(group=[{9}], agg#0=[sum($2)], agg#1=[sum($3)], 
agg#2=[sum($4)], agg#3=[sum($5)])
-              HiveJoin(condition=[=($0, $8)], joinType=[inner], 
algorithm=[none], cost=[not available])
+            HiveAggregate(group=[{8}], agg#0=[sum($2)], agg#1=[sum($3)], 
agg#2=[sum($4)], agg#3=[sum($5)])
+              HiveJoin(condition=[=($0, $7)], joinType=[inner], 
algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($1, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(store_sk=[$0], date_sk=[$1], sales_price=[$2], 
profit=[$3], return_amt=[$4], net_loss=[$5])
                     HiveUnion(all=[true])
@@ -292,7 +292,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], 
dir1=[ASC], fetch=[100])
                       HiveProject(store_sk=[$7], date_sk=[$0], 
sales_price=[CAST(0):DECIMAL(7, 2)], profit=[CAST(0):DECIMAL(7, 2)], 
return_amt=[$11], net_loss=[$19])
                         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($7))])
                           HiveTableScan(table=[[default, store_returns]], 
table:alias=[store_returns])
-                  HiveProject(d_date_sk=[$0], d_date=[$2])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(BETWEEN(false, 
CAST($2):TIMESTAMP(9), 1998-08-04 00:00:00, 1998-08-18 00:00:00), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
                 HiveProject(s_store_sk=[$0], s_store_id=[$1])
@@ -313,12 +313,12 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], 
dir1=[ASC], fetch=[100])
                       HiveProject(page_sk=[$12], date_sk=[$0], 
sales_price=[CAST(0):DECIMAL(7, 2)], profit=[CAST(0):DECIMAL(7, 2)], 
return_amt=[$18], net_loss=[$26])
                         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($12))])
                           HiveTableScan(table=[[default, catalog_returns]], 
table:alias=[catalog_returns])
-                  HiveProject(d_date_sk=[$0], d_date=[$2])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(BETWEEN(false, 
CAST($2):TIMESTAMP(9), 1998-08-04 00:00:00, 1998-08-18 00:00:00), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
           HiveProject(channel=[_UTF-16LE'web channel'], 
id=[||(_UTF-16LE'web_site', $0)], sales=[$1], returns=[$3], profit=[-($2, $4)])
-            HiveAggregate(group=[{9}], agg#0=[sum($2)], agg#1=[sum($3)], 
agg#2=[sum($4)], agg#3=[sum($5)])
-              HiveJoin(condition=[=($0, $8)], joinType=[inner], 
algorithm=[none], cost=[not available])
+            HiveAggregate(group=[{8}], agg#0=[sum($2)], agg#1=[sum($3)], 
agg#2=[sum($4)], agg#3=[sum($5)])
+              HiveJoin(condition=[=($0, $7)], joinType=[inner], 
algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($1, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(wsr_web_site_sk=[$0], date_sk=[$1], 
sales_price=[$2], profit=[$3], return_amt=[$4], net_loss=[$5])
                     HiveUnion(all=[true])
@@ -333,7 +333,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], 
dir1=[ASC], fetch=[100])
                           HiveProject(wr_returned_date_sk=[$0], 
wr_item_sk=[$2], wr_order_number=[$13], wr_return_amt=[$15], wr_net_loss=[$23])
                             HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($2), IS NOT NULL($13))])
                               HiveTableScan(table=[[default, web_returns]], 
table:alias=[web_returns])
-                  HiveProject(d_date_sk=[$0], d_date=[$2])
+                  HiveProject(d_date_sk=[$0])
                     HiveFilter(condition=[AND(BETWEEN(false, 
CAST($2):TIMESTAMP(9), 1998-08-04 00:00:00, 1998-08-18 00:00:00), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
                 HiveProject(web_site_sk=[$0], web_site_id=[$1])

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query50.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query50.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query50.q.out
index 2be59c1..becffde 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query50.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query50.q.out
@@ -128,9 +128,9 @@ CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], sort3=[$3], sort4=[$4], 
sort5=[$5], sort6=[$6], sort7=[$7], sort8=[$8], sort9=[$9], dir0=[ASC], 
dir1=[ASC], dir2=[ASC], dir3=[ASC], dir4=[ASC], dir5=[ASC], dir6=[ASC], 
dir7=[ASC], dir8=[ASC], dir9=[ASC], fetch=[100])
   HiveProject($f0=[$0], $f1=[$1], $f2=[$2], $f3=[$3], $f4=[$4], $f5=[$5], 
$f6=[$6], $f7=[$7], $f8=[$8], $f9=[$9], $f10=[$10], $f11=[$11], $f12=[$12], 
$f13=[$13], $f14=[$14])
     HiveAggregate(group=[{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}], agg#0=[sum($10)], 
agg#1=[sum($11)], agg#2=[sum($12)], agg#3=[sum($13)], agg#4=[sum($14)])
-      HiveProject($f0=[$14], $f1=[$15], $f2=[$16], $f3=[$17], $f4=[$18], 
$f5=[$19], $f6=[$20], $f7=[$21], $f8=[$22], $f9=[$23], $f10=[CASE(<=(-($5, $0), 
30), 1, 0)], $f11=[CASE(AND(>(-($5, $0), 30), <=(-($5, $0), 60)), 1, 0)], 
$f12=[CASE(AND(>(-($5, $0), 60), <=(-($5, $0), 90)), 1, 0)], 
$f13=[CASE(AND(>(-($5, $0), 90), <=(-($5, $0), 120)), 1, 0)], 
$f14=[CASE(>(-($5, $0), 120), 1, 0)])
-        HiveJoin(condition=[=($3, $13)], joinType=[inner], algorithm=[none], 
cost=[not available])
-          HiveJoin(condition=[=($0, $12)], joinType=[inner], algorithm=[none], 
cost=[not available])
+      HiveProject($f0=[$12], $f1=[$13], $f2=[$14], $f3=[$15], $f4=[$16], 
$f5=[$17], $f6=[$18], $f7=[$19], $f8=[$20], $f9=[$21], $f10=[CASE(<=(-($5, $0), 
30), 1, 0)], $f11=[CASE(AND(>(-($5, $0), 30), <=(-($5, $0), 60)), 1, 0)], 
$f12=[CASE(AND(>(-($5, $0), 60), <=(-($5, $0), 90)), 1, 0)], 
$f13=[CASE(AND(>(-($5, $0), 90), <=(-($5, $0), 120)), 1, 0)], 
$f14=[CASE(>(-($5, $0), 120), 1, 0)])
+        HiveJoin(condition=[=($3, $11)], joinType=[inner], algorithm=[none], 
cost=[not available])
+          HiveJoin(condition=[=($0, $10)], joinType=[inner], algorithm=[none], 
cost=[not available])
             HiveJoin(condition=[AND(AND(=($4, $8), =($1, $6)), =($2, $7))], 
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])
                 HiveFilter(condition=[AND(IS NOT NULL($9), IS NOT NULL($2), IS 
NOT NULL($3), IS NOT NULL($7), IS NOT NULL($0))])
@@ -139,7 +139,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], 
sort3=[$3], sort4=[$4], sort5=
                 HiveProject(sr_returned_date_sk=[$0], sr_item_sk=[$2], 
sr_customer_sk=[$3], sr_ticket_number=[$9])
                   HiveFilter(condition=[AND(IS NOT NULL($9), IS NOT NULL($2), 
IS NOT NULL($3), 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=[CAST(9):INTEGER])
+                HiveProject(d_date_sk=[$0])
                   HiveFilter(condition=[AND(=($6, 2000), =($8, 9), IS NOT 
NULL($0))])
                     HiveTableScan(table=[[default, date_dim]], 
table:alias=[d2])
             HiveProject(d_date_sk=[$0])

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query51.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query51.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query51.q.out
index fed8677..79c5f99 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query51.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query51.q.out
@@ -108,7 +108,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], 
dir1=[ASC], fetch=[100])
                     HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2], 
ss_sales_price=[$13])
                       HiveFilter(condition=[AND(IS NOT NULL($2), IS NOT 
NULL($0))])
                         HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                    HiveProject(d_date_sk=[$0], d_date=[$2], d_month_seq=[$3])
+                    HiveProject(d_date_sk=[$0], d_date=[$2])
                       HiveFilter(condition=[AND(BETWEEN(false, $3, 1212, 
1223), IS NOT NULL($0))])
                         HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
           HiveProject((tok_table_or_col ws_item_sk)=[$0], (tok_table_or_col 
d_date)=[$1], sum_window_0=[$2])
@@ -119,7 +119,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], 
dir1=[ASC], fetch=[100])
                     HiveProject(ws_sold_date_sk=[$0], ws_item_sk=[$3], 
ws_sales_price=[$21])
                       HiveFilter(condition=[AND(IS NOT NULL($3), IS NOT 
NULL($0))])
                         HiveTableScan(table=[[default, web_sales]], 
table:alias=[web_sales])
-                    HiveProject(d_date_sk=[$0], d_date=[$2], d_month_seq=[$3])
+                    HiveProject(d_date_sk=[$0], d_date=[$2])
                       HiveFilter(condition=[AND(BETWEEN(false, $3, 1212, 
1223), 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_query52.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query52.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query52.q.out
index 627b8b0..27cb4eb 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query52.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query52.q.out
@@ -52,16 +52,16 @@ CBO PLAN:
 HiveProject(d_year=[CAST(1998):INTEGER], brand_id=[$0], brand=[$1], 
ext_price=[$2])
   HiveSortLimit(sort0=[$2], sort1=[$0], dir0=[DESC-nulls-last], dir1=[ASC], 
fetch=[100])
     HiveProject(i_brand_id=[$0], i_brand=[$1], $f2=[$2])
-      HiveAggregate(group=[{7, 8}], agg#0=[sum($2)])
-        HiveJoin(condition=[=($1, $6)], joinType=[inner], algorithm=[none], 
cost=[not available])
+      HiveAggregate(group=[{5, 6}], agg#0=[sum($2)])
+        HiveJoin(condition=[=($1, $4)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveJoin(condition=[=($3, $0)], 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(d_date_sk=[$0], d_year=[CAST(1998):INTEGER], 
d_moy=[CAST(12):INTEGER])
+            HiveProject(d_date_sk=[$0])
               HiveFilter(condition=[AND(=($8, 12), =($6, 1998), IS NOT 
NULL($0))])
                 HiveTableScan(table=[[default, date_dim]], table:alias=[dt])
-          HiveProject(i_item_sk=[$0], i_brand_id=[$7], i_brand=[$8], 
i_manager_id=[CAST(1):INTEGER])
+          HiveProject(i_item_sk=[$0], i_brand_id=[$7], i_brand=[$8])
             HiveFilter(condition=[AND(=($20, 1), 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_query53.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query53.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query53.q.out
index 56b1ba2..9b42428 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query53.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query53.q.out
@@ -68,20 +68,20 @@ HiveSortLimit(sort0=[$2], sort1=[$1], sort2=[$0], 
dir0=[ASC], dir1=[ASC], dir2=[
     HiveFilter(condition=[CASE(>($2, 0), >(/(ABS(-($1, $2)), $2), 0.1), null)])
       HiveProject((tok_table_or_col i_manufact_id)=[$0], (tok_function sum 
(tok_table_or_col ss_sales_price))=[$2], avg_window_0=[avg($2) OVER (PARTITION 
BY $0 ORDER BY $0 NULLS FIRST ROWS BETWEEN 2147483647 FOLLOWING AND 2147483647 
PRECEDING)])
         HiveProject(i_manufact_id=[$0], d_qoy=[$1], $f2=[$2])
-          HiveAggregate(group=[{9, 12}], agg#0=[sum($4)])
+          HiveAggregate(group=[{6, 8}], agg#0=[sum($4)])
             HiveJoin(condition=[=($3, $0)], joinType=[inner], 
algorithm=[none], cost=[not available])
               HiveProject(s_store_sk=[$0])
                 HiveFilter(condition=[IS NOT NULL($0)])
                   HiveTableScan(table=[[default, store]], table:alias=[store])
-              HiveJoin(condition=[=($0, $9)], joinType=[inner], 
algorithm=[none], cost=[not available])
+              HiveJoin(condition=[=($0, $6)], joinType=[inner], 
algorithm=[none], cost=[not available])
                 HiveJoin(condition=[=($1, $4)], joinType=[inner], 
algorithm=[none], cost=[not available])
                   HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2], 
ss_store_sk=[$7], ss_sales_price=[$13])
                     HiveFilter(condition=[AND(IS NOT NULL($2), IS NOT 
NULL($0), IS NOT NULL($7))])
                       HiveTableScan(table=[[default, store_sales]], 
table:alias=[store_sales])
-                  HiveProject(i_item_sk=[$0], i_brand=[$8], i_class=[$10], 
i_category=[$12], i_manufact_id=[$13])
+                  HiveProject(i_item_sk=[$0], i_manufact_id=[$13])
                     HiveFilter(condition=[AND(IN($10, _UTF-16LE'personal', 
_UTF-16LE'portable', _UTF-16LE'reference', _UTF-16LE'self-help', 
_UTF-16LE'accessories', _UTF-16LE'classical', _UTF-16LE'fragrances', 
_UTF-16LE'pants'), IN($8, _UTF-16LE'scholaramalgamalg #14', 
_UTF-16LE'scholaramalgamalg #7', _UTF-16LE'exportiunivamalg #9', 
_UTF-16LE'scholaramalgamalg #9', _UTF-16LE'amalgimporto #1', _UTF-16LE'edu 
packscholar #1', _UTF-16LE'exportiimporto #1', _UTF-16LE'importoamalg #1'), 
IN($12, _UTF-16LE'Books', _UTF-16LE'Children', _UTF-16LE'Electronics', 
_UTF-16LE'Women', _UTF-16LE'Music', _UTF-16LE'Men'), OR(AND(IN($12, 
_UTF-16LE'Books', _UTF-16LE'Children', _UTF-16LE'Electronics'), IN($10, 
_UTF-16LE'personal', _UTF-16LE'portable', _UTF-16LE'reference', 
_UTF-16LE'self-help'), IN($8, _UTF-16LE'scholaramalgamalg #14', 
_UTF-16LE'scholaramalgamalg #7', _UTF-16LE'exportiunivamalg #9', 
_UTF-16LE'scholaramalgamalg #9')), AND(IN($12, _UTF-16LE'Women', 
_UTF-16LE'Music', _UTF-16LE'Men'), IN($10, 
 _UTF-16LE'accessories', _UTF-16LE'classical', _UTF-16LE'fragrances', 
_UTF-16LE'pants'), IN($8, _UTF-16LE'amalgimporto #1', _UTF-16LE'edu packscholar 
#1', _UTF-16LE'exportiimporto #1', _UTF-16LE'importoamalg #1'))), IS NOT 
NULL($0))])
                       HiveTableScan(table=[[default, item]], 
table:alias=[item])
-                HiveProject(d_date_sk=[$0], d_month_seq=[$3], d_qoy=[$10])
+                HiveProject(d_date_sk=[$0], d_qoy=[$10])
                   HiveFilter(condition=[AND(IN($3, 1212, 1213, 1214, 1215, 
1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223), 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_query54.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query54.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query54.q.out
index eaf2536..6d3d037 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query54.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query54.q.out
@@ -165,7 +165,7 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], 
dir1=[ASC], fetch=[100])
                                   HiveProject(c_customer_sk=[$0], 
c_current_addr_sk=[$4])
                                     HiveFilter(condition=[AND(IS NOT NULL($0), 
IS NOT NULL($4))])
                                       HiveTableScan(table=[[default, 
customer]], table:alias=[customer])
-                                  HiveJoin(condition=[=($2, $6)], 
joinType=[inner], algorithm=[none], cost=[not available])
+                                  HiveJoin(condition=[=($2, $4)], 
joinType=[inner], algorithm=[none], cost=[not available])
                                     HiveJoin(condition=[=($0, $3)], 
joinType=[inner], algorithm=[none], cost=[not available])
                                       HiveProject(cs_sold_date_sk=[$0], 
cs_bill_customer_sk=[$1], cs_item_sk=[$2])
                                         HiveUnion(all=[true])
@@ -175,10 +175,10 @@ HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], 
dir1=[ASC], fetch=[100])
                                           HiveProject(sold_date_sk=[$0], 
customer_sk=[$4], item_sk=[$3])
                                             HiveFilter(condition=[AND(IS NOT 
NULL($3), IS NOT NULL($0), IS NOT NULL($4))])
                                               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(=($8, 3), 
=($6, 1999), IS NOT NULL($0))])
                                           HiveTableScan(table=[[default, 
date_dim]], table:alias=[date_dim])
-                                    HiveProject(i_item_sk=[$0], 
i_class=[CAST(_UTF-16LE'consignment'):VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE" COLLATE "ISO-8859-1$en_US$primary"], 
i_category=[CAST(_UTF-16LE'Jewelry'):VARCHAR(2147483647) CHARACTER SET 
"UTF-16LE" COLLATE "ISO-8859-1$en_US$primary"])
+                                    HiveProject(i_item_sk=[$0])
                                       HiveFilter(condition=[AND(=($12, 
_UTF-16LE'Jewelry'), =($10, _UTF-16LE'consignment'), IS NOT NULL($0))])
                                         HiveTableScan(table=[[default, item]], 
table:alias=[item])
                       HiveProject(cnt=[$0])

http://git-wip-us.apache.org/repos/asf/hive/blob/55887646/ql/src/test/results/clientpositive/perf/tez/cbo_query55.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query55.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query55.q.out
index 4182de0..24c93f6 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query55.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query55.q.out
@@ -36,16 +36,16 @@ CBO PLAN:
 HiveProject(brand_id=[$0], brand=[$1], ext_price=[$2])
   HiveSortLimit(sort0=[$2], sort1=[$3], dir0=[DESC-nulls-last], dir1=[ASC], 
fetch=[100])
     HiveProject(brand_id=[$0], brand=[$1], ext_price=[$2], (tok_table_or_col 
i_brand_id)=[$0])
-      HiveAggregate(group=[{7, 8}], agg#0=[sum($2)])
-        HiveJoin(condition=[=($1, $6)], joinType=[inner], algorithm=[none], 
cost=[not available])
+      HiveAggregate(group=[{5, 6}], agg#0=[sum($2)])
+        HiveJoin(condition=[=($1, $4)], joinType=[inner], algorithm=[none], 
cost=[not available])
           HiveJoin(condition=[=($3, $0)], 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(d_date_sk=[$0], d_year=[CAST(2001):INTEGER], 
d_moy=[CAST(12):INTEGER])
+            HiveProject(d_date_sk=[$0])
               HiveFilter(condition=[AND(=($8, 12), =($6, 2001), IS NOT 
NULL($0))])
                 HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
-          HiveProject(i_item_sk=[$0], i_brand_id=[$7], i_brand=[$8], 
i_manager_id=[CAST(36):INTEGER])
+          HiveProject(i_item_sk=[$0], i_brand_id=[$7], i_brand=[$8])
             HiveFilter(condition=[AND(=($20, 36), 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_query56.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query56.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query56.q.out
index 579d06a..d01dbcd 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query56.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query56.q.out
@@ -153,8 +153,8 @@ HiveSortLimit(sort0=[$1], dir0=[ASC], fetch=[100])
       HiveProject(i_item_id=[$0], $f1=[$1])
         HiveUnion(all=[true])
           HiveProject(i_item_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_item_id=[$1])
                     HiveFilter(condition=[AND(IS NOT NULL($1), IS NOT 
NULL($0))])
@@ -163,21 +163,21 @@ HiveSortLimit(sort0=[$1], dir0=[ASC], fetch=[100])
                     HiveAggregate(group=[{1}])
                       HiveFilter(condition=[AND(IN($17, _UTF-16LE'orchid', 
_UTF-16LE'chiffon', _UTF-16LE'lace'), IS NOT NULL($1))])
                         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(-8):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, -8), 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(2000):INTEGER], 
d_moy=[CAST(1):INTEGER])
+                      HiveProject(d_date_sk=[$0])
                         HiveFilter(condition=[AND(=($6, 2000), =($8, 1), IS 
NOT NULL($0))])
                           HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
           HiveProject(i_item_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_item_id=[$1])
                     HiveFilter(condition=[AND(IS NOT NULL($1), IS NOT 
NULL($0))])
@@ -186,21 +186,21 @@ HiveSortLimit(sort0=[$1], dir0=[ASC], fetch=[100])
                     HiveAggregate(group=[{1}])
                       HiveFilter(condition=[AND(IN($17, _UTF-16LE'orchid', 
_UTF-16LE'chiffon', _UTF-16LE'lace'), IS NOT NULL($1))])
                         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(-8):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, -8), 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(2000):INTEGER], 
d_moy=[CAST(1):INTEGER])
+                      HiveProject(d_date_sk=[$0])
                         HiveFilter(condition=[AND(=($6, 2000), =($8, 1), IS 
NOT NULL($0))])
                           HiveTableScan(table=[[default, date_dim]], 
table:alias=[date_dim])
           HiveProject(i_item_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_item_id=[$1])
                     HiveFilter(condition=[AND(IS NOT NULL($1), IS NOT 
NULL($0))])
@@ -209,16 +209,16 @@ HiveSortLimit(sort0=[$1], dir0=[ASC], fetch=[100])
                     HiveAggregate(group=[{1}])
                       HiveFilter(condition=[AND(IN($17, _UTF-16LE'orchid', 
_UTF-16LE'chiffon', _UTF-16LE'lace'), IS NOT NULL($1))])
                         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(-8):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, -8), 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(2000):INTEGER], 
d_moy=[CAST(1):INTEGER])
+                      HiveProject(d_date_sk=[$0])
                         HiveFilter(condition=[AND(=($6, 2000), =($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_query57.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/perf/tez/cbo_query57.q.out 
b/ql/src/test/results/clientpositive/perf/tez/cbo_query57.q.out
index e0480e4..6c8ef17 100644
--- a/ql/src/test/results/clientpositive/perf/tez/cbo_query57.q.out
+++ b/ql/src/test/results/clientpositive/perf/tez/cbo_query57.q.out
@@ -106,8 +106,8 @@ CBO PLAN:
 HiveProject(i_category=[$0], i_brand=[$1], d_year=[$2], d_moy=[$3], 
avg_monthly_sales=[$4], sum_sales=[$5], psum=[$6], nsum=[$7])
   HiveSortLimit(sort0=[$8], sort1=[$2], dir0=[ASC], dir1=[ASC], fetch=[100])
     HiveProject(i_category=[$10], i_brand=[$11], d_year=[$13], d_moy=[$14], 
avg_monthly_sales=[$16], sum_sales=[$15], psum=[$8], nsum=[$3], (- 
(tok_table_or_col sum_sales) (tok_table_or_col avg_monthly_sales))=[-($15, 
$16)])
-      HiveJoin(condition=[AND(AND(AND(=($10, $0), =($11, $1)), =($12, $2)), 
=($17, -($4, 1)))], joinType=[inner], algorithm=[none], cost=[not available])
-        HiveProject((tok_table_or_col i_category)=[$0], (tok_table_or_col 
i_brand)=[$1], (tok_table_or_col cc_name)=[$2], (tok_function sum 
(tok_table_or_col cs_sales_price))=[$3], rank_window_1=[$4])
+      HiveJoin(condition=[AND(AND(AND(=($10, $0), =($11, $1)), =($12, $2)), 
=($17, $4))], joinType=[inner], algorithm=[none], cost=[not available])
+        HiveProject((tok_table_or_col i_category)=[$0], (tok_table_or_col 
i_brand)=[$1], (tok_table_or_col cc_name)=[$2], (tok_function sum 
(tok_table_or_col cs_sales_price))=[$3], -=[-($4, 1)])
           HiveFilter(condition=[IS NOT NULL($4)])
             HiveProject((tok_table_or_col i_category)=[$1], (tok_table_or_col 
i_brand)=[$0], (tok_table_or_col cc_name)=[$4], (tok_function sum 
(tok_table_or_col cs_sales_price))=[$5], rank_window_1=[rank() OVER (PARTITION 
BY $1, $0, $4 ORDER BY $2 NULLS LAST, $3 NULLS LAST ROWS BETWEEN 2147483647 
FOLLOWING AND 2147483647 PRECEDING)])
               HiveProject(i_brand=[$0], i_category=[$1], d_year=[$2], 
d_moy=[$3], cc_name=[$4], $f5=[$5])
@@ -127,8 +127,8 @@ HiveProject(i_category=[$0], i_brand=[$1], d_year=[$2], 
d_moy=[$3], avg_monthly_
                       HiveProject(cc_call_center_sk=[$0], cc_name=[$6])
                         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT 
NULL($6))])
                           HiveTableScan(table=[[default, call_center]], 
table:alias=[call_center])
-        HiveJoin(condition=[AND(AND(AND(=($5, $0), =($6, $1)), =($7, $2)), 
=($12, +($4, 1)))], joinType=[inner], algorithm=[none], cost=[not available])
-          HiveProject((tok_table_or_col i_category)=[$0], (tok_table_or_col 
i_brand)=[$1], (tok_table_or_col cc_name)=[$2], (tok_function sum 
(tok_table_or_col cs_sales_price))=[$3], rank_window_1=[$4])
+        HiveJoin(condition=[AND(AND(AND(=($5, $0), =($6, $1)), =($7, $2)), 
=($12, $4))], joinType=[inner], algorithm=[none], cost=[not available])
+          HiveProject((tok_table_or_col i_category)=[$0], (tok_table_or_col 
i_brand)=[$1], (tok_table_or_col cc_name)=[$2], (tok_function sum 
(tok_table_or_col cs_sales_price))=[$3], +=[+($4, 1)])
             HiveFilter(condition=[IS NOT NULL($4)])
               HiveProject((tok_table_or_col i_category)=[$1], 
(tok_table_or_col i_brand)=[$0], (tok_table_or_col cc_name)=[$4], (tok_function 
sum (tok_table_or_col cs_sales_price))=[$5], rank_window_1=[rank() OVER 
(PARTITION BY $1, $0, $4 ORDER BY $2 NULLS LAST, $3 NULLS LAST ROWS BETWEEN 
2147483647 FOLLOWING AND 2147483647 PRECEDING)])
                 HiveProject(i_brand=[$0], i_category=[$1], d_year=[$2], 
d_moy=[$3], cc_name=[$4], $f5=[$5])

Reply via email to