[1/3] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum) [Forced Update!]

2018-04-06 Thread pboado
Repository: phoenix
Updated Branches:
  refs/heads/4.x-cdh5.14 69fdbe655 -> c95110694 (forced update)


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/376b67f9
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/376b67f9
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/376b67f9

Branch: refs/heads/4.x-cdh5.14
Commit: 376b67f918a66caa6964ec6ec41b78c67e0adcae
Parents: 98a8bbd
Author: maryannxue 
Authored: Fri Apr 6 18:05:52 2018 +0100
Committer: Pedro Boado 
Committed: Fri Apr 6 22:15:07 2018 +0100

--
 .../org/apache/phoenix/optimize/QueryOptimizer.java | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/376b67f9/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 31f5c34..6d668cc 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -38,7 +38,6 @@ import org.apache.phoenix.compile.SequenceManager;
 import org.apache.phoenix.compile.StatementContext;
 import org.apache.phoenix.compile.StatementNormalizer;
 import org.apache.phoenix.compile.SubqueryRewriter;
-import org.apache.phoenix.execute.BaseQueryPlan;
 import org.apache.phoenix.iterate.ParallelIteratorFactory;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
@@ -126,11 +125,14 @@ public class QueryOptimizer {
 return Collections.singletonList(dataPlan);
 }
 
