[
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)