[
https://issues.apache.org/jira/browse/YARN-1410?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13922832#comment-13922832
]
Xuan Gong commented on YARN-1410:
---------------------------------
create a new patch to address all the comments, which includes:
1. create a new Exception: ApplicationIdNotProvidedException. Before we do the
application submission, we will check the applicationId. If the applicationId
is not provided in ApplicationSubmissionContext, it will throw the
ApplicationIdNotProvidedException. That requires the client should provide the
ApplicationId before submission.
2. Added documentations in several places : GetNewApplicationResponse
(explicitly saying the applicationId can be used to submit the application),
YarnClient#submitApplication.
* SubmitApplicationResponse: nothing change here. So, no new documentation
added for this class
* ApplicationClientProtocol.getNewApplication(..) API and
ApplicationClientProtocol.submitApplication(..): no new documentation added.
The current documents have enough information about that clients need to do
when we return a appID.
3. Modify the testcase:
* modify the TestYarnClient#testSubmitApplication() to validate we should get
ApplicationIdNotProvidedException if applicationId is not provided
* add a new test: TestSubmitApplicationWithRMHA to test handle RM fails over
before submitApplication()
> Handle RM fails over after getApplicationID() and before submitApplication().
> -----------------------------------------------------------------------------
>
> Key: YARN-1410
> URL: https://issues.apache.org/jira/browse/YARN-1410
> Project: Hadoop YARN
> Issue Type: Sub-task
> Reporter: Bikas Saha
> Assignee: Xuan Gong
> Attachments: YARN-1410-outline.patch, YARN-1410.1.patch,
> YARN-1410.10.patch, YARN-1410.10.patch, YARN-1410.2.patch, YARN-1410.2.patch,
> YARN-1410.3.patch, YARN-1410.4.patch, YARN-1410.5.patch, YARN-1410.6.patch,
> YARN-1410.7.patch, YARN-1410.8.patch, YARN-1410.9.patch
>
> Original Estimate: 48h
> Remaining Estimate: 48h
>
> App submission involves
> 1) creating appId
> 2) using that appId to submit an ApplicationSubmissionContext to the user.
> The client may have obtained an appId from an RM, the RM may have failed
> over, and the client may submit the app to the new RM.
> Since the new RM has a different notion of cluster timestamp (used to create
> app id) the new RM may reject the app submission resulting in unexpected
> failure on the client side.
> The same may happen for other 2 step client API operations.
--
This message was sent by Atlassian JIRA
(v6.2#6252)