Julian Hyde created OPTIQ-329:
---------------------------------
Summary: 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)