[
https://issues.apache.org/jira/browse/YARN-721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13665030#comment-13665030
]
PengZhang commented on YARN-721:
--------------------------------
Changes for this function in YARN-2 is shown below:
- public static void normalizeRequest(ResourceRequest ask, int minMemory) {
- int memory = Math.max(ask.getCapability().getMemory(), minMemory);
- ask.getCapability().setMemory(
- minMemory * ((memory / minMemory) + (memory % minMemory > 0 ? 1 : 0)));
+ public static void normalizeRequest(
+ ResourceRequest ask,
+ ResourceCalculator resourceCalculator,
+ Resource clusterResource,
+ Resource minimumResource) {
+ Resource normalized =
+ Resources.normalize(
+ resourceCalculator, ask.getCapability(), minimumResource);
+ ask.setCapability(normalized);
> ContainerManagerImpl failed to authorizeRequest
> -----------------------------------------------
>
> Key: YARN-721
> URL: https://issues.apache.org/jira/browse/YARN-721
> Project: Hadoop YARN
> Issue Type: Bug
> Affects Versions: 2.0.3-alpha
> Reporter: PengZhang
> Attachments: YARN-721.patch
>
>
> When security is enabled, resource check will be failed. AM master cannot be
> launched.
> It reports like "Expected resource <memory:1800, vCores:1> but found
> <memory:1536, vCores:1>"
> I tracked this problem, and found it's imported in YARN-2. In
> RMAppAttemptImpl.ScheduleTransition, after allocate(), scheduler normalized
> Resource and created a new Resource object. Resource objects in scheduler and
> RMAppAttemptImp are used for schedule and launch separately. The difference
> value met in ContainerManagerImpl, and caused this problem.
--
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