You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@impala.apache.org by "Aman Sinha (Code Review)" <ge...@cloudera.org> on 2021/02/18 07:52:50 UTC

[Impala-ASF-CR] IMPALA-xxxxx: [WIP] Refactoring to support external frontend.

Aman Sinha has uploaded this change for review. ( http://gerrit.cloudera.org:8080/17080


Change subject: IMPALA-xxxxx: [WIP] Refactoring to support external frontend.
......................................................................

IMPALA-xxxxx: [WIP] Refactoring to support external frontend.

This patch does some minimal refactoring of the frontend
code to allow an external frontend to leverage certain apis
and class variables. A couple of new methods are also added.
The changes include:
 - modifying a few class methods to be public static
 - changing visibility of a few private member variables to
   protected for use by a derived class
 - adding an alternate PlannerContext constructor
 - passing an additional initialization parameter to BackendConfig
 - minimal refactor of selectivity calculation for predicates
 - refactor of count(*) optimization methods
 - small changes to the validatePlan and useParallelPlan
 - new clone method for functions and one for null literals

Testing:
 - Ran PlannerTest
 - Since these are refactoring changes, no new tests are added in
   this patch but once other supporting changes are done, I
   anticipate adding sanity tests for external FE in a future commit.

Change-Id: I70035ec082be09a9583275191248d085414b27dd
---
M fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java
M fe/src/main/java/org/apache/impala/analysis/BinaryPredicate.java
M fe/src/main/java/org/apache/impala/analysis/CompoundPredicate.java
M fe/src/main/java/org/apache/impala/analysis/Expr.java
M fe/src/main/java/org/apache/impala/analysis/FunctionCallExpr.java
M fe/src/main/java/org/apache/impala/analysis/InPredicate.java
M fe/src/main/java/org/apache/impala/analysis/IsNullPredicate.java
M fe/src/main/java/org/apache/impala/analysis/TupleDescriptor.java
M fe/src/main/java/org/apache/impala/analysis/TupleIsNullPredicate.java
M fe/src/main/java/org/apache/impala/catalog/HdfsTable.java
M fe/src/main/java/org/apache/impala/catalog/ScalarFunction.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/HdfsScanNode.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/planner/ScanNode.java
M fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java
M fe/src/main/java/org/apache/impala/planner/SortNode.java
M fe/src/main/java/org/apache/impala/service/BackendConfig.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
20 files changed, 137 insertions(+), 69 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/80/17080/1
-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 1
Gerrit-Owner: Aman Sinha <am...@cloudera.com>

[Impala-ASF-CR] IMPALA-xxxxx: [WIP] Refactoring to support external frontend.

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-xxxxx: [WIP] Refactoring to support external frontend.
......................................................................


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/17080/1/fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java
File fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java:

http://gerrit.cloudera.org:8080/#/c/17080/1/fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java@391
PS1, Line 391:             root.getOutputSmap(), null, limit, analyticNodeSort, planCtx.getRootAnalyzer());
line too long (92 > 90)



-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 1
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Thu, 18 Feb 2021 07:53:39 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-10515: Refactoring to support external frontend.

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-10515: Refactoring to support external frontend.
......................................................................

IMPALA-10515: Refactoring to support external frontend.

This patch does some minimal refactoring of the frontend
code to allow an external frontend to leverage certain apis
and class variables. A couple of new methods are also added.
The changes include:
 - modifying a few class methods to be public static
 - changing visibility of a few private member variables to
   protected for use by a derived class
 - adding an alternate PlannerContext constructor
 - passing an additional initialization parameter to BackendConfig
 - minimal refactor of selectivity calculation for predicates
 - refactor of count(*) optimization methods
 - small changes to the validatePlan and useParallelPlan
 - new clone method for functions and one for null literals

Testing:
 - Ran PlannerTest and TpcdsPlannerTest
 - Ran e2e TPCH tests for sanity check
 - Since these are refactoring changes, no new tests are added in
   this patch but once other supporting changes are done, I
   anticipate adding sanity tests for external FE in a future commit.

