[
https://issues.apache.org/jira/browse/YARN-65?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16166058#comment-16166058
]
Rohith Sharma K S commented on YARN-65:
---------------------------------------
thanks [[email protected]] for the updated patch! Overall your approach
looks fine to me.
Couple of comments on tests
# In MockMemoryRMStateStore#loadState, it is not required to create
newStateData. Just iterate over applications and replace cloned application
submission context like below
{code}
for(Entry<ApplicationId, ApplicationStateData> state :
cloneState.getApplicationState().entrySet()) {
ApplicationStateData oldStateData = state.getValue();
oldStateData.setApplicationSubmissionContext(
this.appSubCtxtCopy.get(state.getKey()));
}
{code}
# Given first comment is handled, then *memory#clone* is not required to call
in each test cases. The instance of *(MockMemoryRMStateStore)
rm1.getRMStateStore();* can be passed! By this way,
MockMemoryRMStateStore#clone method can also be removed.
# TestWorkPreservingRMRestart test fails after above change which need to be
debugged. At high level. RMAppState object is being modified even though
loadstate return copy!
> Reduce RM app memory footprint once app has completed
> -----------------------------------------------------
>
> Key: YARN-65
> URL: https://issues.apache.org/jira/browse/YARN-65
> Project: Hadoop YARN
> Issue Type: Improvement
> Components: resourcemanager
> Affects Versions: 0.23.3
> Reporter: Jason Lowe
> Assignee: Manikandan R
> Attachments: YARN-65.001.patch, YARN-65.002.patch, YARN-65.003.patch,
> YARN-65.004.patch, YARN-65.005.patch, YARN-65.006.patch, YARN-65.007.patch,
> YARN-65.008.patch, YARN-65.009.patch, YARN-65.010.patch, YARN-65.011.patch,
> YARN-65.012.patch, YARN-65.013.patch
>
>
> The ResourceManager holds onto a configurable number of completed
> applications (yarn.resource.max-completed-applications, defaults to 10000),
> and the memory footprint of these completed applications can be significant.
> For example, the {{submissionContext}} in RMAppImpl contains references to
> protocolbuffer objects and other items that probably aren't necessary to keep
> around once the application has completed. We could significantly reduce the
> memory footprint of the RM by releasing objects that are no longer necessary
> once an application completes.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]