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

ASF GitHub Bot commented on FLINK-7416:
---------------------------------------

Github user zhijiangW commented on a diff in the pull request:

    https://github.com/apache/flink/pull/4533#discussion_r154680022
  
    --- Diff: 
flink-runtime/src/main/java/org/apache/flink/runtime/io/network/partition/consumer/RemoteInputChannel.java
 ---
    @@ -378,6 +381,11 @@ public void notifyBufferDestroyed() {
                // Nothing to do actually.
        }
     
    +   @VisibleForTesting
    +   public void increaseCredit(int credit) {
    --- End diff --
    
    I considered this way before, but it seems more complicated to do that and 
exceeds the scope of this tests.
    
    My initial idea is just to verify the logic related with handler, and the 
preceding logic related with `RemoteInputChannel` already covered in 
`RemoteInputChannelTest`. 
    
    I know that it may be better to verify the whole process here. But it needs 
to use the real `PartitionRequestClient` to notify the credit via 
`onSenderBacklog`, and the current `PartitionRequestClient` is tied to 
`PartitionRequestClientHandler` not `CreditBasedClientHandler`.
    
    Nevertheless, I will try to do that as your suggested way. :)


> Implement Netty receiver outgoing pipeline for credit-based
> -----------------------------------------------------------
>
>                 Key: FLINK-7416
>                 URL: https://issues.apache.org/jira/browse/FLINK-7416
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Network
>            Reporter: zhijiang
>            Assignee: zhijiang
>             Fix For: 1.5.0
>
>
> This is a part of work for credit-based network flow control.
> The related works are :
> *  We define a new message called {{AddCredit}} to notify the incremental 
> credit during data shuffle. 
> * Whenever an {{InputChannel}}’s unannounced credit goes up from zero, the 
> channel is enqueued in the pipeline.
> * Whenever the channel becomes writable, it takes the next {{InputChannel}} 
> and sends its unannounced credit. The credit is reset to zero after each sent.
> * That way, messages are sent as often as the network has capacity and 
> contain as much credit as available for the channel at that point in time. 
> Otherwise, it would only add latency to the announcements and not increase 
> throughput.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to