Github user fhueske commented on the issue:
https://github.com/apache/flink/pull/5094
To add some more context, we decided to also join late records with records
that are still in the cache to have a more complete join result (watermarks
should not define the semantics of the query but just be a trigger for cleaning
the state). Of course joining late records results in late records in the
output but that is OK in my opinion.
What must *not* happen is that a join result of two records that both
arrived in time (i.e, are not late) results in a joined output record that is
late. I haven't looked at the details, but is this the case @hequn8128?
---