You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Jiayi Liao (Jira)" <ji...@apache.org> on 2019/10/28 05:28:00 UTC

[jira] [Comment Edited] (FLINK-14498) Introduce NetworkBufferPool#isAvailable() for interacting with LocalBufferPool

    [ https://issues.apache.org/jira/browse/FLINK-14498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16960762#comment-16960762 ] 

Jiayi Liao edited comment on FLINK-14498 at 10/28/19 5:27 AM:
--------------------------------------------------------------

[~zjwang][~kevin.cyj]  Maybe I'm not very familiar the whole story, I have a question after review the PR. According to the JIRA description and what I've understand, the problem happens when {{LocalBufferPool}} requests bufffer from {{NetworkBufferPool}}, which means the scope should be narrowed down to {{LocalBufferPool}} and {{NetworkBufferPool}}. But why do you extend the {{isAvailable}} to {{RecordWriter}} related class? Maybe this is a stupid question but I'm a bit confused.


was (Author: wind_ljy):
[~zjwang][~kevin.cyj]  Maybe I'm not very familiar the whole story, I have a question after review the PR. According to the JIRA description and what I've understand, the problem happens when {{LocalBufferPool}} requests bufffer from {{NetworkBufferPool}}, which means the scope should be narrowed down to LocalBufferPool and NetworkBufferPool. But why do you extend the {{isAvailable}} to {{RecordWriter}} related class? Maybe this is a stupid question but I'm a bit confused.

> Introduce NetworkBufferPool#isAvailable() for interacting with LocalBufferPool
> ------------------------------------------------------------------------------
>
>                 Key: FLINK-14498
>                 URL: https://issues.apache.org/jira/browse/FLINK-14498
>             Project: Flink
>          Issue Type: Task
>          Components: Runtime / Network
>            Reporter: zhijiang
>            Assignee: Yingjie Cao
>            Priority: Minor
>              Labels: pull-request-available
>             Fix For: 1.10.0
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> If the LocalBufferPool can not request available buffer from NetworkBufferPool, it would wait for 2 seconds before trying to request again in a loop way. Therefore it would bring some delays in practice.
> To improve this interaction, we could introduce NetworkBufferPool#isAvailable to return a future which would be monitored by LocalBufferPool. Then once there are available buffers in NetworkBufferPool, it would complete this future to notify LocalBufferPool immediately. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)