[ 
https://issues.apache.org/jira/browse/YARN-947?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13803262#comment-13803262
 ] 

Vinod Kumar Vavilapalli commented on YARN-947:
----------------------------------------------

Quick comments on the patch: 
 - We don't need a new YarnContainerState, already have ContainerState. It can 
be argued that ContainerState should have more information. In that case, we 
should directly change ContainerState itself - but have to think about 
compatibility. Do we ever expose ContainerState in any existing APIs in 2.2.0? 
In any case I'd like to postpone that discussion into a separate JIRA and use 
ContainerState itself for now.
 - We in future may need a separate ApplicationAttemptStartDataProto and 
ApplicationAttemptRegisteredDataProto. For now, we can just store both of them 
after AM registration, but that increases the possibility of loss of 
information on RM restart. May be another JIRA.
 - We will need a APP_ATTEMPT_FINAL_SAVING state as being discussed on 
YARN-891. Please add it.
 - I think we should separate client facing records from the event records. For 
e.g. ContainerHistoryData.java shouldn't be in server package. Again another 
JIRA, but this one's more important.
 - SchedulerUtils.java changes are unnecessary.

> Defining the history data classes for the implementation of the 
> reading/writing interface
> -----------------------------------------------------------------------------------------
>
>                 Key: YARN-947
>                 URL: https://issues.apache.org/jira/browse/YARN-947
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>            Reporter: Zhijie Shen
>            Assignee: Zhijie Shen
>             Fix For: YARN-321
>
>         Attachments: YARN-947.1.patch, YARN-947.2.patch, YARN-947.3.patch, 
> YARN-947.4.patch, YARN-947.5.patch, YARN-947.6.patch
>
>
> We need to define the history data classes have the exact fields to be 
> stored. Therefore, all the implementations don't need to have the duplicate 
> logic to exact the required information from RMApp, RMAppAttempt and 
> RMContainer.
> We use protobuf to define these classes, such that they can be ser/des 
> to/from bytes, which are easier for persistence.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to