Perhaps:

   1. collect() an item inside onTimer() inside operator#1
   2. merge the resulting stream from all keys
   3. process the combined stream in operator#2 to see if all keys were
   processed. you will probably want to keep state in the operator#2 to see if
   you received items from all keys.


---
Oytun Tez

*M O T A W O R D*
The World's Fastest Human Translation Platform.
oy...@motaword.com — www.motaword.com


On Thu, Aug 1, 2019 at 1:06 PM Eduardo Winpenny Tejedor <
eduardo.winpe...@gmail.com> wrote:

> Hi all,
>
> I have a keyed operator with an hourly event time trigger. On a timer
> trigger, the operator simply persists some state to a table.
>
> I'd like to know when the triggers for all keys have finished so I can
> send a further signal to the data warehouse, to indicate it has all the
> necessary data to start producing a report.
>
> How can I achieve this? If my operator is distributed across different
> machine tasks I need to make sure I don't send the signal to the data
> warehouse before the timers for every key have fired.
>
> Thanks,
> Eduardo
>

Reply via email to