You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@calcite.apache.org by "Julian Hyde (JIRA)" <ji...@apache.org> on 2014/07/03 03:15:26 UTC

[jira] [Reopened] (OPTIQ-329) Three-quarter-join: Add flag to JoinRelBase that indicates it should eliminate duplicates on right

     [ https://issues.apache.org/jira/browse/OPTIQ-329?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Hyde reopened OPTIQ-329:
-------------------------------


> Three-quarter-join: Add flag to JoinRelBase that indicates it should eliminate duplicates on right
> --------------------------------------------------------------------------------------------------
>
>                 Key: OPTIQ-329
>                 URL: https://issues.apache.org/jira/browse/OPTIQ-329
>             Project: Optiq
>          Issue Type: New Feature
>            Reporter: Julian Hyde
>            Assignee: Julian Hyde
>
> Add a flag to JoinRelBase that indicates it should eliminate duplicates on the right-hand side.
> This is functionality similar to semi-join operator in relational algebra, and also similar to SemiJoinRel. But: 
> 1. This relational expression has the same row type as the corresponding join whose flag is false. (If it were executed, it would return dummy values (e.g. null or 0) from the fields corresponding to the right-hand input. But in practice its consumer would never ask for these fields.) Having the same row type helps when mixing it in with other join rules.
> 2. Sub-types of join (e.g. HiveBroadcastJoinRel) would inherit this flag. They might disallow particular values of the flag.
> It would be allowed with joinType = {INNER, LEFT}.
> To be decided: If the right input is known not to have duplicates, should the flag be set to true, false, or some other value?



--
This message was sent by Atlassian JIRA
(v6.2#6252)