Hi! I don't quite understand this problem. But if you look into WindowedStream#trigger you'll find that the trigger of WindowOperatorBuilder will change when you call that method, and thus the default trigger will be overwritten by calling WindowedStream#trigger.
Aeden Jameson <aeden.jame...@gmail.com> 于2021年9月1日周三 上午12:32写道: > Flink Version: 1.13.2 > > In the section on Default Triggers of Window Assigners the documentation > States > > By specifying a trigger using trigger() you are overwriting the default > trigger of a WindowAssigner. For example, if you specify a CountTrigger > for TumblingEventTimeWindows you will no longer get window firings based > on the progress of time but only by count. > > While I find the example given to be true because the CountTrigger doesn't > FIRE in OnEventTime the timers of the default trigger are still being > registered. Is that accurate? So when writing a custom trigger against the > default trigger of a window one still needs to handle those timers and > decide to fire them or not. It may be just me, but the documentation gives > the impression that nothing would happen if one specifies a custom trigger > with .trigger(...). I'm I understanding what's going on in the code around > timers, default and custom triggers correctly? If so it seems one solution > to this would be to inherit from said WindowAssign and override the > getDefaultTrigger method. > > > -- > Thanks, > Aeden > > >