[35/50] [abbrv] hive git commit: HIVE-19433: HiveJoinPushTransitivePredicatesRule hangs (Vineet Garg, reviewed by Jesus Camacho Rodriguez)

2018-05-15 Thread vgarg
HIVE-19433: HiveJoinPushTransitivePredicatesRule hangs (Vineet Garg,reviewed by 
Jesus Camacho Rodriguez)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/8c12a11b
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/8c12a11b
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/8c12a11b

Branch: refs/heads/branch-3
Commit: 8c12a11b762f5954f75eb35c10cb740dab632554
Parents: 71d211d
Author: Vineet Garg 
Authored: Mon May 14 11:37:05 2018 -0700
Committer: Vineet Garg 
Committed: Mon May 14 11:40:36 2018 -0700

--
 .../calcite/stats/HiveRelMdPredicates.java  |   6 +-
 .../queries/clientpositive/infer_join_preds.q   | 222 +++
 .../clientpositive/infer_join_preds.q.out   | 594 +++
 3 files changed, 820 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/8c12a11b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
--
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
index 0b1fe74..a137bdf 100644
--- 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
+++ 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
@@ -642,7 +642,7 @@ public class HiveRelMdPredicates implements 
MetadataHandlerhttp://git-wip-us.apache.org/repos/asf/hive/blob/8c12a11b/ql/src/test/queries/clientpositive/infer_join_preds.q
--
diff --git a/ql/src/test/queries/clientpositive/infer_join_preds.q 
b/ql/src/test/queries/clientpositive/infer_join_preds.q
index c2e0d09..a9f5468 100644
--- a/ql/src/test/queries/clientpositive/infer_join_preds.q
+++ b/ql/src/test/queries/clientpositive/infer_join_preds.q
@@ -59,3 +59,225 @@ select * from
 (select * from src)a
 right outer join
 (select * from src1 where 1 = 0)b on a.key = b.key;
