Github user hequn8128 commented on the issue: https://github.com/apache/flink/pull/5094 Hi @xccui , thanks for your reply. Feel free to take it if you wish. I still have some confusions. 1. Considering the test `testRowTimeJoinWithCommonBounds2` in `JoinHarnessTest`, do you mean the row with timestamp 1000 should not been calculated? The row does satisfy the join condition: `t1.rt BETWEEN t2.rt - INTERVAL '5' SECOND AND t2.rt + INTERVAL '1' SECOND`, and this is the difference between `BETWEEN` and `NOT BETWEEN`. 2. Can't we use the holding back watermark as the boundary to cache and expire data? Any data with timestamp bigger than the holding back watermark should be cached and may be joined later. We should take any opportunity to join and produce a result that satisfy the join predicate.
---