[1/3] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer (addendum) [Forced Update!]
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!]
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!]
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!]
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)
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)
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)
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)
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)
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)
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)
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!]
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; -import org.apache.phoenix.parse.UDFParseNode; -
[1/3] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer [Forced Update!]
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; -import org.apache.phoenix.parse.UDFParseNode; -
[1/3] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer [Forced Update!]
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; -import org.apache.phoenix.parse.UDFParseNode; -
[1/2] phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer
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 org.apache.phoenix.parse.UDFParseNode; -import org.apach
phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer
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 org.apache.phoenix.parse.UDFParseNode; -import org.ap
phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer
Repository: phoenix Updated Branches: refs/heads/4.x-HBase-0.98 289cb4c0b -> ca3ea728c 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/ca3ea728 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/ca3ea728 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/ca3ea728 Branch: refs/heads/4.x-HBase-0.98 Commit: ca3ea728c2413b90d44bcaa1ae13381b79f6e978 Parents: 289cb4c Author: maryannxue Authored: Tue Apr 3 17:27:38 2018 -0700 Committer: maryannxue Committed: Tue Apr 3 17:27:38 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/ca3ea728/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/ca3ea728/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 4020cf9..b1865ab 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 org.apache.phoenix.parse.UDFParseNode; -import org.
phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer
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 org.apache.phoenix.parse.UDFParseNode; -import org.ap
phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer
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 org.apache.phoenix.parse.UDFParseNode; -import org.ap
phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer
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 org.apache.phoenix.parse.UDFParseNode; -import org.ap
phoenix git commit: PHOENIX-4616 Move join query optimization out from QueryCompiler into QueryOptimizer
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 org.apache.phoenix.parse.UDFParseNode; -import org.apache.phoenix.p