You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-issues@hadoop.apache.org by "Rohith Sharma K S (JIRA)" <ji...@apache.org> on 2016/03/02 11:03:18 UTC
[jira] [Created] (YARN-4755) Optimize sending appACLsUpdated event
to TimelineServer while recovering completed applications
Rohith Sharma K S created YARN-4755:
---------------------------------------
Summary: Optimize sending appACLsUpdated event to TimelineServer while recovering completed applications
Key: YARN-4755
URL: https://issues.apache.org/jira/browse/YARN-4755
Project: Hadoop YARN
Issue Type: Improvement
Reporter: Rohith Sharma K S
In method {{RMAppManager#createAndPopulateNewRMApp}}, appACLsUpdated is sent to timelineserver for every application that get created.
{code}
private RMAppImpl createAndPopulateNewRMApp(
ApplicationSubmissionContext submissionContext, long submitTime,
String user, boolean isRecovery) throws YarnException {
//
//
String appViewACLs = submissionContext.getAMContainerSpec()
.getApplicationACLs().get(ApplicationAccessType.VIEW_APP);
rmContext.getSystemMetricsPublisher().appACLsUpdated(
application, appViewACLs, System.currentTimeMillis());
return application;
}
{code}
Say if we have 10K completed applications to recover, 30K events will be generated i.e app_created, app_finished and app_acl_updated. For completed applications, I think need not to send app-acl-updated event with which gradually reduce load on the dispatcher.
Eventhough MultiDispatcher is used to publish timeline events, it is bottle neck when max-completed is configured very high value may be 100K.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)