[ 
https://issues.apache.org/jira/browse/CALCITE-5127?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17553271#comment-17553271
 ] 

Benchao Li commented on CALCITE-5127:
-------------------------------------

[~zabetak] I've resolved the conflicts and addressed some comments in 
https://github.com/apache/calcite/pull/2623.

There's one thing I want to discuss for the left comments.
As I can see, we'd better to limit the correlated {{RelNode}} scope only to 
before {{RelDecorrelator}} and {{SubQueryRemoveRule}}.
After we apply {{SubQueryRemoveRule}} and {{RelDecorrelator}}, only 
{{Correlate}} should have correlation variables.
If we allow the correlated {{Project}}, {{Filter}}, {{Join}} everywhere, it 
will be hard to keep these variables in optimizing phase, not even to say that 
some rules are plugged in by third party. 

If we could reach an agreement for the above statement, another question is how 
to ensure it. I don't have a clear idea about it yet, maybe we can start by 
documenting it in {{RelNode}}.

What do you think about this?

> Error when executing query with subquery in select list that uses outer 
> column of array type
> --------------------------------------------------------------------------------------------
>
>                 Key: CALCITE-5127
>                 URL: https://issues.apache.org/jira/browse/CALCITE-5127
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: Dmitry Sysolyatin
>            Assignee: Benchao Li
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.31.0
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> The following queries fail:
> {code}
> SELECT ARRAY(SELECT s.x) FROM (SELECT ARRAY[1,2,3] as x) s;
> SELECT ARRAY(SELECT * FROM UNNEST(s.x) y) FROM (SELECT ARRAY[1,2,3] as x) s;
> SELECT (SELECT CARDINALITY(s.x) LIMIT 1) FROM (SELECT ARRAY[1,2,3] as x) s;   
>  
> {code}
> With exception:
> {code}
> Caused by: java.lang.ClassCastException: java.lang.Integer cannot be cast to 
> java.util.List
> {code}
> You can find test cases for this task in 
> https://github.com/apache/calcite/commit/27e68ded2c3bea7d7af73dd1dc156e46fb3591a8



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to