For operators that only generates outputs after all inputs have been consumed, they are now optimized to run in blocking mode, and the other operators in the same job will wait to start until these operators have finished. Such operators include windowing with GlobalWindows#createWithEndOfStreamTrigger, sorting, and etc.
For operators that only generates outputs after all inputs have been consumed, they are now optimized to run in blocking mode, and the other operators in the same job will wait to start until these operators have finished. Such operators include windowing with GlobalWindows#createWithEndOfStreamTrigger, sorting, and etc.