-if (dataPlan instanceof BaseQueryPlan) {
-return getApplicablePlans((BaseQueryPlan) dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
+SelectStatement select = (SelectStatement) dataPlan.getStatement();
+if (!select.isUnion()
+&& !select.isJoin()
+&& select.getInnerSelectStatement() == null
+&& (select.getWhere() == null || 
!select.getWhere().hasSubquery())) {
+return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 
-SelectStatement select = (SelectStatement) dataPlan.getStatement();
 ColumnResolver resolver = FromCompiler.getResolverForQuery(select, 
statement.getConnection());
 Map dataPlans = null;
 
@@ -187,7 +189,7 @@ public class QueryOptimizer {
 return Collections.singletonList(compiler.compile());
 }
 
-private List getApplicablePlans(BaseQueryPlan dataPlan, 
PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
+private List getApplicablePlansForSingleFlatQuery(QueryPlan 
dataPlan, PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
 SelectStatement select = (SelectStatement)dataPlan.getStatement();
 // Exit early if we have a point lookup as we can't get better than 
that
 if (dataPlan.getContext().getScanRanges().isPointLookup() && 
stopAtBestPlan) {



[1/3] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum) [Forced Update!]

2018-04-06 Thread pboado
Repository: phoenix
Updated Branches:
  refs/heads/4.x-cdh5.12 2fdbfc1b1 -> 031ca5a1f (forced update)


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/376b67f9
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/376b67f9
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/376b67f9

Branch: refs/heads/4.x-cdh5.12
Commit: 376b67f918a66caa6964ec6ec41b78c67e0adcae
Parents: 98a8bbd
Author: maryannxue 
Authored: Fri Apr 6 18:05:52 2018 +0100
Committer: Pedro Boado 
Committed: Fri Apr 6 22:15:07 2018 +0100

--
 .../org/apache/phoenix/optimize/QueryOptimizer.java | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/376b67f9/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 31f5c34..6d668cc 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -38,7 +38,6 @@ import org.apache.phoenix.compile.SequenceManager;
 import org.apache.phoenix.compile.StatementContext;
 import org.apache.phoenix.compile.StatementNormalizer;
 import org.apache.phoenix.compile.SubqueryRewriter;
-import org.apache.phoenix.execute.BaseQueryPlan;
 import org.apache.phoenix.iterate.ParallelIteratorFactory;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
@@ -126,11 +125,14 @@ public class QueryOptimizer {
 return Collections.singletonList(dataPlan);
 }
 
-if (dataPlan instanceof BaseQueryPlan) {
-return getApplicablePlans((BaseQueryPlan) dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
+SelectStatement select = (SelectStatement) dataPlan.getStatement();
+if (!select.isUnion()
+&& !select.isJoin()
+&& select.getInnerSelectStatement() == null
+&& (select.getWhere() == null || 
!select.getWhere().hasSubquery())) {
+return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 
-SelectStatement select = (SelectStatement) dataPlan.getStatement();
 ColumnResolver resolver = FromCompiler.getResolverForQuery(select, 
statement.getConnection());
 Map dataPlans = null;
 
@@ -187,7 +189,7 @@ public class QueryOptimizer {
 return Collections.singletonList(compiler.compile());
 }
 
-private List getApplicablePlans(BaseQueryPlan dataPlan, 
PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
+private List getApplicablePlansForSingleFlatQuery(QueryPlan 
dataPlan, PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
 SelectStatement select = (SelectStatement)dataPlan.getStatement();
 // Exit early if we have a point lookup as we can't get better than 
that
 if (dataPlan.getContext().getScanRanges().isPointLookup() && 
stopAtBestPlan) {



[1/3] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum) [Forced Update!]

2018-04-06 Thread pboado
Repository: phoenix
Updated Branches:
  refs/heads/4.x-cdh5.13 f246892d0 -> 440953930 (forced update)


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/376b67f9
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/376b67f9
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/376b67f9

Branch: refs/heads/4.x-cdh5.13
Commit: 376b67f918a66caa6964ec6ec41b78c67e0adcae
Parents: 98a8bbd
Author: maryannxue 
Authored: Fri Apr 6 18:05:52 2018 +0100
Committer: Pedro Boado 
Committed: Fri Apr 6 22:15:07 2018 +0100

--
 .../org/apache/phoenix/optimize/QueryOptimizer.java | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/376b67f9/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 31f5c34..6d668cc 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -38,7 +38,6 @@ import org.apache.phoenix.compile.SequenceManager;
 import org.apache.phoenix.compile.StatementContext;
 import org.apache.phoenix.compile.StatementNormalizer;
 import org.apache.phoenix.compile.SubqueryRewriter;
-import org.apache.phoenix.execute.BaseQueryPlan;
 import org.apache.phoenix.iterate.ParallelIteratorFactory;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
@@ -126,11 +125,14 @@ public class QueryOptimizer {
 return Collections.singletonList(dataPlan);
 }
 
-if (dataPlan instanceof BaseQueryPlan) {
-return getApplicablePlans((BaseQueryPlan) dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
+SelectStatement select = (SelectStatement) dataPlan.getStatement();
+if (!select.isUnion()
+&& !select.isJoin()
+&& select.getInnerSelectStatement() == null
+&& (select.getWhere() == null || 
!select.getWhere().hasSubquery())) {
+return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 
-SelectStatement select = (SelectStatement) dataPlan.getStatement();
 ColumnResolver resolver = FromCompiler.getResolverForQuery(select, 
statement.getConnection());
 Map dataPlans = null;
 
@@ -187,7 +189,7 @@ public class QueryOptimizer {
 return Collections.singletonList(compiler.compile());
 }
 
-private List getApplicablePlans(BaseQueryPlan dataPlan, 
PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
+private List getApplicablePlansForSingleFlatQuery(QueryPlan 
dataPlan, PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
 SelectStatement select = (SelectStatement)dataPlan.getStatement();
 // Exit early if we have a point lookup as we can't get better than 
that
 if (dataPlan.getContext().getScanRanges().isPointLookup() && 
stopAtBestPlan) {



[1/2] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum) [Forced Update!]

2018-04-06 Thread pboado
Repository: phoenix
Updated Branches:
  refs/heads/4.x-cdh5.11 ce3e5867e -> f3defc4c3 (forced update)


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/376b67f9
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/376b67f9
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/376b67f9

Branch: refs/heads/4.x-cdh5.11
Commit: 376b67f918a66caa6964ec6ec41b78c67e0adcae
Parents: 98a8bbd
Author: maryannxue 
Authored: Fri Apr 6 18:05:52 2018 +0100
Committer: Pedro Boado 
Committed: Fri Apr 6 22:15:07 2018 +0100

--
 .../org/apache/phoenix/optimize/QueryOptimizer.java | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/376b67f9/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 31f5c34..6d668cc 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -38,7 +38,6 @@ import org.apache.phoenix.compile.SequenceManager;
 import org.apache.phoenix.compile.StatementContext;
 import org.apache.phoenix.compile.StatementNormalizer;
 import org.apache.phoenix.compile.SubqueryRewriter;
-import org.apache.phoenix.execute.BaseQueryPlan;
 import org.apache.phoenix.iterate.ParallelIteratorFactory;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
@@ -126,11 +125,14 @@ public class QueryOptimizer {
 return Collections.singletonList(dataPlan);
 }
 
-if (dataPlan instanceof BaseQueryPlan) {
-return getApplicablePlans((BaseQueryPlan) dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
+SelectStatement select = (SelectStatement) dataPlan.getStatement();
+if (!select.isUnion()
+&& !select.isJoin()
+&& select.getInnerSelectStatement() == null
+&& (select.getWhere() == null || 
!select.getWhere().hasSubquery())) {
+return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 
-SelectStatement select = (SelectStatement) dataPlan.getStatement();
 ColumnResolver resolver = FromCompiler.getResolverForQuery(select, 
statement.getConnection());
 Map dataPlans = null;
 
@@ -187,7 +189,7 @@ public class QueryOptimizer {
 return Collections.singletonList(compiler.compile());
 }
 
-private List getApplicablePlans(BaseQueryPlan dataPlan, 
PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
+private List getApplicablePlansForSingleFlatQuery(QueryPlan 
dataPlan, PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
 SelectStatement select = (SelectStatement)dataPlan.getStatement();
 // Exit early if we have a point lookup as we can't get better than 
that
 if (dataPlan.getContext().getScanRanges().isPointLookup() && 
stopAtBestPlan) {



phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum)

2018-04-06 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/5.x-HBase-2.0 fe03c3006 -> 6521c87a0


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/6521c87a
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/6521c87a
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/6521c87a

Branch: refs/heads/5.x-HBase-2.0
Commit: 6521c87a03c001908f0d4fabf0f968e72c2d0a89
Parents: fe03c30
Author: maryannxue 
Authored: Fri Apr 6 14:04:02 2018 -0700
Committer: maryannxue 
Committed: Fri Apr 6 14:04:02 2018 -0700

--
 .../org/apache/phoenix/optimize/QueryOptimizer.java | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/6521c87a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 44baee4..4f2a5e9 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -38,7 +38,6 @@ import org.apache.phoenix.compile.SequenceManager;
 import org.apache.phoenix.compile.StatementContext;
 import org.apache.phoenix.compile.StatementNormalizer;
 import org.apache.phoenix.compile.SubqueryRewriter;
-import org.apache.phoenix.execute.BaseQueryPlan;
 import org.apache.phoenix.iterate.ParallelIteratorFactory;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
@@ -123,11 +122,14 @@ public class QueryOptimizer {
 return Collections.singletonList(dataPlan);
 }
 
-if (dataPlan instanceof BaseQueryPlan) {
-return getApplicablePlans((BaseQueryPlan) dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
+SelectStatement select = (SelectStatement) dataPlan.getStatement();
+if (!select.isUnion()
+&& !select.isJoin()
+&& select.getInnerSelectStatement() == null
+&& (select.getWhere() == null || 
!select.getWhere().hasSubquery())) {
+return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 
-SelectStatement select = (SelectStatement) dataPlan.getStatement();
 ColumnResolver resolver = FromCompiler.getResolverForQuery(select, 
statement.getConnection());
 Map dataPlans = null;
 
@@ -184,7 +186,7 @@ public class QueryOptimizer {
 return Collections.singletonList(compiler.compile());
 }
 
-private List getApplicablePlans(BaseQueryPlan dataPlan, 
PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
+private List getApplicablePlansForSingleFlatQuery(QueryPlan 
dataPlan, PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
 SelectStatement select = (SelectStatement)dataPlan.getStatement();
 // Exit early if we have a point lookup as we can't get better than 
that
 if (dataPlan.getContext().getScanRanges().isPointLookup() && 
stopAtBestPlan) {



phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum)

2018-04-06 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-0.98 268e744d6 -> b52f467d9


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


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

Branch: refs/heads/4.x-HBase-0.98
Commit: b52f467d970b2682b7a70952956144c965c472ba
Parents: 268e744
Author: maryannxue 
Authored: Fri Apr 6 13:58:47 2018 -0700
Committer: maryannxue 
Committed: Fri Apr 6 13:58:47 2018 -0700

--
 .../org/apache/phoenix/optimize/QueryOptimizer.java | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/b52f467d/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 31f5c34..6d668cc 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -38,7 +38,6 @@ import org.apache.phoenix.compile.SequenceManager;
 import org.apache.phoenix.compile.StatementContext;
 import org.apache.phoenix.compile.StatementNormalizer;
 import org.apache.phoenix.compile.SubqueryRewriter;
-import org.apache.phoenix.execute.BaseQueryPlan;
 import org.apache.phoenix.iterate.ParallelIteratorFactory;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
@@ -126,11 +125,14 @@ public class QueryOptimizer {
 return Collections.singletonList(dataPlan);
 }
 
-if (dataPlan instanceof BaseQueryPlan) {
-return getApplicablePlans((BaseQueryPlan) dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
+SelectStatement select = (SelectStatement) dataPlan.getStatement();
+if (!select.isUnion()
+&& !select.isJoin()
+&& select.getInnerSelectStatement() == null
+&& (select.getWhere() == null || 
!select.getWhere().hasSubquery())) {
+return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 
-SelectStatement select = (SelectStatement) dataPlan.getStatement();
 ColumnResolver resolver = FromCompiler.getResolverForQuery(select, 
statement.getConnection());
 Map dataPlans = null;
 
@@ -187,7 +189,7 @@ public class QueryOptimizer {
 return Collections.singletonList(compiler.compile());
 }
 
-private List getApplicablePlans(BaseQueryPlan dataPlan, 
PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
+private List getApplicablePlansForSingleFlatQuery(QueryPlan 
dataPlan, PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
 SelectStatement select = (SelectStatement)dataPlan.getStatement();
 // Exit early if we have a point lookup as we can't get better than 
that
 if (dataPlan.getContext().getScanRanges().isPointLookup() && 
stopAtBestPlan) {



phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum)

2018-04-06 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-1.1 d147d8f06 -> 1b7f58104


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/1b7f5810
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/1b7f5810
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/1b7f5810

Branch: refs/heads/4.x-HBase-1.1
Commit: 1b7f58104b033e613e1ca939aa53ae11f6b43385
Parents: d147d8f
Author: maryannxue 
Authored: Fri Apr 6 13:58:15 2018 -0700
Committer: maryannxue 
Committed: Fri Apr 6 13:58:15 2018 -0700

--
 .../org/apache/phoenix/optimize/QueryOptimizer.java | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/1b7f5810/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 31f5c34..6d668cc 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -38,7 +38,6 @@ import org.apache.phoenix.compile.SequenceManager;
 import org.apache.phoenix.compile.StatementContext;
 import org.apache.phoenix.compile.StatementNormalizer;
 import org.apache.phoenix.compile.SubqueryRewriter;
-import org.apache.phoenix.execute.BaseQueryPlan;
 import org.apache.phoenix.iterate.ParallelIteratorFactory;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
@@ -126,11 +125,14 @@ public class QueryOptimizer {
 return Collections.singletonList(dataPlan);
 }
 
-if (dataPlan instanceof BaseQueryPlan) {
-return getApplicablePlans((BaseQueryPlan) dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
+SelectStatement select = (SelectStatement) dataPlan.getStatement();
+if (!select.isUnion()
+&& !select.isJoin()
+&& select.getInnerSelectStatement() == null
+&& (select.getWhere() == null || 
!select.getWhere().hasSubquery())) {
+return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 
-SelectStatement select = (SelectStatement) dataPlan.getStatement();
 ColumnResolver resolver = FromCompiler.getResolverForQuery(select, 
statement.getConnection());
 Map dataPlans = null;
 
@@ -187,7 +189,7 @@ public class QueryOptimizer {
 return Collections.singletonList(compiler.compile());
 }
 
-private List getApplicablePlans(BaseQueryPlan dataPlan, 
PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
+private List getApplicablePlansForSingleFlatQuery(QueryPlan 
dataPlan, PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
 SelectStatement select = (SelectStatement)dataPlan.getStatement();
 // Exit early if we have a point lookup as we can't get better than 
that
 if (dataPlan.getContext().getScanRanges().isPointLookup() && 
stopAtBestPlan) {



phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum)

2018-04-06 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-1.3 995f417da -> fb9626117


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


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

Branch: refs/heads/4.x-HBase-1.3
Commit: fb9626117ec5d4c498c989f38fa077ab4acaef18
Parents: 995f417
Author: maryannxue 
Authored: Fri Apr 6 13:57:32 2018 -0700
Committer: maryannxue 
Committed: Fri Apr 6 13:57:32 2018 -0700

--
 .../org/apache/phoenix/optimize/QueryOptimizer.java | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/fb962611/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 31f5c34..6d668cc 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -38,7 +38,6 @@ import org.apache.phoenix.compile.SequenceManager;
 import org.apache.phoenix.compile.StatementContext;
 import org.apache.phoenix.compile.StatementNormalizer;
 import org.apache.phoenix.compile.SubqueryRewriter;
-import org.apache.phoenix.execute.BaseQueryPlan;
 import org.apache.phoenix.iterate.ParallelIteratorFactory;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
@@ -126,11 +125,14 @@ public class QueryOptimizer {
 return Collections.singletonList(dataPlan);
 }
 
-if (dataPlan instanceof BaseQueryPlan) {
-return getApplicablePlans((BaseQueryPlan) dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
+SelectStatement select = (SelectStatement) dataPlan.getStatement();
+if (!select.isUnion()
+&& !select.isJoin()
+&& select.getInnerSelectStatement() == null
+&& (select.getWhere() == null || 
!select.getWhere().hasSubquery())) {
+return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 
-SelectStatement select = (SelectStatement) dataPlan.getStatement();
 ColumnResolver resolver = FromCompiler.getResolverForQuery(select, 
statement.getConnection());
 Map dataPlans = null;
 
@@ -187,7 +189,7 @@ public class QueryOptimizer {
 return Collections.singletonList(compiler.compile());
 }
 
-private List getApplicablePlans(BaseQueryPlan dataPlan, 
PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
+private List getApplicablePlansForSingleFlatQuery(QueryPlan 
dataPlan, PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
 SelectStatement select = (SelectStatement)dataPlan.getStatement();
 // Exit early if we have a point lookup as we can't get better than 
that
 if (dataPlan.getContext().getScanRanges().isPointLookup() && 
stopAtBestPlan) {



phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum)

2018-04-06 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-1.2 8b2ebe003 -> 52d3c7d01


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/52d3c7d0
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/52d3c7d0
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/52d3c7d0

Branch: refs/heads/4.x-HBase-1.2
Commit: 52d3c7d015c0f929e97e1a50ab815d9570fcf248
Parents: 8b2ebe0
Author: maryannxue 
Authored: Fri Apr 6 10:05:52 2018 -0700
Committer: maryannxue 
Committed: Fri Apr 6 10:05:52 2018 -0700

--
 .../org/apache/phoenix/optimize/QueryOptimizer.java | 12 +++-
 1 file changed, 7 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/52d3c7d0/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 31f5c34..6d668cc 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -38,7 +38,6 @@ import org.apache.phoenix.compile.SequenceManager;
 import org.apache.phoenix.compile.StatementContext;
 import org.apache.phoenix.compile.StatementNormalizer;
 import org.apache.phoenix.compile.SubqueryRewriter;
-import org.apache.phoenix.execute.BaseQueryPlan;
 import org.apache.phoenix.iterate.ParallelIteratorFactory;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
@@ -126,11 +125,14 @@ public class QueryOptimizer {
 return Collections.singletonList(dataPlan);
 }
 
-if (dataPlan instanceof BaseQueryPlan) {
-return getApplicablePlans((BaseQueryPlan) dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
+SelectStatement select = (SelectStatement) dataPlan.getStatement();
+if (!select.isUnion()
+&& !select.isJoin()
+&& select.getInnerSelectStatement() == null
+&& (select.getWhere() == null || 
!select.getWhere().hasSubquery())) {
+return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 
-SelectStatement select = (SelectStatement) dataPlan.getStatement();
 ColumnResolver resolver = FromCompiler.getResolverForQuery(select, 
statement.getConnection());
 Map dataPlans = null;
 
@@ -187,7 +189,7 @@ public class QueryOptimizer {
 return Collections.singletonList(compiler.compile());
 }
 
-private List getApplicablePlans(BaseQueryPlan dataPlan, 
PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
+private List getApplicablePlansForSingleFlatQuery(QueryPlan 
dataPlan, PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
 SelectStatement select = (SelectStatement)dataPlan.getStatement();
 // Exit early if we have a point lookup as we can't get better than 
that
 if (dataPlan.getContext().getScanRanges().isPointLookup() && 
stopAtBestPlan) {



phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum)

2018-04-05 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/master 49fca494b -> 0b1b219ef


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


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

Branch: refs/heads/master
Commit: 0b1b219ef0e803d7ff254408c24b4bb67a5d88f9
Parents: 49fca49
Author: maryannxue 
Authored: Thu Apr 5 19:33:53 2018 -0700
Committer: maryannxue 
Committed: Thu Apr 5 19:33:53 2018 -0700

--
 .../main/java/org/apache/phoenix/optimize/QueryOptimizer.java   | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/0b1b219e/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 3a2d11e..6d668cc 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -126,7 +126,10 @@ public class QueryOptimizer {
 }
 
 SelectStatement select = (SelectStatement) dataPlan.getStatement();
-if (!select.isUnion() && !select.isJoin() && 
select.getInnerSelectStatement() == null) {
+if (!select.isUnion()
+&& !select.isJoin()
+&& select.getInnerSelectStatement() == null
+&& (select.getWhere() == null || 
!select.getWhere().hasSubquery())) {
 return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 



phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum)

2018-04-05 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/master 701c447d3 -> 49fca494b


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer (addendum)


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/49fca494
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/49fca494
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/49fca494

Branch: refs/heads/master
Commit: 49fca494bf9e13918db558e8276676e3dfda9d74
Parents: 701c447
Author: maryannxue 
Authored: Thu Apr 5 17:38:30 2018 -0700
Committer: maryannxue 
Committed: Thu Apr 5 17:38:30 2018 -0700

--
 .../java/org/apache/phoenix/optimize/QueryOptimizer.java| 9 -
 1 file changed, 4 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/49fca494/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java 
b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
index 31f5c34..3a2d11e 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/optimize/QueryOptimizer.java
@@ -38,7 +38,6 @@ import org.apache.phoenix.compile.SequenceManager;
 import org.apache.phoenix.compile.StatementContext;
 import org.apache.phoenix.compile.StatementNormalizer;
 import org.apache.phoenix.compile.SubqueryRewriter;
-import org.apache.phoenix.execute.BaseQueryPlan;
 import org.apache.phoenix.iterate.ParallelIteratorFactory;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
@@ -126,11 +125,11 @@ public class QueryOptimizer {
 return Collections.singletonList(dataPlan);
 }
 
-if (dataPlan instanceof BaseQueryPlan) {
-return getApplicablePlans((BaseQueryPlan) dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
+SelectStatement select = (SelectStatement) dataPlan.getStatement();
+if (!select.isUnion() && !select.isJoin() && 
select.getInnerSelectStatement() == null) {
+return getApplicablePlansForSingleFlatQuery(dataPlan, statement, 
targetColumns, parallelIteratorFactory, stopAtBestPlan);
 }
 
-SelectStatement select = (SelectStatement) dataPlan.getStatement();
 ColumnResolver resolver = FromCompiler.getResolverForQuery(select, 
statement.getConnection());
 Map dataPlans = null;
 
@@ -187,7 +186,7 @@ public class QueryOptimizer {
 return Collections.singletonList(compiler.compile());
 }
 
-private List getApplicablePlans(BaseQueryPlan dataPlan, 
PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
+private List getApplicablePlansForSingleFlatQuery(QueryPlan 
dataPlan, PhoenixStatement statement, List targetColumns, 
ParallelIteratorFactory parallelIteratorFactory, boolean stopAtBestPlan) throws 
SQLException {
 SelectStatement select = (SelectStatement)dataPlan.getStatement();
 // Exit early if we have a point lookup as we can't get better than 
that
 if (dataPlan.getContext().getScanRanges().isPointLookup() && 
stopAtBestPlan) {



[1/3] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer [Forced Update!]

2018-04-04 Thread pboado
Repository: phoenix
Updated Branches:
  refs/heads/4.x-cdh5.14 5d29e44b7 -> 69fdbe655 (forced update)


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/98a8bbd1
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/98a8bbd1
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/98a8bbd1

Branch: refs/heads/4.x-cdh5.14
Commit: 98a8bbd1c48badcd5a0e1ad729f9a2d98ebc1e3f
Parents: 0fa6d94
Author: maryannxue 
Authored: Wed Apr 4 01:16:10 2018 +0100
Committer: Pedro Boado 
Committed: Wed Apr 4 19:25:35 2018 +0100

--
 .../apache/phoenix/end2end/join/BaseJoinIT.java |   2 +
 .../apache/phoenix/compile/JoinCompiler.java| 298 ++-
 .../apache/phoenix/compile/QueryCompiler.java   |  79 +++--
 .../phoenix/compile/SubselectRewriter.java  |   5 +
 .../apache/phoenix/compile/UpsertCompiler.java  |   2 +-
 .../apache/phoenix/jdbc/PhoenixStatement.java   |   2 +-
 .../GenSubqueryParamValuesRewriter.java | 153 ++
 .../apache/phoenix/optimize/QueryOptimizer.java | 172 ++-
 .../phoenix/compile/QueryCompilerTest.java  | 114 ++-
 9 files changed, 561 insertions(+), 266 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/98a8bbd1/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
index 6e03a37..4d4660c 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
@@ -34,6 +34,7 @@ import java.util.regex.Pattern;
 
 import org.apache.phoenix.cache.ServerCacheClient;
 import org.apache.phoenix.end2end.ParallelStatsDisabledIT;
+import org.apache.phoenix.query.QueryServices;
 import org.apache.phoenix.util.PropertiesUtil;
 import org.apache.phoenix.util.SchemaUtil;
 import org.apache.phoenix.util.StringUtil;
@@ -456,6 +457,7 @@ public abstract class BaseJoinIT extends 
ParallelStatsDisabledIT {
protected Connection getConnection() throws SQLException {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);

props.put(ServerCacheClient.HASH_JOIN_SERVER_CACHE_RESEND_PER_SERVER, "true");
+props.put(QueryServices.FORCE_ROW_KEY_ORDER_ATTRIB, "true");
return DriverManager.getConnection(getUrl(), props);
}


http://git-wip-us.apache.org/repos/asf/phoenix/blob/98a8bbd1/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java 
b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
index cf5a5dc..88e8f50 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
@@ -40,7 +40,7 @@ import org.apache.phoenix.expression.AndExpression;
 import org.apache.phoenix.expression.CoerceExpression;
 import org.apache.phoenix.expression.Expression;
 import org.apache.phoenix.expression.LiteralExpression;
-import org.apache.phoenix.expression.function.CountAggregateFunction;
+import org.apache.phoenix.expression.function.MinAggregateFunction;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.parse.AliasedNode;
@@ -53,26 +53,19 @@ import org.apache.phoenix.parse.ComparisonParseNode;
 import org.apache.phoenix.parse.ConcreteTableNode;
 import org.apache.phoenix.parse.DerivedTableNode;
 import org.apache.phoenix.parse.EqualParseNode;
-import org.apache.phoenix.parse.HintNode;
 import org.apache.phoenix.parse.HintNode.Hint;
-import org.apache.phoenix.parse.IndexExpressionParseNodeRewriter;
 import org.apache.phoenix.parse.JoinTableNode;
 import org.apache.phoenix.parse.JoinTableNode.JoinType;
 import org.apache.phoenix.parse.NamedTableNode;
 import org.apache.phoenix.parse.OrderByNode;
 import org.apache.phoenix.parse.ParseNode;
 import org.apache.phoenix.parse.ParseNodeFactory;
-import org.apache.phoenix.parse.ParseNodeRewriter;
 import org.apache.phoenix.parse.SelectStatement;
 import org.apache.phoenix.parse.StatelessTraverseAllParseNodeVisitor;
 import org.apache.phoenix.parse.TableName;
 import org.apache.phoenix.parse.TableNode;
 import org.apache.phoenix.parse.TableNodeVisitor;
 import org.apache.phoenix.parse.TableWildcardParseNode;

[1/3] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer [Forced Update!]

2018-04-04 Thread pboado
Repository: phoenix
Updated Branches:
  refs/heads/4.x-cdh5.13 ed8a4f28b -> f246892d0 (forced update)


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/98a8bbd1
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/98a8bbd1
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/98a8bbd1

Branch: refs/heads/4.x-cdh5.13
Commit: 98a8bbd1c48badcd5a0e1ad729f9a2d98ebc1e3f
Parents: 0fa6d94
Author: maryannxue 
Authored: Wed Apr 4 01:16:10 2018 +0100
Committer: Pedro Boado 
Committed: Wed Apr 4 19:25:35 2018 +0100

--
 .../apache/phoenix/end2end/join/BaseJoinIT.java |   2 +
 .../apache/phoenix/compile/JoinCompiler.java| 298 ++-
 .../apache/phoenix/compile/QueryCompiler.java   |  79 +++--
 .../phoenix/compile/SubselectRewriter.java  |   5 +
 .../apache/phoenix/compile/UpsertCompiler.java  |   2 +-
 .../apache/phoenix/jdbc/PhoenixStatement.java   |   2 +-
 .../GenSubqueryParamValuesRewriter.java | 153 ++
 .../apache/phoenix/optimize/QueryOptimizer.java | 172 ++-
 .../phoenix/compile/QueryCompilerTest.java  | 114 ++-
 9 files changed, 561 insertions(+), 266 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/98a8bbd1/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
index 6e03a37..4d4660c 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
@@ -34,6 +34,7 @@ import java.util.regex.Pattern;
 
 import org.apache.phoenix.cache.ServerCacheClient;
 import org.apache.phoenix.end2end.ParallelStatsDisabledIT;
+import org.apache.phoenix.query.QueryServices;
 import org.apache.phoenix.util.PropertiesUtil;
 import org.apache.phoenix.util.SchemaUtil;
 import org.apache.phoenix.util.StringUtil;
@@ -456,6 +457,7 @@ public abstract class BaseJoinIT extends 
ParallelStatsDisabledIT {
protected Connection getConnection() throws SQLException {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);

props.put(ServerCacheClient.HASH_JOIN_SERVER_CACHE_RESEND_PER_SERVER, "true");
+props.put(QueryServices.FORCE_ROW_KEY_ORDER_ATTRIB, "true");
return DriverManager.getConnection(getUrl(), props);
}


http://git-wip-us.apache.org/repos/asf/phoenix/blob/98a8bbd1/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java 
b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
index cf5a5dc..88e8f50 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
@@ -40,7 +40,7 @@ import org.apache.phoenix.expression.AndExpression;
 import org.apache.phoenix.expression.CoerceExpression;
 import org.apache.phoenix.expression.Expression;
 import org.apache.phoenix.expression.LiteralExpression;
-import org.apache.phoenix.expression.function.CountAggregateFunction;
+import org.apache.phoenix.expression.function.MinAggregateFunction;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.parse.AliasedNode;
@@ -53,26 +53,19 @@ import org.apache.phoenix.parse.ComparisonParseNode;
 import org.apache.phoenix.parse.ConcreteTableNode;
 import org.apache.phoenix.parse.DerivedTableNode;
 import org.apache.phoenix.parse.EqualParseNode;
-import org.apache.phoenix.parse.HintNode;
 import org.apache.phoenix.parse.HintNode.Hint;
-import org.apache.phoenix.parse.IndexExpressionParseNodeRewriter;
 import org.apache.phoenix.parse.JoinTableNode;
 import org.apache.phoenix.parse.JoinTableNode.JoinType;
 import org.apache.phoenix.parse.NamedTableNode;
 import org.apache.phoenix.parse.OrderByNode;
 import org.apache.phoenix.parse.ParseNode;
 import org.apache.phoenix.parse.ParseNodeFactory;
-import org.apache.phoenix.parse.ParseNodeRewriter;
 import org.apache.phoenix.parse.SelectStatement;
 import org.apache.phoenix.parse.StatelessTraverseAllParseNodeVisitor;
 import org.apache.phoenix.parse.TableName;
 import org.apache.phoenix.parse.TableNode;
 import org.apache.phoenix.parse.TableNodeVisitor;
 import org.apache.phoenix.parse.TableWildcardParseNode;

[1/3] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer [Forced Update!]

2018-04-04 Thread pboado
Repository: phoenix
Updated Branches:
  refs/heads/4.x-cdh5.12 cab7d474f -> 2fdbfc1b1 (forced update)


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/98a8bbd1
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/98a8bbd1
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/98a8bbd1

Branch: refs/heads/4.x-cdh5.12
Commit: 98a8bbd1c48badcd5a0e1ad729f9a2d98ebc1e3f
Parents: 0fa6d94
Author: maryannxue 
Authored: Wed Apr 4 01:16:10 2018 +0100
Committer: Pedro Boado 
Committed: Wed Apr 4 19:25:35 2018 +0100

--
 .../apache/phoenix/end2end/join/BaseJoinIT.java |   2 +
 .../apache/phoenix/compile/JoinCompiler.java| 298 ++-
 .../apache/phoenix/compile/QueryCompiler.java   |  79 +++--
 .../phoenix/compile/SubselectRewriter.java  |   5 +
 .../apache/phoenix/compile/UpsertCompiler.java  |   2 +-
 .../apache/phoenix/jdbc/PhoenixStatement.java   |   2 +-
 .../GenSubqueryParamValuesRewriter.java | 153 ++
 .../apache/phoenix/optimize/QueryOptimizer.java | 172 ++-
 .../phoenix/compile/QueryCompilerTest.java  | 114 ++-
 9 files changed, 561 insertions(+), 266 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/98a8bbd1/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
index 6e03a37..4d4660c 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
@@ -34,6 +34,7 @@ import java.util.regex.Pattern;
 
 import org.apache.phoenix.cache.ServerCacheClient;
 import org.apache.phoenix.end2end.ParallelStatsDisabledIT;
+import org.apache.phoenix.query.QueryServices;
 import org.apache.phoenix.util.PropertiesUtil;
 import org.apache.phoenix.util.SchemaUtil;
 import org.apache.phoenix.util.StringUtil;
@@ -456,6 +457,7 @@ public abstract class BaseJoinIT extends 
ParallelStatsDisabledIT {
protected Connection getConnection() throws SQLException {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);

props.put(ServerCacheClient.HASH_JOIN_SERVER_CACHE_RESEND_PER_SERVER, "true");
+props.put(QueryServices.FORCE_ROW_KEY_ORDER_ATTRIB, "true");
return DriverManager.getConnection(getUrl(), props);
}


http://git-wip-us.apache.org/repos/asf/phoenix/blob/98a8bbd1/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java 
b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
index cf5a5dc..88e8f50 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
@@ -40,7 +40,7 @@ import org.apache.phoenix.expression.AndExpression;
 import org.apache.phoenix.expression.CoerceExpression;
 import org.apache.phoenix.expression.Expression;
 import org.apache.phoenix.expression.LiteralExpression;
-import org.apache.phoenix.expression.function.CountAggregateFunction;
+import org.apache.phoenix.expression.function.MinAggregateFunction;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.parse.AliasedNode;
@@ -53,26 +53,19 @@ import org.apache.phoenix.parse.ComparisonParseNode;
 import org.apache.phoenix.parse.ConcreteTableNode;
 import org.apache.phoenix.parse.DerivedTableNode;
 import org.apache.phoenix.parse.EqualParseNode;
-import org.apache.phoenix.parse.HintNode;
 import org.apache.phoenix.parse.HintNode.Hint;
-import org.apache.phoenix.parse.IndexExpressionParseNodeRewriter;
 import org.apache.phoenix.parse.JoinTableNode;
 import org.apache.phoenix.parse.JoinTableNode.JoinType;
 import org.apache.phoenix.parse.NamedTableNode;
 import org.apache.phoenix.parse.OrderByNode;
 import org.apache.phoenix.parse.ParseNode;
 import org.apache.phoenix.parse.ParseNodeFactory;
-import org.apache.phoenix.parse.ParseNodeRewriter;
 import org.apache.phoenix.parse.SelectStatement;
 import org.apache.phoenix.parse.StatelessTraverseAllParseNodeVisitor;
 import org.apache.phoenix.parse.TableName;
 import org.apache.phoenix.parse.TableNode;
 import org.apache.phoenix.parse.TableNodeVisitor;
 import org.apache.phoenix.parse.TableWildcardParseNode;

[1/2] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer

2018-04-04 Thread pboado
Repository: phoenix
Updated Branches:
  refs/heads/4.x-cdh5.11 0fa6d947e -> ce3e5867e


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/98a8bbd1
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/98a8bbd1
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/98a8bbd1

Branch: refs/heads/4.x-cdh5.11
Commit: 98a8bbd1c48badcd5a0e1ad729f9a2d98ebc1e3f
Parents: 0fa6d94
Author: maryannxue 
Authored: Wed Apr 4 01:16:10 2018 +0100
Committer: Pedro Boado 
Committed: Wed Apr 4 19:25:35 2018 +0100

--
 .../apache/phoenix/end2end/join/BaseJoinIT.java |   2 +
 .../apache/phoenix/compile/JoinCompiler.java| 298 ++-
 .../apache/phoenix/compile/QueryCompiler.java   |  79 +++--
 .../phoenix/compile/SubselectRewriter.java  |   5 +
 .../apache/phoenix/compile/UpsertCompiler.java  |   2 +-
 .../apache/phoenix/jdbc/PhoenixStatement.java   |   2 +-
 .../GenSubqueryParamValuesRewriter.java | 153 ++
 .../apache/phoenix/optimize/QueryOptimizer.java | 172 ++-
 .../phoenix/compile/QueryCompilerTest.java  | 114 ++-
 9 files changed, 561 insertions(+), 266 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/98a8bbd1/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
index 6e03a37..4d4660c 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
@@ -34,6 +34,7 @@ import java.util.regex.Pattern;
 
 import org.apache.phoenix.cache.ServerCacheClient;
 import org.apache.phoenix.end2end.ParallelStatsDisabledIT;
+import org.apache.phoenix.query.QueryServices;
 import org.apache.phoenix.util.PropertiesUtil;
 import org.apache.phoenix.util.SchemaUtil;
 import org.apache.phoenix.util.StringUtil;
@@ -456,6 +457,7 @@ public abstract class BaseJoinIT extends 
ParallelStatsDisabledIT {
protected Connection getConnection() throws SQLException {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);

props.put(ServerCacheClient.HASH_JOIN_SERVER_CACHE_RESEND_PER_SERVER, "true");
+props.put(QueryServices.FORCE_ROW_KEY_ORDER_ATTRIB, "true");
return DriverManager.getConnection(getUrl(), props);
}


http://git-wip-us.apache.org/repos/asf/phoenix/blob/98a8bbd1/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java 
b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
index cf5a5dc..88e8f50 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
@@ -40,7 +40,7 @@ import org.apache.phoenix.expression.AndExpression;
 import org.apache.phoenix.expression.CoerceExpression;
 import org.apache.phoenix.expression.Expression;
 import org.apache.phoenix.expression.LiteralExpression;
-import org.apache.phoenix.expression.function.CountAggregateFunction;
+import org.apache.phoenix.expression.function.MinAggregateFunction;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.parse.AliasedNode;
@@ -53,26 +53,19 @@ import org.apache.phoenix.parse.ComparisonParseNode;
 import org.apache.phoenix.parse.ConcreteTableNode;
 import org.apache.phoenix.parse.DerivedTableNode;
 import org.apache.phoenix.parse.EqualParseNode;
-import org.apache.phoenix.parse.HintNode;
 import org.apache.phoenix.parse.HintNode.Hint;
-import org.apache.phoenix.parse.IndexExpressionParseNodeRewriter;
 import org.apache.phoenix.parse.JoinTableNode;
 import org.apache.phoenix.parse.JoinTableNode.JoinType;
 import org.apache.phoenix.parse.NamedTableNode;
 import org.apache.phoenix.parse.OrderByNode;
 import org.apache.phoenix.parse.ParseNode;
 import org.apache.phoenix.parse.ParseNodeFactory;
-import org.apache.phoenix.parse.ParseNodeRewriter;
 import org.apache.phoenix.parse.SelectStatement;
 import org.apache.phoenix.parse.StatelessTraverseAllParseNodeVisitor;
 import org.apache.phoenix.parse.TableName;
 import org.apache.phoenix.parse.TableNode;
 import org.apache.phoenix.parse.TableNodeVisitor;
 import org.apache.phoenix.parse.TableWildcardParseNode;
-import 

phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer

2018-04-03 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/5.x-HBase-2.0 bdca54a69 -> 3c1b3b547


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/3c1b3b54
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/3c1b3b54
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/3c1b3b54

Branch: refs/heads/5.x-HBase-2.0
Commit: 3c1b3b547f88cc2860b16658a0babe3e05d34c8e
Parents: bdca54a
Author: maryannxue 
Authored: Tue Apr 3 20:01:59 2018 -0700
Committer: maryannxue 
Committed: Tue Apr 3 20:01:59 2018 -0700

--
 .../apache/phoenix/end2end/join/BaseJoinIT.java |   2 +
 .../apache/phoenix/compile/JoinCompiler.java| 298 ++-
 .../apache/phoenix/compile/QueryCompiler.java   |  79 +++--
 .../phoenix/compile/SubselectRewriter.java  |   5 +
 .../apache/phoenix/compile/UpsertCompiler.java  |   2 +-
 .../apache/phoenix/jdbc/PhoenixStatement.java   |   2 +-
 .../GenSubqueryParamValuesRewriter.java | 153 ++
 .../apache/phoenix/optimize/QueryOptimizer.java | 175 ++-
 .../phoenix/compile/QueryCompilerTest.java  | 114 ++-
 9 files changed, 564 insertions(+), 266 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/3c1b3b54/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
index 6e03a37..4d4660c 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
@@ -34,6 +34,7 @@ import java.util.regex.Pattern;
 
 import org.apache.phoenix.cache.ServerCacheClient;
 import org.apache.phoenix.end2end.ParallelStatsDisabledIT;
+import org.apache.phoenix.query.QueryServices;
 import org.apache.phoenix.util.PropertiesUtil;
 import org.apache.phoenix.util.SchemaUtil;
 import org.apache.phoenix.util.StringUtil;
@@ -456,6 +457,7 @@ public abstract class BaseJoinIT extends 
ParallelStatsDisabledIT {
protected Connection getConnection() throws SQLException {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);

props.put(ServerCacheClient.HASH_JOIN_SERVER_CACHE_RESEND_PER_SERVER, "true");
+props.put(QueryServices.FORCE_ROW_KEY_ORDER_ATTRIB, "true");
return DriverManager.getConnection(getUrl(), props);
}


http://git-wip-us.apache.org/repos/asf/phoenix/blob/3c1b3b54/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java 
b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
index cf5a5dc..88e8f50 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
@@ -40,7 +40,7 @@ import org.apache.phoenix.expression.AndExpression;
 import org.apache.phoenix.expression.CoerceExpression;
 import org.apache.phoenix.expression.Expression;
 import org.apache.phoenix.expression.LiteralExpression;
-import org.apache.phoenix.expression.function.CountAggregateFunction;
+import org.apache.phoenix.expression.function.MinAggregateFunction;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.parse.AliasedNode;
@@ -53,26 +53,19 @@ import org.apache.phoenix.parse.ComparisonParseNode;
 import org.apache.phoenix.parse.ConcreteTableNode;
 import org.apache.phoenix.parse.DerivedTableNode;
 import org.apache.phoenix.parse.EqualParseNode;
-import org.apache.phoenix.parse.HintNode;
 import org.apache.phoenix.parse.HintNode.Hint;
-import org.apache.phoenix.parse.IndexExpressionParseNodeRewriter;
 import org.apache.phoenix.parse.JoinTableNode;
 import org.apache.phoenix.parse.JoinTableNode.JoinType;
 import org.apache.phoenix.parse.NamedTableNode;
 import org.apache.phoenix.parse.OrderByNode;
 import org.apache.phoenix.parse.ParseNode;
 import org.apache.phoenix.parse.ParseNodeFactory;
-import org.apache.phoenix.parse.ParseNodeRewriter;
 import org.apache.phoenix.parse.SelectStatement;
 import org.apache.phoenix.parse.StatelessTraverseAllParseNodeVisitor;
 import org.apache.phoenix.parse.TableName;
 import org.apache.phoenix.parse.TableNode;
 import org.apache.phoenix.parse.TableNodeVisitor;
 import org.apache.phoenix.parse.TableWildcardParseNode;
-import 

phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer

2018-04-03 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-1.1 b97378aff -> f5376c418


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer


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

Branch: refs/heads/4.x-HBase-1.1
Commit: f5376c418eed3d1b24c25a6c6e6ff1e87e8ee766
Parents: b97378a
Author: maryannxue 
Authored: Tue Apr 3 17:21:32 2018 -0700
Committer: maryannxue 
Committed: Tue Apr 3 17:21:32 2018 -0700

--
 .../apache/phoenix/end2end/join/BaseJoinIT.java |   2 +
 .../apache/phoenix/compile/JoinCompiler.java| 298 ++-
 .../apache/phoenix/compile/QueryCompiler.java   |  79 +++--
 .../phoenix/compile/SubselectRewriter.java  |   5 +
 .../apache/phoenix/compile/UpsertCompiler.java  |   2 +-
 .../apache/phoenix/jdbc/PhoenixStatement.java   |   2 +-
 .../GenSubqueryParamValuesRewriter.java | 153 ++
 .../apache/phoenix/optimize/QueryOptimizer.java | 172 ++-
 .../phoenix/compile/QueryCompilerTest.java  | 114 ++-
 9 files changed, 561 insertions(+), 266 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/f5376c41/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
index 6e03a37..4d4660c 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
@@ -34,6 +34,7 @@ import java.util.regex.Pattern;
 
 import org.apache.phoenix.cache.ServerCacheClient;
 import org.apache.phoenix.end2end.ParallelStatsDisabledIT;
+import org.apache.phoenix.query.QueryServices;
 import org.apache.phoenix.util.PropertiesUtil;
 import org.apache.phoenix.util.SchemaUtil;
 import org.apache.phoenix.util.StringUtil;
@@ -456,6 +457,7 @@ public abstract class BaseJoinIT extends 
ParallelStatsDisabledIT {
protected Connection getConnection() throws SQLException {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);

props.put(ServerCacheClient.HASH_JOIN_SERVER_CACHE_RESEND_PER_SERVER, "true");
+props.put(QueryServices.FORCE_ROW_KEY_ORDER_ATTRIB, "true");
return DriverManager.getConnection(getUrl(), props);
}


http://git-wip-us.apache.org/repos/asf/phoenix/blob/f5376c41/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java 
b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
index cf5a5dc..88e8f50 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
@@ -40,7 +40,7 @@ import org.apache.phoenix.expression.AndExpression;
 import org.apache.phoenix.expression.CoerceExpression;
 import org.apache.phoenix.expression.Expression;
 import org.apache.phoenix.expression.LiteralExpression;
-import org.apache.phoenix.expression.function.CountAggregateFunction;
+import org.apache.phoenix.expression.function.MinAggregateFunction;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.parse.AliasedNode;
@@ -53,26 +53,19 @@ import org.apache.phoenix.parse.ComparisonParseNode;
 import org.apache.phoenix.parse.ConcreteTableNode;
 import org.apache.phoenix.parse.DerivedTableNode;
 import org.apache.phoenix.parse.EqualParseNode;
-import org.apache.phoenix.parse.HintNode;
 import org.apache.phoenix.parse.HintNode.Hint;
-import org.apache.phoenix.parse.IndexExpressionParseNodeRewriter;
 import org.apache.phoenix.parse.JoinTableNode;
 import org.apache.phoenix.parse.JoinTableNode.JoinType;
 import org.apache.phoenix.parse.NamedTableNode;
 import org.apache.phoenix.parse.OrderByNode;
 import org.apache.phoenix.parse.ParseNode;
 import org.apache.phoenix.parse.ParseNodeFactory;
-import org.apache.phoenix.parse.ParseNodeRewriter;
 import org.apache.phoenix.parse.SelectStatement;
 import org.apache.phoenix.parse.StatelessTraverseAllParseNodeVisitor;
 import org.apache.phoenix.parse.TableName;
 import org.apache.phoenix.parse.TableNode;
 import org.apache.phoenix.parse.TableNodeVisitor;
 import org.apache.phoenix.parse.TableWildcardParseNode;
-import 

phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer

2018-04-03 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-1.2 d1668b9cc -> 82414d7d3


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/82414d7d
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/82414d7d
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/82414d7d

Branch: refs/heads/4.x-HBase-1.2
Commit: 82414d7d3146cbf2073f39343e3c064b2b729209
Parents: d1668b9
Author: maryannxue 
Authored: Tue Apr 3 17:16:10 2018 -0700
Committer: maryannxue 
Committed: Tue Apr 3 17:16:10 2018 -0700

--
 .../apache/phoenix/end2end/join/BaseJoinIT.java |   2 +
 .../apache/phoenix/compile/JoinCompiler.java| 298 ++-
 .../apache/phoenix/compile/QueryCompiler.java   |  79 +++--
 .../phoenix/compile/SubselectRewriter.java  |   5 +
 .../apache/phoenix/compile/UpsertCompiler.java  |   2 +-
 .../apache/phoenix/jdbc/PhoenixStatement.java   |   2 +-
 .../GenSubqueryParamValuesRewriter.java | 153 ++
 .../apache/phoenix/optimize/QueryOptimizer.java | 172 ++-
 .../phoenix/compile/QueryCompilerTest.java  | 114 ++-
 9 files changed, 561 insertions(+), 266 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/82414d7d/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
index 6e03a37..4d4660c 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
@@ -34,6 +34,7 @@ import java.util.regex.Pattern;
 
 import org.apache.phoenix.cache.ServerCacheClient;
 import org.apache.phoenix.end2end.ParallelStatsDisabledIT;
+import org.apache.phoenix.query.QueryServices;
 import org.apache.phoenix.util.PropertiesUtil;
 import org.apache.phoenix.util.SchemaUtil;
 import org.apache.phoenix.util.StringUtil;
@@ -456,6 +457,7 @@ public abstract class BaseJoinIT extends 
ParallelStatsDisabledIT {
protected Connection getConnection() throws SQLException {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);

props.put(ServerCacheClient.HASH_JOIN_SERVER_CACHE_RESEND_PER_SERVER, "true");
+props.put(QueryServices.FORCE_ROW_KEY_ORDER_ATTRIB, "true");
return DriverManager.getConnection(getUrl(), props);
}


http://git-wip-us.apache.org/repos/asf/phoenix/blob/82414d7d/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java 
b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
index cf5a5dc..88e8f50 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
@@ -40,7 +40,7 @@ import org.apache.phoenix.expression.AndExpression;
 import org.apache.phoenix.expression.CoerceExpression;
 import org.apache.phoenix.expression.Expression;
 import org.apache.phoenix.expression.LiteralExpression;
-import org.apache.phoenix.expression.function.CountAggregateFunction;
+import org.apache.phoenix.expression.function.MinAggregateFunction;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.parse.AliasedNode;
@@ -53,26 +53,19 @@ import org.apache.phoenix.parse.ComparisonParseNode;
 import org.apache.phoenix.parse.ConcreteTableNode;
 import org.apache.phoenix.parse.DerivedTableNode;
 import org.apache.phoenix.parse.EqualParseNode;
-import org.apache.phoenix.parse.HintNode;
 import org.apache.phoenix.parse.HintNode.Hint;
-import org.apache.phoenix.parse.IndexExpressionParseNodeRewriter;
 import org.apache.phoenix.parse.JoinTableNode;
 import org.apache.phoenix.parse.JoinTableNode.JoinType;
 import org.apache.phoenix.parse.NamedTableNode;
 import org.apache.phoenix.parse.OrderByNode;
 import org.apache.phoenix.parse.ParseNode;
 import org.apache.phoenix.parse.ParseNodeFactory;
-import org.apache.phoenix.parse.ParseNodeRewriter;
 import org.apache.phoenix.parse.SelectStatement;
 import org.apache.phoenix.parse.StatelessTraverseAllParseNodeVisitor;
 import org.apache.phoenix.parse.TableName;
 import org.apache.phoenix.parse.TableNode;
 import org.apache.phoenix.parse.TableNodeVisitor;
 import org.apache.phoenix.parse.TableWildcardParseNode;
-import 

phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer

2018-04-03 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/4.x-HBase-1.3 037b7cbe3 -> 781a9c09c


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer


Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/781a9c09
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/781a9c09
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/781a9c09

Branch: refs/heads/4.x-HBase-1.3
Commit: 781a9c09c31d1e3090886b77d18638dfee7b615d
Parents: 037b7cb
Author: maryannxue 
Authored: Tue Apr 3 17:13:39 2018 -0700
Committer: maryannxue 
Committed: Tue Apr 3 17:13:39 2018 -0700

--
 .../apache/phoenix/end2end/join/BaseJoinIT.java |   2 +
 .../apache/phoenix/compile/JoinCompiler.java| 298 ++-
 .../apache/phoenix/compile/QueryCompiler.java   |  79 +++--
 .../phoenix/compile/SubselectRewriter.java  |   5 +
 .../apache/phoenix/compile/UpsertCompiler.java  |   2 +-
 .../apache/phoenix/jdbc/PhoenixStatement.java   |   2 +-
 .../GenSubqueryParamValuesRewriter.java | 153 ++
 .../apache/phoenix/optimize/QueryOptimizer.java | 172 ++-
 .../phoenix/compile/QueryCompilerTest.java  | 114 ++-
 9 files changed, 561 insertions(+), 266 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/781a9c09/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
index 6e03a37..4d4660c 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
@@ -34,6 +34,7 @@ import java.util.regex.Pattern;
 
 import org.apache.phoenix.cache.ServerCacheClient;
 import org.apache.phoenix.end2end.ParallelStatsDisabledIT;
+import org.apache.phoenix.query.QueryServices;
 import org.apache.phoenix.util.PropertiesUtil;
 import org.apache.phoenix.util.SchemaUtil;
 import org.apache.phoenix.util.StringUtil;
@@ -456,6 +457,7 @@ public abstract class BaseJoinIT extends 
ParallelStatsDisabledIT {
protected Connection getConnection() throws SQLException {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);

props.put(ServerCacheClient.HASH_JOIN_SERVER_CACHE_RESEND_PER_SERVER, "true");
+props.put(QueryServices.FORCE_ROW_KEY_ORDER_ATTRIB, "true");
return DriverManager.getConnection(getUrl(), props);
}


http://git-wip-us.apache.org/repos/asf/phoenix/blob/781a9c09/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java 
b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
index cf5a5dc..88e8f50 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
@@ -40,7 +40,7 @@ import org.apache.phoenix.expression.AndExpression;
 import org.apache.phoenix.expression.CoerceExpression;
 import org.apache.phoenix.expression.Expression;
 import org.apache.phoenix.expression.LiteralExpression;
-import org.apache.phoenix.expression.function.CountAggregateFunction;
+import org.apache.phoenix.expression.function.MinAggregateFunction;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.parse.AliasedNode;
@@ -53,26 +53,19 @@ import org.apache.phoenix.parse.ComparisonParseNode;
 import org.apache.phoenix.parse.ConcreteTableNode;
 import org.apache.phoenix.parse.DerivedTableNode;
 import org.apache.phoenix.parse.EqualParseNode;
-import org.apache.phoenix.parse.HintNode;
 import org.apache.phoenix.parse.HintNode.Hint;
-import org.apache.phoenix.parse.IndexExpressionParseNodeRewriter;
 import org.apache.phoenix.parse.JoinTableNode;
 import org.apache.phoenix.parse.JoinTableNode.JoinType;
 import org.apache.phoenix.parse.NamedTableNode;
 import org.apache.phoenix.parse.OrderByNode;
 import org.apache.phoenix.parse.ParseNode;
 import org.apache.phoenix.parse.ParseNodeFactory;
-import org.apache.phoenix.parse.ParseNodeRewriter;
 import org.apache.phoenix.parse.SelectStatement;
 import org.apache.phoenix.parse.StatelessTraverseAllParseNodeVisitor;
 import org.apache.phoenix.parse.TableName;
 import org.apache.phoenix.parse.TableNode;
 import org.apache.phoenix.parse.TableNodeVisitor;
 import org.apache.phoenix.parse.TableWildcardParseNode;
-import 

phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer

2018-04-03 Thread maryannxue
Repository: phoenix
Updated Branches:
  refs/heads/master ec9267721 -> ab16e2a27


PHOENIX-4616 Move join query optimization out from QueryCompiler into 
QueryOptimizer


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

Branch: refs/heads/master
Commit: ab16e2a27eaac70a1e1142d47307559fbde4bd49
Parents: ec92677
Author: maryannxue 
Authored: Tue Apr 3 13:37:48 2018 -0700
Committer: maryannxue 
Committed: Tue Apr 3 13:37:48 2018 -0700

--
 .../apache/phoenix/end2end/join/BaseJoinIT.java |   2 +
 .../apache/phoenix/compile/JoinCompiler.java| 298 ++-
 .../apache/phoenix/compile/QueryCompiler.java   |  79 +++--
 .../phoenix/compile/SubselectRewriter.java  |   5 +
 .../apache/phoenix/compile/UpsertCompiler.java  |   2 +-
 .../apache/phoenix/jdbc/PhoenixStatement.java   |   2 +-
 .../GenSubqueryParamValuesRewriter.java | 153 ++
 .../apache/phoenix/optimize/QueryOptimizer.java | 172 ++-
 .../phoenix/compile/QueryCompilerTest.java  | 114 ++-
 9 files changed, 561 insertions(+), 266 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/phoenix/blob/ab16e2a2/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
--
diff --git 
a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java 
b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
index 6e03a37..4d4660c 100644
--- a/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
+++ b/phoenix-core/src/it/java/org/apache/phoenix/end2end/join/BaseJoinIT.java
@@ -34,6 +34,7 @@ import java.util.regex.Pattern;
 
 import org.apache.phoenix.cache.ServerCacheClient;
 import org.apache.phoenix.end2end.ParallelStatsDisabledIT;
+import org.apache.phoenix.query.QueryServices;
 import org.apache.phoenix.util.PropertiesUtil;
 import org.apache.phoenix.util.SchemaUtil;
 import org.apache.phoenix.util.StringUtil;
@@ -456,6 +457,7 @@ public abstract class BaseJoinIT extends 
ParallelStatsDisabledIT {
protected Connection getConnection() throws SQLException {
Properties props = PropertiesUtil.deepCopy(TEST_PROPERTIES);

props.put(ServerCacheClient.HASH_JOIN_SERVER_CACHE_RESEND_PER_SERVER, "true");
+props.put(QueryServices.FORCE_ROW_KEY_ORDER_ATTRIB, "true");
return DriverManager.getConnection(getUrl(), props);
}


http://git-wip-us.apache.org/repos/asf/phoenix/blob/ab16e2a2/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
--
diff --git 
a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java 
b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
index cf5a5dc..88e8f50 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/compile/JoinCompiler.java
@@ -40,7 +40,7 @@ import org.apache.phoenix.expression.AndExpression;
 import org.apache.phoenix.expression.CoerceExpression;
 import org.apache.phoenix.expression.Expression;
 import org.apache.phoenix.expression.LiteralExpression;
-import org.apache.phoenix.expression.function.CountAggregateFunction;
+import org.apache.phoenix.expression.function.MinAggregateFunction;
 import org.apache.phoenix.jdbc.PhoenixConnection;
 import org.apache.phoenix.jdbc.PhoenixStatement;
 import org.apache.phoenix.parse.AliasedNode;
@@ -53,26 +53,19 @@ import org.apache.phoenix.parse.ComparisonParseNode;
 import org.apache.phoenix.parse.ConcreteTableNode;
 import org.apache.phoenix.parse.DerivedTableNode;
 import org.apache.phoenix.parse.EqualParseNode;
-import org.apache.phoenix.parse.HintNode;
 import org.apache.phoenix.parse.HintNode.Hint;
-import org.apache.phoenix.parse.IndexExpressionParseNodeRewriter;
 import org.apache.phoenix.parse.JoinTableNode;
 import org.apache.phoenix.parse.JoinTableNode.JoinType;
 import org.apache.phoenix.parse.NamedTableNode;
 import org.apache.phoenix.parse.OrderByNode;
 import org.apache.phoenix.parse.ParseNode;
 import org.apache.phoenix.parse.ParseNodeFactory;
-import org.apache.phoenix.parse.ParseNodeRewriter;
 import org.apache.phoenix.parse.SelectStatement;
 import org.apache.phoenix.parse.StatelessTraverseAllParseNodeVisitor;
 import org.apache.phoenix.parse.TableName;
 import org.apache.phoenix.parse.TableNode;
 import org.apache.phoenix.parse.TableNodeVisitor;
 import org.apache.phoenix.parse.TableWildcardParseNode;
-import