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

Sunil G commented on YARN-5956:
-------------------------------

Thanks [~lewuathe]
With current patch, {{checkAccess}} inside {{verifyUserAccessForRMApp}} will 
hit first and an {{AccessControlException}} will be thrown.

I checked more on this, and there are some potential issues with this approach.
# {{getApplicationReport}}: For this api, if VIEW_APP checkAccess fails, 
exception wont be thrown. Rather user will get back a trimmed version of app 
report. No exception thrown here on checkAccess failure.
# {{getApplicationAttemptReport}}: *YarnException* will be thrown back if  
VIEW_APP checkAcces fails.
# {{getContainerReport}}: *YarnException* will be thrown back if  VIEW_APP 
checkAcces fails.
# {{getContainers}}: *YarnException* will be thrown back if  VIEW_APP 
checkAcces fails.
# {{failApplicationAttempt}} is throwing {{AccessControlException}}, hence the 
changes in patch is fine for this api.
# {{moveApplicationAcrossQueues}} is throwing {{AccessControlException}}, hence 
the changes in patch is fine for this api.

So I think we have issues or behavior change for first 4 apis w.r.t current 
patch. A simple fix would be to inform {{verifyUserAccessForRMApp}} to NOT to 
do {{checkAccess}} with a boolean trigger and current checkAccess in all these 
apis could be kept as it is.



> Refactor ClientRMService
> ------------------------
>
>                 Key: YARN-5956
>                 URL: https://issues.apache.org/jira/browse/YARN-5956
>             Project: Hadoop YARN
>          Issue Type: Improvement
>          Components: resourcemanager
>    Affects Versions: 3.0.0-alpha2
>            Reporter: Kai Sasaki
>            Assignee: Kai Sasaki
>            Priority: Minor
>         Attachments: YARN-5956.01.patch, YARN-5956.02.patch, 
> YARN-5956.03.patch, YARN-5956.04.patch, YARN-5956.05.patch, 
> YARN-5956.06.patch, YARN-5956.07.patch, YARN-5956.08.patch, 
> YARN-5956.09.patch, YARN-5956.10.patch
>
>
> Some refactoring can be done in {{ClientRMService}}.
> - Remove redundant variable declaration
> - Fill in missing javadocs
> - Proper variable access modifier
> - Fix some typos in method name and exception messages



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to