hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tsuyoshi OZAWA (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (YARN-1954) Add waitFor to AMRMClient(Async)
Date Wed, 06 Aug 2014 08:55:14 GMT

     [ https://issues.apache.org/jira/browse/YARN-1954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Tsuyoshi OZAWA updated YARN-1954:

    Attachment: YARN-1954.5.patch

Thank you for comments, [~zjshen]. Updated a patch:

1. Changed to throw IllegalArgumentException when the arguments are invalid.
2. Added new argument {{logInterval}} to {{waitFor}} API.
3. Removed unnecessary changes.
4. Changed to check countDownChecker#counter == 3  after waitFor in TestAMRMClient#testWaitFor.
5. Removed unnecessary synchronized block. Instead of this, added synchronized block against
{{callback}} to read correct value from main thread, because {{callback.notify}} is updated
in another thread.

> Add waitFor to AMRMClient(Async)
> --------------------------------
>                 Key: YARN-1954
>                 URL: https://issues.apache.org/jira/browse/YARN-1954
>             Project: Hadoop YARN
>          Issue Type: New Feature
>          Components: client
>    Affects Versions: 3.0.0, 2.4.0
>            Reporter: Zhijie Shen
>            Assignee: Tsuyoshi OZAWA
>         Attachments: YARN-1954.1.patch, YARN-1954.2.patch, YARN-1954.3.patch, YARN-1954.4.patch,
YARN-1954.4.patch, YARN-1954.5.patch
> Recently, I saw some use cases of AMRMClient(Async). The painful thing is that the main
non-daemon thread has to sit in a dummy loop to prevent AM process exiting before all the
tasks are done, while unregistration is triggered on a separate another daemon thread by callback
methods (in particular when using AMRMClientAsync). IMHO, it should be beneficial to add a
waitFor method to AMRMClient(Async) to block the AM until unregistration or user supplied
check point, such that users don't need to write the loop themselves.

This message was sent by Atlassian JIRA

View raw message