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

Rheet Wong edited comment on CALCITE-1990 at 9/22/17 3:25 AM:
--------------------------------------------------------------

Thanks, [~julianhyde] https://github.com/apache/calcite/pull/541
The patch is for RelDistribution extends RelMultipleTrait. I think Existing 
user will not be affected. It only add some API(isTop and CompareTo) because of 
RelDistribution extends RelMultipleTrait, and it don't affect the trait satisfy 
currently. The Distribution can be composed  by RelCompositeTrait, and enhances 
the satisfy.


was (Author: perid007):
[~julianhyde] https://github.com/apache/calcite/pull/541
The patch is for RelDistribution extends RelMultipleTrait. I think Existing 
user will not be affected. It only add some API(isTop and CompareTo) because of 
RelDistribution extends RelMultipleTrait, and it don't affect the trait satisfy 
currently. The Distribution can be composed  by RelCompositeTrait, and enhances 
the satisfy.

> Make RelDistribution to extends RelMultipleTrait
> ------------------------------------------------
>
>                 Key: CALCITE-1990
>                 URL: https://issues.apache.org/jira/browse/CALCITE-1990
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: Rheet Wong
>            Assignee: Julian Hyde
>   Original Estimate: 0.2h
>  Remaining Estimate: 0.2h
>
> In Distributed System, RelDistribution is used for Exchange or SortExchange. 
> for some operators it may deliver RelDistribution Trait, but some operator 
> like SortedMergeJoin may deliver multiple traits.
> eg:
> {code:java}
> Query:
> select * from T1 join T2 on T1.c1=T2.d1;
> Suppose Plan:
> SortedMergeJoin
>     Exchange(c1)
>         T1(c1)
>     Exchange(d1)
>         T2(d1)
> {code}
> than SortedMergeJoin can deliver RelDistribution(hash\[c1\]) or 
> RelDistribution(hash\[d1\]).
> we can consider RelDistribution extend RelMultipleTrait like RelCollation. 
> EnumerableMergeJoin is the case for RelCollation, and RelDistribution is also 
> fit for SortedMergeJoin in Distributed system



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to