Github user fhueske commented on a diff in the pull request:

    https://github.com/apache/flink/pull/4625#discussion_r142679463
  
    --- Diff: 
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/plan/rules/datastream/DataStreamWindowJoinRule.scala
 ---
    @@ -105,6 +104,8 @@ class DataStreamWindowJoinRule
           windowBounds.get.isEventTime,
           windowBounds.get.leftLowerBound,
           windowBounds.get.leftUpperBound,
    +      windowBounds.get.leftTimeIdx,
    +      windowBounds.get.rightTimeIdx,
           remainCondition,
    --- End diff --
    
    The `remainCondition` must include the equi-join predicates to ensure that 
the join condition is correctly evaluated for `null` values (see FLINK-7755 for 
details).
    
    To solve this, I'd suggest to call 
`WindowJoinUtil.extractWindowBoundsFromPredicate` with `join.getCondition` 
instead of `joinInfo.getRemaining(join.getCluster.getRexBuilder)`.


---

Reply via email to