我的会话窗口为:
Window
.into<KV<String, String>>(Sessions.withGapDuration(Duration.standardSeconds(5)))
.withAllowedLateness(Duration.ZERO)
.discardingFiredPanes()
我的数据流包含事件突发事件,每个突发事件都可以在几分钟之内到达。因此,任何当前打开的窗口都无法关闭,直到看到下一个铁锈来增加水印为止。
我发现了一种可以绕过此行为的方法:
.triggering(AfterProcessingTime.pastFirstElementInPane())
但是我得到了这个错误:
java.lang.IllegalArgumentException: Unsafe trigger may lose data, see https://s.apache.org/finishing-triggers-drop-data: AfterProcessingTime.pastFirstElementInPane().plusDelayOf(0 milliseconds)
还有另一种方法可以实现这种行为吗?
谢谢