rkhachatryan opened a new pull request #15716: URL: https://github.com/apache/flink/pull/15716
``` Avoid race condition when a priority event is enqueued to an empty channel followed by EndOfPartition: 1. T0: chan.offer(UC barrier); gate.offer(channel) as priority 2. T1: gate.poll() 3. T0: gate.offer(channel) as previously empty 4. T0: chan.offer(EndOfPartitionEvent) Now gate.queue.len=1, chan.queue.len=2. T1: chan.poll() // UC barrier, hasMore: true (EOP) gate.offer(channel) // because had more gate.poll(), chan.poll(), chan.release() gate.poll(), chan.poll() <- already released Failure results in CancelTaskException being thrown, EndOfPartitionEvent not being propagated and job being stuck. `` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
