[
https://issues.apache.org/jira/browse/YARN-5411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15985613#comment-15985613
]
Subru Krishnan commented on YARN-5411:
--------------------------------------
Thanks [~giovanni.fumarola] for the patch. I looked at it & please find my
comments below:
* There are quite a few Yetus warnings, kindly fix them.
* I saw some TODOs, can you either address them or open follow-up jira and
refer in comment.
* {{LRUCacheHashMap}} should be moved to yarn-common as it's generally useful.
* I feel we should drop the _proxy_ suffix in package names.
* I am not a fan of adding more configs in {{YarnConfiguration}}. Can we
reuse from the RM config, for e.g.: the number of worker threads.
* There's a typo in {{YarnConfiguration}}, ROUTER_PREFIX should be
YARN_FEDERATION_PREFIX + "router".
* In {{ClientRMProxyService}}, please add code comments on the usage of
LRUCache.
* We should refactor & reuse
*ClientRMProxyService::getInterceptorClassNames/createRequestInterceptorChain*
with {{AMRMProxyService}}?
* *getPipelines* should have only test visibility in {{ClientRMProxyService}}.
* {{ClientRequestInterceptor::init}}, may be more efficient to directly use
UGI as we seem to double translating now.
* Rename *clientRM* --> *clientRMProxy* in
{{DefaultClientRequestInterceptor}}.
Feedback on tests:
* We should run the {{ClientRMProxyService}} with the
{{DefaultClientRequestInterceptor}} directly using the
[TestClientRMService|https://github.com/apache/hadoop/blob/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/TestClientRMService.java]
in the RM module.
* {{MockResourceManagerFacade}} - we already added one in YARN-2884 and I
have already suggested to reuse it in YARN-5531. Can you also refactor into
common module and reuse?
* {{MockClientRequestInterceptor}} should extend
DefaultClientRequestInterceptor and only override init.
* *testRequestInterceptorChainCreation* - remove the switch case as it's
confusing.
* I didn't grok *testUsersChainMapWithLRUCache*, the pipeline count should
not increase as we are not using different users and even if it did increase,
_test1_ should be evicted?
> Create a proxy chain for ApplicationClientProtocol in the Router
> ----------------------------------------------------------------
>
> Key: YARN-5411
> URL: https://issues.apache.org/jira/browse/YARN-5411
> Project: Hadoop YARN
> Issue Type: Sub-task
> Components: nodemanager, resourcemanager
> Reporter: Subru Krishnan
> Assignee: Giovanni Matteo Fumarola
> Attachments: YARN-5411-YARN-2915.v1.patch
>
>
> As detailed in the proposal in the umbrella JIRA, we are introducing a new
> component that routes client request to appropriate ResourceManager(s). This
> JIRA tracks the creation of a proxy for ApplicationClientProtocol in the
> Router. This provides a placeholder for:
> 1) throttling mis-behaving clients (YARN-1546)
> 3) mask the access to multiple RMs (YARN-3659)
> We are planning to follow the interceptor pattern like we did in YARN-2884 to
> generalize the approach and have only dynamically coupling for Federation.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]