[ https://issues.apache.org/jira/browse/FLINK-24035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17407312#comment-17407312 ]
Yingjie Cao commented on FLINK-24035: ------------------------------------- Thanks [~pnowojski]. I opened a refactor PR for this: [https://github.com/apache/flink/pull/17075.|https://github.com/apache/flink/pull/17075] > Fix the deadlock issue caused by buffer listeners may not be notified > --------------------------------------------------------------------- > > Key: FLINK-24035 > URL: https://issues.apache.org/jira/browse/FLINK-24035 > Project: Flink > Issue Type: Bug > Components: Runtime / Network > Affects Versions: 1.14.0 > Reporter: Yingjie Cao > Assignee: Yingjie Cao > Priority: Critical > Labels: pull-request-available > Fix For: 1.14.0 > > > The buffer listeners are not notified when the the local buffer pool receives > available notification from the global pool. This may cause potential > deadlock issue: > # A LocalBufferPool is created, but there is no available buffers in the > global NetworkBufferPool. > # The LocalBufferPool registers an available buffer listener to the global > NetworkBufferPool. > # The BufferManager requests buffers from the LocalBufferPool but no buffer > is available. As a result, it registers an available buffer listener to the > LocalBufferPool. > # A buffer is recycled to the global pool and the local buffer pool is > notified about the available buffer. > # The local buffer pool requests the available buffer from the global pool > but the registered available buffer listener of BufferManager is not notified > and it can never get a chance to be notified so deadlock occurs. -- This message was sent by Atlassian Jira (v8.3.4#803005)