[
https://issues.apache.org/jira/browse/FLINK-14064?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
hailong wang closed FLINK-14064.
--------------------------------
Resolution: Invalid
> 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
> Priority: Major
>
> Consider such a temporal join sql:
>
> {code:java}
> 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)
> {code}
> 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
(v8.3.4#803005)