Hi everyone, I have a KeyedProcessFunction whose events I would like to process in event-time order. My initial idea was to use a Map keyed by timestamp and, when a new event arrives, iterate over the Map to process events older than the current watermark.
The issue is that I obviously can't use a MapState, as my stream is keyed, so the map would be scoped to the current key. Is using a "regular" (i.e., not checkpointed) Map an option, given that its content will be recreated by the replay of the events on a restart? Is it guaranteed that the watermark that triggered the processing of multiple events (and their subsequent push downstream) is not sent downstream before these events themselves? Thanks, Miguel