You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Kai Zheng (JIRA)" <ji...@apache.org> on 2016/02/18 04:06:18 UTC

[jira] [Updated] (HADOOP-12818) Deprecate RPC#waitForProxy and cleanup

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

Kai Zheng updated HADOOP-12818:
-------------------------------
    Description: 
Copied [comment|https://issues.apache.org/jira/browse/HADOOP-12579?focusedCommentId=15105019&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15105019] from HADOOP-12579:
{quote}
 RPC#waitForProxy method family may also be deprecated, considering:
    We probably never need to wait, giving current available engines. The proxy can be created and returned on demand shortly. No network connection is incurred.
    In the real implementation codes of waitForProtocolProxy, it uses a while loop to try and try until a passed timeout value is consumed. I guess the logic and codes were from early days of the project? Because no connection is made during the proxy creating and initializing. The real network connection is only made when the invoker is invoked and a RPC call is called.
    Most places call RPC#getProxy already.
    Not sure to remove these, considering codes out of Hadoop might call them. But deprecate them should be fine and change the implementation removing the while loop and timeout stuffs.
{quote}

As [~stevel@apache.org] commented, considering there may be downstream applications that call the APIs, better just to deprecate them even they're obsolete now.

> Deprecate RPC#waitForProxy and cleanup
> --------------------------------------
>
>                 Key: HADOOP-12818
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12818
>             Project: Hadoop Common
>          Issue Type: Improvement
>            Reporter: Kai Zheng
>            Assignee: Kai Zheng
>
> Copied [comment|https://issues.apache.org/jira/browse/HADOOP-12579?focusedCommentId=15105019&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15105019] from HADOOP-12579:
> {quote}
>  RPC#waitForProxy method family may also be deprecated, considering:
>     We probably never need to wait, giving current available engines. The proxy can be created and returned on demand shortly. No network connection is incurred.
>     In the real implementation codes of waitForProtocolProxy, it uses a while loop to try and try until a passed timeout value is consumed. I guess the logic and codes were from early days of the project? Because no connection is made during the proxy creating and initializing. The real network connection is only made when the invoker is invoked and a RPC call is called.
>     Most places call RPC#getProxy already.
>     Not sure to remove these, considering codes out of Hadoop might call them. But deprecate them should be fine and change the implementation removing the while loop and timeout stuffs.
> {quote}
> As [~stevel@apache.org] commented, considering there may be downstream applications that call the APIs, better just to deprecate them even they're obsolete now.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)