[
https://issues.apache.org/jira/browse/FLINK-14498?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
zhijiang resolved FLINK-14498.
------------------------------
Resolution: Fixed
Merged in master : 7ffe265f65becbca94cc0bb585297ee000ba735c
> Introduce NetworkBufferPool#isAvailable() for non-blocking output
> -----------------------------------------------------------------
>
> Key: FLINK-14498
> URL: https://issues.apache.org/jira/browse/FLINK-14498
> Project: Flink
> Issue Type: Sub-task
> Components: Runtime / Network
> Reporter: zhijiang
> Assignee: Yingjie Cao
> Priority: Minor
> Labels: pull-request-available
> Fix For: 1.10.0
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> In order to best-effort implement non-blocking output, we need to further
> improve the interaction between LocalBufferPool and NetworkBufferPool in
> non-blocking way as a supplementation of FLINK-14396.
> In detail, we provide the NetworkBufferPool#isAvailable to indicate the
> global pool state, then we could combine its state via
> LocalBufferPool#isAvailable` method to avoid blocking in global request while
> task processing.
> Meanwhile we would refactor the process when LocalBufferPool requests global
> buffer. If there are no available buffers in NetworkBufferPool, the
> LocalBufferPool should monitor the global's available future instead of
> waiting 2 seconds currently in every loop retry. So we can solve the wait
> delay and cleanup the codes in a unified way.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)