You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by GitBox <gi...@apache.org> on 2022/11/17 11:45:50 UTC

[GitHub] [flink] shuiqiangchen commented on a diff in pull request #20745: [FLINK-28988] Don't push above filters down into the right table for temporal join

shuiqiangchen commented on code in PR #20745:
URL: https://github.com/apache/flink/pull/20745#discussion_r1025086254


##########
flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/rules/logical/FlinkFilterJoinRule.java:
##########
@@ -128,7 +129,9 @@ protected void perform(RelOptRuleCall call, Filter filter, Join join) {
                 joinType,
                 true,
                 !joinType.generatesNullsOnLeft(),
-                !joinType.generatesNullsOnRight(),
+                !joinType.generatesNullsOnRight()
+                        && !TemporalJoinUtil.containsInitialTemporalJoinCondition(

Review Comment:
   @lincoln-lil If there was a constant equi condition on join key, the `JoinReduceExpressionsRule` in calcite will try to reduce all InputRef in JoinCondition to be constant expression, while generating call expression for __TEMPORAL_JOIN_LEFT_KEY(INT NOT NULL) is not allowed. Maybe we should make the __TEMPORAL_JOIN_LEFT_KEY,  __TEMPORAL_JOIN_LEFT_KEY and __INITIAL_TEMPORAL_JOIN_CONDITION irreducible.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org