Hello Aman Sinha, Fang-Yu Rao, Riza Suminto, Joe McDonnell, Michael Smith, 
Impala Public Jenkins,

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/22306

to look at the new patch set (#22).

Change subject: IMPALA-13653: Create hooks for Calcite planner in Frontend
......................................................................

IMPALA-13653: Create hooks for Calcite planner in Frontend

This commit creates hooks into the Impala planner that will
call into the Calcite planner.

There is one factory hook and 3 compilation hooks introduced to
allow this to happen:

- CompilerFactory :  This factory hook has methods to create the
implementations for the three interfaces described below. The idea is
to introduce a query option that allows the Calcite objects to be called
instead of the Impala planner. In this iteration, the only
implementation called is the Impala specific implementations.

- ParsedStatement: The implementation of this interface will parse
the SQL query into an AST in its constructor. The implementation will
be a wrapper for the AST which can be accessed through the "getTopLevelNode"
method. For the current planner, the "StatementBase" object will be
accessible via this method.

- AnalysisDriver: The implementation of this interface will analyze the
parsed AST via the "analyze" method. To make the code review as easy
as possible, the AnalyzeDriverImpl implementation has been placed inside
the AnalysisContext object.

- SingleNodePlannerIntf: The implementation of this interface will
return a PlanNode that can run on a single node via the
"createSingleNodePlan" method. Various other methods in this
interface allow access to data structures that are needed for the final
plan. These objects are related to the output Expr objects.

Change-Id: I978aa48b160984ee5d36244cd915940f838d141d
---
M fe/src/main/java/org/apache/impala/analysis/AnalysisContext.java
A fe/src/main/java/org/apache/impala/analysis/ParsedStatement.java
A fe/src/main/java/org/apache/impala/analysis/ParsedStatementImpl.java
M fe/src/main/java/org/apache/impala/analysis/StmtMetadataLoader.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java
A fe/src/main/java/org/apache/impala/planner/SingleNodePlannerIntf.java
A fe/src/main/java/org/apache/impala/service/CompilerFactory.java
A fe/src/main/java/org/apache/impala/service/CompilerFactoryImpl.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
M fe/src/test/java/org/apache/impala/analysis/ExprRewriteRulesTest.java
M fe/src/test/java/org/apache/impala/analysis/ExprRewriterTest.java
M fe/src/test/java/org/apache/impala/analysis/ParserTest.java
M fe/src/test/java/org/apache/impala/analysis/StmtMetadataLoaderTest.java
M fe/src/test/java/org/apache/impala/common/FrontendFixture.java
M fe/src/test/java/org/apache/impala/common/FrontendTestBase.java
M fe/src/test/java/org/apache/impala/common/QueryFixture.java
17 files changed, 506 insertions(+), 126 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/06/22306/22
--
To view, visit http://gerrit.cloudera.org:8080/22306
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I978aa48b160984ee5d36244cd915940f838d141d
Gerrit-Change-Number: 22306
Gerrit-PatchSet: 22
Gerrit-Owner: Steve Carlin <scar...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <amsi...@cloudera.com>
Gerrit-Reviewer: Fang-Yu Rao <fangyu....@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <joemcdonn...@cloudera.com>
Gerrit-Reviewer: Michael Smith <michael.sm...@cloudera.com>
Gerrit-Reviewer: Riza Suminto <riza.sumi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <scar...@cloudera.com>

Reply via email to