Hi,
when debugging a flaky ParDoLifecycleTest in FlinkRunner, I have found a
situation, where Flink might create empty bundle - i.e. call
@StartBundle immediately followed by @FinishBundle, with no elements
inside the bundle. That is what breaks the ParDoLifecycleTest, because
the test explicitly assumes, that the sequence of lifecycle methods
should be StartBundle -> Process Element -> Finish Bundle. It is easy to
modify the test to accept situation of StartBundle -> FinishBundle with
no elements ([1]), but the question is, is this allowed by the model? I
think there is no reason not to be, but I'd like to be sure.
Thanks,
Jan
[1] https://github.com/apache/beam/pull/9841