+
+explain select * from src join src1 on src.key = src1.key and src.value = 
src1.value
+where 4 between src.key and src.value;
+
+CREATE TABLE `table1`(
+   `idp_warehouse_id` bigint,
+   `idp_audit_id` bigint,
+   `idp_effective_date` date,
+   `idp_end_date` date,
+   `idp_delete_date` date,
+   `pruid` varchar(32),
+   `prid` bigint,
+   `prtimesheetid` bigint,
+   `prassignmentid` bigint,
+   `prchargecodeid` bigint,
+   `prtypecodeid` bigint,
+   `prsequence` bigint,
+   `prmodby` varchar(96),
+   `prmodtime` timestamp,
+   `prrmexported` bigint,
+   `prrmckdel` bigint,
+   `slice_status` int,
+   `role_id` bigint,
+   `user_lov1` varchar(30),
+   `user_lov2` varchar(30),
+   `incident_id` bigint,
+   `incident_investment_id` bigint,
+   `odf_ss_actuals` bigint,
+   `practsum` decimal(38,20));
+
+CREATE TABLE `table2`(
+   `idp_warehouse_id` bigint,
+   `idp_audit_id` bigint,
+   `idp_effective_date` date,
+   `idp_end_date` date,
+   `idp_delete_date` date,
+   `pruid` varchar(32),
+   `prid` bigint,
+   `prtimesheetid` bigint,
+   `prassignmentid` bigint,
+   `prchargecodeid` bigint,
+   `prtypecodeid` bigint,
+   `prsequence` bigint,
+   `prmodby` varchar(96),
+   `prmodtime` timestamp,
+   `prrmexported` bigint,
+   `prrmckdel` bigint,
+   `slice_status` int,
+   `role_id` bigint,
+   `user_lov1` varchar(30),
+   `user_lov2` varchar(30),
+   `incident_id` bigint,
+   `incident_investment_id` bigint,
+   `odf_ss_actuals` bigint,
+   `practsum` decimal(38,20));
+
+explain SELECT  s.idp_warehouse_id AS source_warehouse_id
+FROMtable1 s
+JOIN
+
+   table2 d
+ON  (
+s.prid = d.prid )
+JOIN
+ table2 e
+ON
+s.prid = e.prid
+WHERE
+concat(
+CASE
+WHEN s.prid IS NULL THEN 1
+ELSE s.prid
+END,',',
+CASE
+WHEN s.prtimesheetid IS NULL THEN 1
+ELSE s.prtimesheetid
+END,',',
+CASE
+WHEN s.prassignmentid IS NULL THEN 1
+ELSE s.prassignmentid
+END,',',
+CASE
+WHEN s.prchargecodeid IS NULL THEN 1
+  

[35/50] [abbrv] hive git commit: HIVE-19433: HiveJoinPushTransitivePredicatesRule hangs (Vineet Garg, reviewed by Jesus Camacho Rodriguez)

2018-05-15 Thread vgarg
HIVE-19433: HiveJoinPushTransitivePredicatesRule hangs (Vineet Garg,reviewed by 
Jesus Camacho Rodriguez)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/8c12a11b
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/8c12a11b
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/8c12a11b

Branch: refs/heads/branch-3.0.0
Commit: 8c12a11b762f5954f75eb35c10cb740dab632554
Parents: 71d211d
Author: Vineet Garg 
Authored: Mon May 14 11:37:05 2018 -0700
Committer: Vineet Garg 
Committed: Mon May 14 11:40:36 2018 -0700

--
 .../calcite/stats/HiveRelMdPredicates.java  |   6 +-
 .../queries/clientpositive/infer_join_preds.q   | 222 +++
 .../clientpositive/infer_join_preds.q.out   | 594 +++
 3 files changed, 820 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/8c12a11b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
--
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
index 0b1fe74..a137bdf 100644
--- 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
+++ 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
@@ -642,7 +642,7 @@ public class HiveRelMdPredicates implements 
MetadataHandlerhttp://git-wip-us.apache.org/repos/asf/hive/blob/8c12a11b/ql/src/test/queries/clientpositive/infer_join_preds.q
--
diff --git a/ql/src/test/queries/clientpositive/infer_join_preds.q 
b/ql/src/test/queries/clientpositive/infer_join_preds.q
index c2e0d09..a9f5468 100644
--- a/ql/src/test/queries/clientpositive/infer_join_preds.q
+++ b/ql/src/test/queries/clientpositive/infer_join_preds.q
@@ -59,3 +59,225 @@ select * from
 (select * from src)a
 right outer join
 (select * from src1 where 1 = 0)b on a.key = b.key;
+
+explain select * from src join src1 on src.key = src1.key and src.value = 
src1.value
+where 4 between src.key and src.value;
+
+CREATE TABLE `table1`(
+   `idp_warehouse_id` bigint,
+   `idp_audit_id` bigint,
+   `idp_effective_date` date,
+   `idp_end_date` date,
+   `idp_delete_date` date,
+   `pruid` varchar(32),
+   `prid` bigint,
+   `prtimesheetid` bigint,
+   `prassignmentid` bigint,
+   `prchargecodeid` bigint,
+   `prtypecodeid` bigint,
+   `prsequence` bigint,
+   `prmodby` varchar(96),
+   `prmodtime` timestamp,
+   `prrmexported` bigint,
+   `prrmckdel` bigint,
+   `slice_status` int,
+   `role_id` bigint,
+   `user_lov1` varchar(30),
+   `user_lov2` varchar(30),
+   `incident_id` bigint,
+   `incident_investment_id` bigint,
+   `odf_ss_actuals` bigint,
+   `practsum` decimal(38,20));
+
+CREATE TABLE `table2`(
+   `idp_warehouse_id` bigint,
+   `idp_audit_id` bigint,
+   `idp_effective_date` date,
+   `idp_end_date` date,
+   `idp_delete_date` date,
+   `pruid` varchar(32),
+   `prid` bigint,
+   `prtimesheetid` bigint,
+   `prassignmentid` bigint,
+   `prchargecodeid` bigint,
+   `prtypecodeid` bigint,
+   `prsequence` bigint,
+   `prmodby` varchar(96),
+   `prmodtime` timestamp,
+   `prrmexported` bigint,
+   `prrmckdel` bigint,
+   `slice_status` int,
+   `role_id` bigint,
+   `user_lov1` varchar(30),
+   `user_lov2` varchar(30),
+   `incident_id` bigint,
+   `incident_investment_id` bigint,
+   `odf_ss_actuals` bigint,
+   `practsum` decimal(38,20));
+
+explain SELECT  s.idp_warehouse_id AS source_warehouse_id
+FROMtable1 s
+JOIN
+
+   table2 d
+ON  (
+s.prid = d.prid )
+JOIN
+ table2 e
+ON
+s.prid = e.prid
+WHERE
+concat(
+CASE
+WHEN s.prid IS NULL THEN 1
+ELSE s.prid
+END,',',
+CASE
+WHEN s.prtimesheetid IS NULL THEN 1
+ELSE s.prtimesheetid
+END,',',
+CASE
+WHEN s.prassignmentid IS NULL THEN 1
+ELSE s.prassignmentid
+END,',',
+CASE
+WHEN s.prchargecodeid IS NULL THEN 1
+  

hive git commit: HIVE-19433: HiveJoinPushTransitivePredicatesRule hangs (Vineet Garg, reviewed by Jesus Camacho Rodriguez)

2018-05-14 Thread vgarg
Repository: hive
Updated Branches:
  refs/heads/branch-3 71d211d2d -> 8c12a11b7


HIVE-19433: HiveJoinPushTransitivePredicatesRule hangs (Vineet Garg,reviewed by 
Jesus Camacho Rodriguez)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/8c12a11b
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/8c12a11b
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/8c12a11b

Branch: refs/heads/branch-3
Commit: 8c12a11b762f5954f75eb35c10cb740dab632554
Parents: 71d211d
Author: Vineet Garg 
Authored: Mon May 14 11:37:05 2018 -0700
Committer: Vineet Garg 
Committed: Mon May 14 11:40:36 2018 -0700

--
 .../calcite/stats/HiveRelMdPredicates.java  |   6 +-
 .../queries/clientpositive/infer_join_preds.q   | 222 +++
 .../clientpositive/infer_join_preds.q.out   | 594 +++
 3 files changed, 820 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/8c12a11b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
--
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
index 0b1fe74..a137bdf 100644
--- 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
+++ 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
@@ -642,7 +642,7 @@ public class HiveRelMdPredicates implements 
MetadataHandlerhttp://git-wip-us.apache.org/repos/asf/hive/blob/8c12a11b/ql/src/test/queries/clientpositive/infer_join_preds.q
--
diff --git a/ql/src/test/queries/clientpositive/infer_join_preds.q 
b/ql/src/test/queries/clientpositive/infer_join_preds.q
index c2e0d09..a9f5468 100644
--- a/ql/src/test/queries/clientpositive/infer_join_preds.q
+++ b/ql/src/test/queries/clientpositive/infer_join_preds.q
@@ -59,3 +59,225 @@ select * from
 (select * from src)a
 right outer join
 (select * from src1 where 1 = 0)b on a.key = b.key;
+
+explain select * from src join src1 on src.key = src1.key and src.value = 
src1.value
+where 4 between src.key and src.value;
+
+CREATE TABLE `table1`(
+   `idp_warehouse_id` bigint,
+   `idp_audit_id` bigint,
+   `idp_effective_date` date,
+   `idp_end_date` date,
+   `idp_delete_date` date,
+   `pruid` varchar(32),
+   `prid` bigint,
+   `prtimesheetid` bigint,
+   `prassignmentid` bigint,
+   `prchargecodeid` bigint,
+   `prtypecodeid` bigint,
+   `prsequence` bigint,
+   `prmodby` varchar(96),
+   `prmodtime` timestamp,
+   `prrmexported` bigint,
+   `prrmckdel` bigint,
+   `slice_status` int,
+   `role_id` bigint,
+   `user_lov1` varchar(30),
+   `user_lov2` varchar(30),
+   `incident_id` bigint,
+   `incident_investment_id` bigint,
+   `odf_ss_actuals` bigint,
+   `practsum` decimal(38,20));
+
+CREATE TABLE `table2`(
+   `idp_warehouse_id` bigint,
+   `idp_audit_id` bigint,
+   `idp_effective_date` date,
+   `idp_end_date` date,
+   `idp_delete_date` date,
+   `pruid` varchar(32),
+   `prid` bigint,
+   `prtimesheetid` bigint,
+   `prassignmentid` bigint,
+   `prchargecodeid` bigint,
+   `prtypecodeid` bigint,
+   `prsequence` bigint,
+   `prmodby` varchar(96),
+   `prmodtime` timestamp,
+   `prrmexported` bigint,
+   `prrmckdel` bigint,
+   `slice_status` int,
+   `role_id` bigint,
+   `user_lov1` varchar(30),
+   `user_lov2` varchar(30),
+   `incident_id` bigint,
+   `incident_investment_id` bigint,
+   `odf_ss_actuals` bigint,
+   `practsum` decimal(38,20));
+
+explain SELECT  s.idp_warehouse_id AS source_warehouse_id
+FROMtable1 s
+JOIN
+
+   table2 d
+ON  (
+s.prid = d.prid )
+JOIN
+ table2 e
+ON
+s.prid = e.prid
+WHERE
+concat(
+CASE
+WHEN s.prid IS NULL THEN 1
+ELSE s.prid
+END,',',
+CASE
+WHEN s.prtimesheetid IS NULL THEN 1
+ELSE s.prtimesheetid
+END,',',
+CASE
+WHEN s.prassignmentid IS NULL THEN 1
+ELSE s.prassignmentid
+END,',',
+CASE
+  

hive git commit: HIVE-19433: HiveJoinPushTransitivePredicatesRule hangs (Vineet Garg, reviewed by Jesus Camacho Rodriguez)

2018-05-14 Thread vgarg
Repository: hive
Updated Branches:
  refs/heads/master 8657a1c33 -> 0d787cbc0


HIVE-19433: HiveJoinPushTransitivePredicatesRule hangs (Vineet Garg,reviewed by 
Jesus Camacho Rodriguez)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/0d787cbc
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/0d787cbc
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/0d787cbc

Branch: refs/heads/master
Commit: 0d787cbc055eb237bcccd5fdbc144fb6b1d7d4ca
Parents: 8657a1c
Author: Vineet Garg 
Authored: Mon May 14 11:37:05 2018 -0700
Committer: Vineet Garg 
Committed: Mon May 14 11:37:05 2018 -0700

--
 .../calcite/stats/HiveRelMdPredicates.java  |   6 +-
 .../queries/clientpositive/infer_join_preds.q   | 222 +++
 .../clientpositive/infer_join_preds.q.out   | 594 +++
 3 files changed, 820 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/0d787cbc/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
--
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
index 0b1fe74..a137bdf 100644
--- 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
+++ 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/stats/HiveRelMdPredicates.java
@@ -642,7 +642,7 @@ public class HiveRelMdPredicates implements 
MetadataHandlerhttp://git-wip-us.apache.org/repos/asf/hive/blob/0d787cbc/ql/src/test/queries/clientpositive/infer_join_preds.q
--
diff --git a/ql/src/test/queries/clientpositive/infer_join_preds.q 
b/ql/src/test/queries/clientpositive/infer_join_preds.q
index 89827a2..4787de1 100644
--- a/ql/src/test/queries/clientpositive/infer_join_preds.q
+++ b/ql/src/test/queries/clientpositive/infer_join_preds.q
@@ -61,3 +61,225 @@ select * from
 (select * from src)a
 right outer join
 (select * from src1 where 1 = 0)b on a.key = b.key;
+
+explain select * from src join src1 on src.key = src1.key and src.value = 
src1.value
+where 4 between src.key and src.value;
+
+CREATE TABLE `table1`(
+   `idp_warehouse_id` bigint,
+   `idp_audit_id` bigint,
+   `idp_effective_date` date,
+   `idp_end_date` date,
+   `idp_delete_date` date,
+   `pruid` varchar(32),
+   `prid` bigint,
+   `prtimesheetid` bigint,
+   `prassignmentid` bigint,
+   `prchargecodeid` bigint,
+   `prtypecodeid` bigint,
+   `prsequence` bigint,
+   `prmodby` varchar(96),
+   `prmodtime` timestamp,
+   `prrmexported` bigint,
+   `prrmckdel` bigint,
+   `slice_status` int,
+   `role_id` bigint,
+   `user_lov1` varchar(30),
+   `user_lov2` varchar(30),
+   `incident_id` bigint,
+   `incident_investment_id` bigint,
+   `odf_ss_actuals` bigint,
+   `practsum` decimal(38,20));
+
+CREATE TABLE `table2`(
+   `idp_warehouse_id` bigint,
+   `idp_audit_id` bigint,
+   `idp_effective_date` date,
+   `idp_end_date` date,
+   `idp_delete_date` date,
+   `pruid` varchar(32),
+   `prid` bigint,
+   `prtimesheetid` bigint,
+   `prassignmentid` bigint,
+   `prchargecodeid` bigint,
+   `prtypecodeid` bigint,
+   `prsequence` bigint,
+   `prmodby` varchar(96),
+   `prmodtime` timestamp,
+   `prrmexported` bigint,
+   `prrmckdel` bigint,
+   `slice_status` int,
+   `role_id` bigint,
+   `user_lov1` varchar(30),
+   `user_lov2` varchar(30),
+   `incident_id` bigint,
+   `incident_investment_id` bigint,
+   `odf_ss_actuals` bigint,
+   `practsum` decimal(38,20));
+
+explain SELECT  s.idp_warehouse_id AS source_warehouse_id
+FROMtable1 s
+JOIN
+
+   table2 d
+ON  (
+s.prid = d.prid )
+JOIN
+ table2 e
+ON
+s.prid = e.prid
+WHERE
+concat(
+CASE
+WHEN s.prid IS NULL THEN 1
+ELSE s.prid
+END,',',
+CASE
+WHEN s.prtimesheetid IS NULL THEN 1
+ELSE s.prtimesheetid
+END,',',
+CASE
+WHEN s.prassignmentid IS NULL THEN 1
+ELSE s.prassignmentid
+END,',',
+CASE
+