[
https://issues.apache.org/jira/browse/YARN-1521?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13942409#comment-13942409
]
Xuan Gong commented on YARN-1521:
---------------------------------
We have three options for all the protocol APIs:
1. marked as Idempotent
2. marked as AtMostOnce.
3. do nothing
The apis can be marked idempotent:
* ResourceManagerAdministrationProtocol:
1. refreshQueues
2. refreshNodes
3. refreshSuperUserGroupsConfiguration
4. refreshUserToGroupsMappings
5. refreshAdminAcls
6. refreshServiceAcls
* ResourceTracker:
1. registerNodeManager
2. nodeHeartbeat
* ApplicationClientProtocol
1. getNewApplication
2. forceKillApplication
3. getApplicationReport
4. getClusterMetrics
5. getApplications
6. getClusterNodes
7. getQueueInfo
8. getQueueUserAcls
9. getApplicationAttemptReport
10. getApplicationAttempts
11. getContainerReport
12. getContainers
13. getDelegationToken
These APIs can be marked as AtMostOnce:
* ApplicationClientProtocol:
1. submitApplication
These apis do not need to add any annotations
* ResourceManagerAdministrationProtocol
1. updateNodeResource: Do not find any places using it. Maybe some other
applications will use this API. Possibly can be marked idempotent.
* ApplicationMasterProtocol
1. registerApplicationMaster
2. finishApplicationMaster
3. allocate
* ApplicationClientProtocol:
1. moveApplicationAcrossQueues: Do not support yet
There are two APIs which are not in this list:
1. renewDelegationToken
2. cancelDelegationToken
We can add the proper annotations for them in
https://issues.apache.org/jira/browse/YARN-1776
> Mark appropriate protocol methods with the idempotent annotation or
> AtMostOnce annotation
> -----------------------------------------------------------------------------------------
>
> Key: YARN-1521
> URL: https://issues.apache.org/jira/browse/YARN-1521
> Project: Hadoop YARN
> Issue Type: Sub-task
> Reporter: Xuan Gong
> Assignee: Xuan Gong
>
> After YARN-1028, we add the automatically failover into RMProxy. This JIRA is
> to identify whether we need to add idempotent annotation and which methods
> can be marked as idempotent.
--
This message was sent by Atlassian JIRA
(v6.2#6252)