[
https://issues.apache.org/jira/browse/YARN-513?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13646048#comment-13646048
]
Bikas Saha commented on YARN-513:
---------------------------------
I like RMProxy.
Do we see this being useful to user code. If yes, then we should put it in yarn
client package.
Why is this called defaultPolicy?
{code}
+ private final RetryPolicy defaultPolicy;
{code}
Can these be inferred from Protocol type? Else we cannot use this for other
protocols.
{code}
+ this.rmAddress = conf.getSocketAddr(
+ YarnConfiguration.RM_RESOURCE_TRACKER_ADDRESS,
+ YarnConfiguration.DEFAULT_RM_RESOURCE_TRACKER_ADDRESS,
+ YarnConfiguration.DEFAULT_RM_RESOURCE_TRACKER_PORT);
{code}
With this the code will start looking like NameNodeProxies with its create*
methods.
I looked at NNProxies class. It looks we need an almost exact version of that
for RM. The main difference being that we dont have HA yet and RM protocols run
on different ports.
The neat thing about NNProxies looks like they create a transparent proxy using
java.reflect.proxy that ends up calling realImpl.invoke(method) internally when
the client calls calls proxy.method(). Thus it looks better than our approach
where our client explicitly call proxy.invoke("method"). Perhaps we should try
to change our impl to something similar to NNProxies. What do folks think?
> Create common proxy client for communicating with RM
> ----------------------------------------------------
>
> Key: YARN-513
> URL: https://issues.apache.org/jira/browse/YARN-513
> Project: Hadoop YARN
> Issue Type: Sub-task
> Components: resourcemanager
> Reporter: Bikas Saha
> Assignee: Xuan Gong
> Attachments: YARN-513.1.patch, YARN-513.2.patch, YARN-513.3.patch,
> YARN-513.4.patch
>
>
> When the RM is restarting, the NM, AM and Clients should wait for some time
> for the RM to come back up.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira