Hi Kostas, Re restarting: I missed that ProcessFunction.OnTimerContext extends ProcessFunction.Context! Until now my thought was that OnTimerContext did not provide a means of restarting a timer.
Re initial timer, you're right, I'll just need to track a boolean in a state variable that notes whether or not the timer has been initialized. What I am not confident about is how to manage timer recovery after a node failure; I imagine it will make sense to not track this variable. I will do more research and cross that bridge when I get there. So I think a process function will work just fine, here. Thank you again for your time, Kostas and Konstantin. Ryan On Tue, Apr 18, 2017 at 12:07 PM, Kostas Kloudas < k.klou...@data-artisans.com> wrote: > Hi Ryan, > > “A periodic window like this requires the ability to start a timer without > an element and to restart a timer when fired.” > > For the second part, i.e. “to restart a timer when fired”, you can > re-register the timer in the onTimer() method (set a > new timer for “now + T"), so that the next one fires after T time units, > where T is your period. > > For the first part, where you set the initial timer for a window, this > needs to have a first element right? If not, how > do you know the key for which to set the timer? Are all the keys known in > advance? > > Kostas > > > > On Apr 18, 2017, at 8:35 PM, Ryan Conway <ryanmackenziecon...@gmail.com> > wrote: > > A periodic window like this requires the ability to start a timer without > an element and to restart a timer when fired. > > >