Steve Carlin has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/24247 )

Change subject: IMPALA-14814: Handle implicit casts properly for Calcite Planner
......................................................................


Patch Set 8:

(3 comments)

http://gerrit.cloudera.org:8080/#/c/24247/4/fe/src/main/java/org/apache/impala/analysis/CastExpr.java
File fe/src/main/java/org/apache/impala/analysis/CastExpr.java:

http://gerrit.cloudera.org:8080/#/c/24247/4/fe/src/main/java/org/apache/impala/analysis/CastExpr.java@470
PS4, Line 470:   protected boolean shouldRemoveImplicitCast() {
> Add @Override
This is actually the top level where it is used, and is not meant to be called 
by outside objects.


http://gerrit.cloudera.org:8080/#/c/24247/8/fe/src/main/java/org/apache/impala/analysis/CastExpr.java
File fe/src/main/java/org/apache/impala/analysis/CastExpr.java:

http://gerrit.cloudera.org:8080/#/c/24247/8/fe/src/main/java/org/apache/impala/analysis/CastExpr.java@72
PS8, Line 72:       boolean isImplicit) {
> Constructors were split into implicit and explicit cast constructors. Now t
Good idea.  But trying to think of the best way to do this...

What if I add static create methods and create these constructors as private?  
I would set up 3 static create methods:

1) CastExpr.createImplicit() -- this is for the original planner that creates 
implicit types and calls with isImplicit set to true
2) CastExpr.createExplicit() - for the original planner also, but calls the 
other constructor that is only used for explicit
3) CastExpr.create().   A more generic version that is only used by Calcite and 
calls this constructor with the appropriate flag.

Does that sound good?


http://gerrit.cloudera.org:8080/#/c/24247/4/testdata/workloads/functional-query/queries/QueryTest/orc-stats.test
File testdata/workloads/functional-query/queries/QueryTest/orc-stats.test:

http://gerrit.cloudera.org:8080/#/c/24247/4/testdata/workloads/functional-query/queries/QueryTest/orc-stats.test@359
PS4, Line 359: aggregation(SUM, RowsRead): 0
> Is there a Calcite plan test where the Explain shows the ORC or Parquet pre
Just added one to the calcite test file.



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

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4d71357ac7f228404713f96884d9eff7f8eabe5c
Gerrit-Change-Number: 24247
Gerrit-PatchSet: 8
Gerrit-Owner: Steve Carlin <[email protected]>
Gerrit-Reviewer: Aman Sinha <[email protected]>
Gerrit-Reviewer: Impala Public Jenkins <[email protected]>
Gerrit-Reviewer: Joe McDonnell <[email protected]>
Gerrit-Reviewer: Michael Smith <[email protected]>
Gerrit-Reviewer: Steve Carlin <[email protected]>
Gerrit-Comment-Date: Wed, 13 May 2026 22:44:10 +0000
Gerrit-HasComments: Yes

Reply via email to