Aman Sinha has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/21911 )

Change subject: IMPALA-13430: Too many RelNodes created for "IN" literals
......................................................................


Patch Set 3:

(2 comments)

http://gerrit.cloudera.org:8080/#/c/21911/3//COMMIT_MSG
Commit Message:

http://gerrit.cloudera.org:8080/#/c/21911/3//COMMIT_MSG@13
PS3, Line 13: within one Values RelNode.
For large IN-lists, Calcite supports the LogicalValues relnode (derived from 
Values) and converts it to a join [see comments in [1]).  This would be the 
most efficient representation but we would need a physical representation of 
this as well, so something to consider for future work.

[1]
https://github.com/apache/calcite/blob/main/core/src/main/java/org/apache/calcite/sql2rel/SqlToRelConverter.java#L6470


http://gerrit.cloudera.org:8080/#/c/21911/3//COMMIT_MSG@18
PS3, Line 18: limitation prevents the string literal to be of type "string" but
            : instead is of type "char(x)"
For an IN list which has string literals of different lengths , 'ab', 'abcd' 
etc.  would Calcite treat each one as different length char ?  Curious why it 
would not just treat it as a VARCHAR instead.  Can we look at the place it does 
this coercion to validate the behavior ?



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

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ifc3d84c70af9cd4db44359c4ab7f0c9eb70738f5
Gerrit-Change-Number: 21911
Gerrit-PatchSet: 3
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: Fri, 11 Oct 2024 19:29:03 +0000
Gerrit-HasComments: Yes

Reply via email to