Fabian Hueske created FLINK-5255:
------------------------------------

             Summary: Improve single row check in DataSetSingleRowJoinRule
                 Key: FLINK-5255
                 URL: https://issues.apache.org/jira/browse/FLINK-5255
             Project: Flink
          Issue Type: Improvement
          Components: Table API & SQL
    Affects Versions: 1.2.0
            Reporter: Fabian Hueske


{{DataSetSingleRowJoinRule}} checks converts an arbitrary inner join (cross, 
theta, equi) where one input has exactly one row into a broadcast-map join.

Currently, the condition to check for the single row is that the input of the 
join must be a global aggregation. The check fails if the input is a 
{{LogicalCalc}} followed by {{LogicalAggregate}}.

Hence, the following query cannot be executed:

{code}
SELECT absum, x.a
FROM x, (SELECT a.sum + b.sum AS absum FROM y)
{code}

The single row check should be extended to accept a {{LogicalCalc}} that has no 
condition {{(RexProgram.getCondition() == null)}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to