[
https://issues.apache.org/jira/browse/MAPREDUCE-6296?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Allen Wittenauer updated MAPREDUCE-6296:
----------------------------------------
Labels: BB2015-05-TBR (was: )
> A better way to deal with InterruptedException on waitForCompletion
> -------------------------------------------------------------------
>
> Key: MAPREDUCE-6296
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-6296
> Project: Hadoop Map/Reduce
> Issue Type: Improvement
> Reporter: Yang Hao
> Assignee: Yang Hao
> Labels: BB2015-05-TBR
> Attachments: MAPREDUCE-6296.patch
>
>
> Some code in method waitForCompletion of Job class is
> {code:title=Job.java|borderStyle=solid}
> public boolean waitForCompletion(boolean verbose
> ) throws IOException, InterruptedException,
> ClassNotFoundException {
> if (state == JobState.DEFINE) {
> submit();
> }
> if (verbose) {
> monitorAndPrintJob();
> } else {
> // get the completion poll interval from the client.
> int completionPollIntervalMillis =
> Job.getCompletionPollInterval(cluster.getConf());
> while (!isComplete()) {
> try {
> Thread.sleep(completionPollIntervalMillis);
> } catch (InterruptedException ie) {
> }
> }
> }
> return isSuccessful();
> }
> {code}
> but a better way to deal with InterruptException is
> {code:title=Job.java|borderStyle=solid}
> public boolean waitForCompletion(boolean verbose
> ) throws IOException, InterruptedException,
> ClassNotFoundException {
> if (state == JobState.DEFINE) {
> submit();
> }
> if (verbose) {
> monitorAndPrintJob();
> } else {
> // get the completion poll interval from the client.
> int completionPollIntervalMillis =
> Job.getCompletionPollInterval(cluster.getConf());
> while (!isComplete()) {
> try {
> Thread.sleep(completionPollIntervalMillis);
> } catch (InterruptedException ie) {
> Thread.currentThread().interrupt();
> }
> }
> }
> return isSuccessful();
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)