Github user aljoscha commented on the issue: https://github.com/apache/flink/pull/6224 No, the motivation was different but the effect of the change is the same, I think. With this change, you can get into a situation where `Trigger.onEventTime()` returns `FIRE` and there is actually no window contents to fire. I think this can potentially be confusing for users that write custom triggers. I'm not saying that this behaviour is bad, I'm only saying that it changes the behaviour, and this can be tricky. This was also the main reason why we didn't change it back when I did the PR. If I remember correctly. What are the cases where this change leads to an improvement? I think it rarely happens that a timer fires while a window is empty, so I think we read the window state in almost all cases when a timer fires.
---