[
https://issues.apache.org/jira/browse/CALCITE-4018?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17112803#comment-17112803
]
Haisheng Yuan commented on CALCITE-4018:
----------------------------------------
Yes, here it is:
https://github.com/apache/calcite/blob/master/core/src/main/java/org/apache/calcite/adapter/enumerable/EnumerableValues.java#L62
The main logic is in RelMdCollation.values(mq, rowType, tuples)
> Implement trait propagation for EnumerableValues
> -------------------------------------------------
>
> Key: CALCITE-4018
> URL: https://issues.apache.org/jira/browse/CALCITE-4018
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Reporter: Haisheng Yuan
> Priority: Major
>
> Only passThrough is needed.
> Currently, when Values is created, it will enumerate all the possible
> collations no matter parent operator requires it or not, it will be a
> disaster if the Values has thousands of columns, and the parent operator may
> be just a hash aggregate or hashjoin, which doesn't care about its collation.
> The collation should be created on demand by calling passThrough.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)