Change-Id: I70035ec082be09a9583275191248d085414b27dd
Reviewed-on: http://gerrit.cloudera.org:8080/17080
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>
---
M fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java
M fe/src/main/java/org/apache/impala/analysis/BinaryPredicate.java
M fe/src/main/java/org/apache/impala/analysis/CompoundPredicate.java
M fe/src/main/java/org/apache/impala/analysis/Expr.java
M fe/src/main/java/org/apache/impala/analysis/FunctionCallExpr.java
M fe/src/main/java/org/apache/impala/analysis/InPredicate.java
M fe/src/main/java/org/apache/impala/analysis/IsNullPredicate.java
M fe/src/main/java/org/apache/impala/analysis/TupleDescriptor.java
M fe/src/main/java/org/apache/impala/analysis/TupleIsNullPredicate.java
M fe/src/main/java/org/apache/impala/catalog/HdfsTable.java
M fe/src/main/java/org/apache/impala/catalog/ScalarFunction.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/HdfsScanNode.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/planner/ScanNode.java
M fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java
M fe/src/main/java/org/apache/impala/planner/SortNode.java
M fe/src/main/java/org/apache/impala/service/BackendConfig.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
20 files changed, 126 insertions(+), 59 deletions(-)

Approvals:
  Impala Public Jenkins: Looks good to me, approved; Verified

-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 6
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>

[Impala-ASF-CR] IMPALA-10515: Refactoring to support external frontend.

Posted by "Aman Sinha (Code Review)" <ge...@cloudera.org>.
Hello Impala Public Jenkins, 

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

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

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

Change subject: IMPALA-10515: Refactoring to support external frontend.
......................................................................

IMPALA-10515: Refactoring to support external frontend.

This patch does some minimal refactoring of the frontend
code to allow an external frontend to leverage certain apis
and class variables. A couple of new methods are also added.
The changes include:
 - modifying a few class methods to be public static
 - changing visibility of a few private member variables to
   protected for use by a derived class
 - adding an alternate PlannerContext constructor
 - passing an additional initialization parameter to BackendConfig
 - minimal refactor of selectivity calculation for predicates
 - refactor of count(*) optimization methods
 - small changes to the validatePlan and useParallelPlan
 - new clone method for functions and one for null literals

Testing:
 - Ran PlannerTest and TpcdsPlannerTest
 - Ran e2e TPCH tests for sanity check
 - Since these are refactoring changes, no new tests are added in
   this patch but once other supporting changes are done, I
   anticipate adding sanity tests for external FE in a future commit.

Change-Id: I70035ec082be09a9583275191248d085414b27dd
---
M fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java
M fe/src/main/java/org/apache/impala/analysis/BinaryPredicate.java
M fe/src/main/java/org/apache/impala/analysis/CompoundPredicate.java
M fe/src/main/java/org/apache/impala/analysis/Expr.java
M fe/src/main/java/org/apache/impala/analysis/FunctionCallExpr.java
M fe/src/main/java/org/apache/impala/analysis/InPredicate.java
M fe/src/main/java/org/apache/impala/analysis/IsNullPredicate.java
M fe/src/main/java/org/apache/impala/analysis/TupleDescriptor.java
M fe/src/main/java/org/apache/impala/analysis/TupleIsNullPredicate.java
M fe/src/main/java/org/apache/impala/catalog/HdfsTable.java
M fe/src/main/java/org/apache/impala/catalog/ScalarFunction.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/HdfsScanNode.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/planner/ScanNode.java
M fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java
M fe/src/main/java/org/apache/impala/planner/SortNode.java
M fe/src/main/java/org/apache/impala/service/BackendConfig.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
20 files changed, 126 insertions(+), 59 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/80/17080/3
-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 3
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>

[Impala-ASF-CR] IMPALA-xxxxx: [WIP] Refactoring to support external frontend.

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-xxxxx: [WIP] Refactoring to support external frontend.
......................................................................


Patch Set 2:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/8155/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 2
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Thu, 18 Feb 2021 08:26:15 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-10515: Refactoring to support external frontend.

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-10515: Refactoring to support external frontend.
......................................................................


Patch Set 5: Verified+1


-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 5
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Comment-Date: Sat, 20 Feb 2021 06:28:16 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-10515: Refactoring to support external frontend.

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-10515: Refactoring to support external frontend.
......................................................................


Patch Set 3:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/8160/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 3
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Comment-Date: Thu, 18 Feb 2021 18:19:54 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-10515: Refactoring to support external frontend.

Posted by "Aman Sinha (Code Review)" <ge...@cloudera.org>.
Aman Sinha has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-10515: Refactoring to support external frontend.
......................................................................


Patch Set 4: Code-Review+2

(3 comments)

Thanks for the review.  Carry +2

http://gerrit.cloudera.org:8080/#/c/17080/3/fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java
File fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java:

