[
https://issues.apache.org/jira/browse/YARN-382?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13605766#comment-13605766
]
Bikas Saha commented on YARN-382:
---------------------------------
Zhijie, your simpler fix makes sense and is a small change. It also clearly
updates resource capability instead of being an implicit harder to follow
change.
Hitesh had the additional idea that such normalization could happen within
validation before application submission. The validation is tracked by
YARN-193. Does it make sense to add this normalization in the code tracked on
YARN-193?
Ideally, however, we agree that this copy from Container to
ContainerLauchContext is brittle. Discussing offline with Sid and Hitesh, it
looks like a cleaner solution would be to make ContainerLaunchContext
completely userland and pass the Container as an argument to the StartContainer
API. So Container would be a final read-only object for the clients of the
allocate API. However, that change is large and some other things need to be
considered. So we can postpone that to YARN-486.
> SchedulerUtils improve way normalizeRequest sets the resource capabilities
> --------------------------------------------------------------------------
>
> Key: YARN-382
> URL: https://issues.apache.org/jira/browse/YARN-382
> Project: Hadoop YARN
> Issue Type: Improvement
> Components: scheduler
> Affects Versions: 2.0.3-alpha
> Reporter: Thomas Graves
> Assignee: Zhijie Shen
> Attachments: YARN-382_1.patch, YARN-382_demo.patch
>
>
> In YARN-370, we changed it from setting the capability to directly setting
> memory and cores:
> - ask.setCapability(normalized);
> + ask.getCapability().setMemory(normalized.getMemory());
> + ask.getCapability().setVirtualCores(normalized.getVirtualCores());
> We did this because it is directly setting the values in the original
> resource object passed in when the AM gets allocated and without it the AM
> doesn't get the resource normalized correctly in the submission context. See
> YARN-370 for more details.
> I think we should find a better way of doing this long term, one so we don't
> have to keep adding things there when new resources are added, two because
> its a bit confusing as to what its doing and prone to someone accidentally
> breaking it in the future again. Something closer to what Arun suggested in
> YARN-370 would be better but we need to make sure all the places work and get
> some more testing on it before putting it in.
--
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