You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kudu.apache.org by "Henry Robinson (JIRA)" <ji...@apache.org> on 2017/03/01 22:22:45 UTC

[jira] [Assigned] (KUDU-1887) Allow RPC handlers to discard inbound transfer

     [ https://issues.apache.org/jira/browse/KUDU-1887?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Henry Robinson reassigned KUDU-1887:
------------------------------------

    Assignee: Henry Robinson

> Allow RPC handlers to discard inbound transfer
> ----------------------------------------------
>
>                 Key: KUDU-1887
>                 URL: https://issues.apache.org/jira/browse/KUDU-1887
>             Project: Kudu
>          Issue Type: Improvement
>          Components: rpc
>    Affects Versions: 1.2.0
>            Reporter: Henry Robinson
>            Assignee: Henry Robinson
>            Priority: Minor
>
> This is a general feature request for using KRPC in Impala, not something that affects Kudu itself right not AFAIK.
> A common pattern with communication patterns where a lot of flows fan-in to a single server is for the server to delay returning a response to a client for a while, in order to implement some kind of flow control when the server is at capacity. 
> If a client sends a lot of data (perhaps by sidecar - KUDU-1866), there's currently no way AFAICT to retain the {{RpcContext}} needed to delay sending the response, but to drop the associated transfer buffer (that, presumably, is putting the server over its capacity). 
> So we could have {{RpcContext::DiscardTransfer()}} which drops the {{InboundCall}}'s {{InboundTransfer}}. Since this likely to be called after handling the request, the request protobuf should still be independently attached to the {{RpcContext}}. After {{DiscardTransfer}}, it's an error to look at any inbound sidecars.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)