http://gerrit.cloudera.org:8080/#/c/17080/3/fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java@214
PS3, Line 214: public static
> Nit: Since we are using "public static" for other functions here (rather th
Done


http://gerrit.cloudera.org:8080/#/c/17080/3/fe/src/main/java/org/apache/impala/planner/ScanNode.java
File fe/src/main/java/org/apache/impala/planner/ScanNode.java:

http://gerrit.cloudera.org:8080/#/c/17080/3/fe/src/main/java/org/apache/impala/planner/ScanNode.java@125
PS3, Line 125: use that. Otherwis
> Nit: Minor grammer thing: "use that. Otherwise,"
Done


http://gerrit.cloudera.org:8080/#/c/17080/2/fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java
File fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java:

http://gerrit.cloudera.org:8080/#/c/17080/2/fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java@391
PS2, Line 391:             root.getOutputSmap(), null, limit, analyticNodeSort,
> line too long (92 > 90)
Done



-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 4
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Comment-Date: Sat, 20 Feb 2021 00:06:48 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-10515: Refactoring to support external frontend.

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-10515: Refactoring to support external frontend.
......................................................................


Patch Set 4:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/8174/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 4
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Comment-Date: Sat, 20 Feb 2021 00:23:17 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-xxxxx: [WIP] Refactoring to support external frontend.

Posted by "Aman Sinha (Code Review)" <ge...@cloudera.org>.
Hello Impala Public Jenkins, 

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

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

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

Change subject: IMPALA-xxxxx: [WIP] Refactoring to support external frontend.
......................................................................

IMPALA-xxxxx: [WIP] Refactoring to support external frontend.

This patch does some minimal refactoring of the frontend
code to allow an external frontend to leverage certain apis
and class variables. A couple of new methods are also added.
The changes include:
 - modifying a few class methods to be public static
 - changing visibility of a few private member variables to
   protected for use by a derived class
 - adding an alternate PlannerContext constructor
 - passing an additional initialization parameter to BackendConfig
 - minimal refactor of selectivity calculation for predicates
 - refactor of count(*) optimization methods
 - small changes to the validatePlan and useParallelPlan
 - new clone method for functions and one for null literals

Testing:
 - Ran PlannerTest
 - Since these are refactoring changes, no new tests are added in
   this patch but once other supporting changes are done, I
   anticipate adding sanity tests for external FE in a future commit.

Change-Id: I70035ec082be09a9583275191248d085414b27dd
---
M fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java
M fe/src/main/java/org/apache/impala/analysis/BinaryPredicate.java
M fe/src/main/java/org/apache/impala/analysis/CompoundPredicate.java
M fe/src/main/java/org/apache/impala/analysis/Expr.java
M fe/src/main/java/org/apache/impala/analysis/FunctionCallExpr.java
M fe/src/main/java/org/apache/impala/analysis/InPredicate.java
M fe/src/main/java/org/apache/impala/analysis/IsNullPredicate.java
M fe/src/main/java/org/apache/impala/analysis/TupleDescriptor.java
M fe/src/main/java/org/apache/impala/analysis/TupleIsNullPredicate.java
M fe/src/main/java/org/apache/impala/catalog/HdfsTable.java
M fe/src/main/java/org/apache/impala/catalog/ScalarFunction.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/HdfsScanNode.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/planner/ScanNode.java
M fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java
M fe/src/main/java/org/apache/impala/planner/SortNode.java
M fe/src/main/java/org/apache/impala/service/BackendConfig.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
20 files changed, 125 insertions(+), 59 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/80/17080/2
-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 2
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>

[Impala-ASF-CR] IMPALA-10515: Refactoring to support external frontend.

Posted by "Joe McDonnell (Code Review)" <ge...@cloudera.org>.
Joe McDonnell has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-10515: Refactoring to support external frontend.
......................................................................


Patch Set 3: Code-Review+2

(2 comments)

These changes look fine to me.

http://gerrit.cloudera.org:8080/#/c/17080/3/fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java
File fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java:

http://gerrit.cloudera.org:8080/#/c/17080/3/fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java@214
PS3, Line 214: static public
Nit: Since we are using "public static" for other functions here (rather than "static public"), do the same here (and other locations in this file) for consistency.


http://gerrit.cloudera.org:8080/#/c/17080/3/fe/src/main/java/org/apache/impala/planner/ScanNode.java
File fe/src/main/java/org/apache/impala/planner/ScanNode.java:

http://gerrit.cloudera.org:8080/#/c/17080/3/fe/src/main/java/org/apache/impala/planner/ScanNode.java@125
PS3, Line 125: use that otherwise
Nit: Minor grammer thing: "use that. Otherwise,"



-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 3
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Comment-Date: Fri, 19 Feb 2021 23:17:49 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-10515: Refactoring to support external frontend.

Posted by "Aman Sinha (Code Review)" <ge...@cloudera.org>.
Hello Quanlong Huang, Joe McDonnell, Impala Public Jenkins, 

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

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

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

Change subject: IMPALA-10515: Refactoring to support external frontend.
......................................................................

IMPALA-10515: Refactoring to support external frontend.

This patch does some minimal refactoring of the frontend
code to allow an external frontend to leverage certain apis
and class variables. A couple of new methods are also added.
The changes include:
 - modifying a few class methods to be public static
 - changing visibility of a few private member variables to
   protected for use by a derived class
 - adding an alternate PlannerContext constructor
 - passing an additional initialization parameter to BackendConfig
 - minimal refactor of selectivity calculation for predicates
 - refactor of count(*) optimization methods
 - small changes to the validatePlan and useParallelPlan
 - new clone method for functions and one for null literals

Testing:
 - Ran PlannerTest and TpcdsPlannerTest
 - Ran e2e TPCH tests for sanity check
 - Since these are refactoring changes, no new tests are added in
   this patch but once other supporting changes are done, I
   anticipate adding sanity tests for external FE in a future commit.

Change-Id: I70035ec082be09a9583275191248d085414b27dd
---
M fe/src/main/java/org/apache/impala/analysis/AnalyticExpr.java
M fe/src/main/java/org/apache/impala/analysis/BinaryPredicate.java
M fe/src/main/java/org/apache/impala/analysis/CompoundPredicate.java
M fe/src/main/java/org/apache/impala/analysis/Expr.java
M fe/src/main/java/org/apache/impala/analysis/FunctionCallExpr.java
M fe/src/main/java/org/apache/impala/analysis/InPredicate.java
M fe/src/main/java/org/apache/impala/analysis/IsNullPredicate.java
M fe/src/main/java/org/apache/impala/analysis/TupleDescriptor.java
M fe/src/main/java/org/apache/impala/analysis/TupleIsNullPredicate.java
M fe/src/main/java/org/apache/impala/catalog/HdfsTable.java
M fe/src/main/java/org/apache/impala/catalog/ScalarFunction.java
M fe/src/main/java/org/apache/impala/planner/DistributedPlanner.java
M fe/src/main/java/org/apache/impala/planner/HdfsScanNode.java
M fe/src/main/java/org/apache/impala/planner/Planner.java
M fe/src/main/java/org/apache/impala/planner/PlannerContext.java
M fe/src/main/java/org/apache/impala/planner/ScanNode.java
M fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java
M fe/src/main/java/org/apache/impala/planner/SortNode.java
M fe/src/main/java/org/apache/impala/service/BackendConfig.java
M fe/src/main/java/org/apache/impala/service/Frontend.java
20 files changed, 126 insertions(+), 59 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/80/17080/4
-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 4
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>

[Impala-ASF-CR] IMPALA-10515: Refactoring to support external frontend.

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-10515: Refactoring to support external frontend.
......................................................................


Patch Set 5: Code-Review+2


-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 5
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Comment-Date: Sat, 20 Feb 2021 00:39:34 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-xxxxx: [WIP] Refactoring to support external frontend.

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-xxxxx: [WIP] Refactoring to support external frontend.
......................................................................


Patch Set 2:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/17080/2/fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java
File fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java:

http://gerrit.cloudera.org:8080/#/c/17080/2/fe/src/main/java/org/apache/impala/planner/SingleNodePlanner.java@391
PS2, Line 391:             root.getOutputSmap(), null, limit, analyticNodeSort, planCtx.getRootAnalyzer());
line too long (92 > 90)



-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 2
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Thu, 18 Feb 2021 08:06:26 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-xxxxx: [WIP] Refactoring to support external frontend.

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-xxxxx: [WIP] Refactoring to support external frontend.
......................................................................


Patch Set 1:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/8154/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 1
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Comment-Date: Thu, 18 Feb 2021 08:12:48 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-10515: Refactoring to support external frontend.

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/17080 )

Change subject: IMPALA-10515: Refactoring to support external frontend.
......................................................................


Patch Set 5:

Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/6906/ DRY_RUN=false


-- 
To view, visit http://gerrit.cloudera.org:8080/17080
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I70035ec082be09a9583275191248d085414b27dd
Gerrit-Change-Number: 17080
Gerrit-PatchSet: 5
Gerrit-Owner: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <hu...@gmail.com>
Gerrit-Comment-Date: Sat, 20 Feb 2021 00:39:35 +0000
Gerrit-HasComments: No