[ https://issues.apache.org/jira/browse/YARN-422?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13650182#comment-13650182 ]
Zhijie Shen commented on YARN-422: ---------------------------------- When I investigated using NMClient in M/R AM (see MAPREDUCE-5203), I found one limitation of the current design. Note that NMClientAsync doesn't execute the start/stop/query RPC calls immediately when the corresponding APIs are called. Instead, an event is scheduled to start a thread later. The users of NMClientAsync cannot define some logic to be run immediately before the RPC calls. For example, in ContainerLauncherImpl, the container state must be checked right before the PRC calls in launch() and kill(). To be logically correct, this logic cannot be move up to the place where the event is scheduled. Therefore, it's useful to let users define what to do immediately before the three RPC calls. I proposed to add three more APIs in CallbackHandler, and insert the hoots immediately before the three RPC calls, respectively. > Add NM client library > --------------------- > > Key: YARN-422 > URL: https://issues.apache.org/jira/browse/YARN-422 > Project: Hadoop YARN > Issue Type: Sub-task > Reporter: Bikas Saha > Assignee: Zhijie Shen > Attachments: AMNMClient_Defination.txt, > AMNMClient_Definition_Updated_With_Tests.txt, proposal_v1.pdf, > YARN-422.1.patch, YARN-422.2.patch, YARN-422.3.patch > > > Create a simple wrapper over the ContainerManager protocol to provide hide > the details of the protocol implementation. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira