lostluck commented on code in PR #33337:
URL: https://github.com/apache/beam/pull/33337#discussion_r1881368799
##########
sdks/go/pkg/beam/runners/prism/internal/engine/elementmanager.go:
##########
@@ -386,6 +400,19 @@ func (em *ElementManager) Bundles(ctx context.Context,
upstreamCancelFn context.
changedByProcessingTime =
em.processTimeEvents.AdvanceTo(emNow)
em.changedStages.merge(changedByProcessingTime)
}
+ // Run any side channel bundles first.
Review Comment:
So, I had mentioned that onWindowExpiration callbacks are implemented as
timers.
Normally timers are handled as part of standard bundle execution when the
watermark advances. That's why timers and data are simply "elements".
Not in this PR, but later, I plan on moving ProcessingTime timers to use the
injection mechanism, since they *don't* fire based on the event time watermark,
and if you look further below, it complicates the handling there. But that
would be scope creep to clean that up right now.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]