hailong wang created FLINK-14064:

             Summary: Support Project Push down to LookupableTableSource
                 Key: FLINK-14064
                 URL: https://issues.apache.org/jira/browse/FLINK-14064
             Project: Flink
          Issue Type: Improvement
          Components: Table SQL / Planner
    Affects Versions: 1.9.0
            Reporter: hailong wang
             Fix For: 1.10.0

Consider such a temporal join sql:

SELECT T.id, D.id, D.name FROM T JOIN temporalTable for system_time AS OF 
T.proctime AS D ON upper(T.id) = upper(D.id)
When apply a sql function to equivalent condition such as 'upper', it doesn't 
support. In other words, temporal join don't support any transfrom on temporal  
table primary key field.

There are two reasons:

1、In CommonLookupJoin.getIdenticalSourceField method, we can not get the input 
index when expr is a rexCall except IN_FENNEL and CAST;

2、StreamExecLookupJoinRule doesn't push down project function to 
LookupableTableSource, so LookupFunction can not perceive the transfrom of 
primary key.


This message was sent by Atlassian Jira

Reply via email to