You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@calcite.apache.org by "Rheet Wong (JIRA)" <ji...@apache.org> on 2017/09/21 14:50:00 UTC

[jira] [Created] (CALCITE-1990) Make RelDistribution to extends RelMultipleTrait

Rheet Wong created CALCITE-1990:
-----------------------------------

             Summary: 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


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)