[
https://issues.apache.org/jira/browse/YARN-3390?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14394059#comment-14394059
]
Naganarasimha G R commented on YARN-3390:
-----------------------------------------
Thanks for the feedback [~zjshen] & [~sjlee0],
bq. either pass in the context per call or have a map of app id to context. I
would favor the latter approach because it'd be easier on the perspective of
callers of putEntities().
I too agree it will be easier easier on the perspective of callers of
putEntities() but if we favor for map of {{app id to context}}
* implicit assumption would be that {{putEntities(TimelineEntities ) }} will be
for same appId(/will have have the same context)
* TimelineEntities as such do not have appID explicitly, so planning to modify
{{TimelineCollector.getTimelineEntityContext()}} to
{{TimelineCollector.getTimelineEntityContext(TimelineEntity.Identifier id)}}
and subclasses of TimelineCollector can take care of mapping the Id to the
Context (via AppId) if required.
* code of {{putEntities(TimelineEntities)}} would look something like
{code}
Iterator<TimelineEntity> iterator = entities.getEntities().iterator();
TimelineEntity next = (iterator.hasNext())?iterator.next():null;
if(null!=next) {
TimelineCollectorContext context =
getTimelineEntityContext(next.getIdentifier());
return writer.write(context.getClusterId(), context.getUserId(),
context.getFlowId(), context.getFlowRunId(), context.getAppId(),
entities);
}
{code}
If its ok then shall i work on it ?
> RMTimelineCollector should have the context info of each app
> ------------------------------------------------------------
>
> Key: YARN-3390
> URL: https://issues.apache.org/jira/browse/YARN-3390
> Project: Hadoop YARN
> Issue Type: Sub-task
> Components: timelineserver
> Reporter: Zhijie Shen
> Assignee: Zhijie Shen
>
> RMTimelineCollector should have the context info of each app whose entity
> has been put
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)