MAPREDUCE-5145. Changed default max-attempts to be more than one for MR jobs inline with YARN. Contributed by Zhijie Shen.
svn merge --ignore-ancestry -c 1477889 ../../trunk/ git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1477890 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
2058ae4927
commit
868362c9b1
|
@ -53,6 +53,9 @@ Release 2.0.5-beta - UNRELEASED
|
|||
MAPREDUCE-5069. add concrete common implementations of
|
||||
CombineFileInputFormat (Sangjin Lee via bobby)
|
||||
|
||||
MAPREDUCE-5145. Changed default max-attempts to be more than one for MR jobs
|
||||
inline with YARN. (Zhijie Shen via vinodkv)
|
||||
|
||||
OPTIMIZATIONS
|
||||
|
||||
MAPREDUCE-4974. Optimising the LineRecordReader initialize() method
|
||||
|
|
|
@ -90,6 +90,7 @@ import org.junit.Test;
|
|||
JobId jobid = recordFactory.newRecordInstance(JobId.class);
|
||||
jobid.setAppId(appId);
|
||||
ContainerAllocator mockAlloc = mock(ContainerAllocator.class);
|
||||
Assert.assertTrue(MRJobConfig.DEFAULT_MR_AM_MAX_ATTEMPTS > 1);
|
||||
MRAppMaster appMaster = new TestMRApp(attemptId, mockAlloc,
|
||||
JobStateInternal.RUNNING, MRJobConfig.DEFAULT_MR_AM_MAX_ATTEMPTS);
|
||||
appMaster.init(conf);
|
||||
|
@ -116,8 +117,9 @@ import org.junit.Test;
|
|||
appId.setId(0);
|
||||
attemptId.setApplicationId(appId);
|
||||
ContainerAllocator mockAlloc = mock(ContainerAllocator.class);
|
||||
Assert.assertTrue(MRJobConfig.DEFAULT_MR_AM_MAX_ATTEMPTS > 1);
|
||||
MRAppMaster appMaster = new TestMRApp(attemptId, mockAlloc,
|
||||
JobStateInternal.REBOOT, 4);
|
||||
JobStateInternal.REBOOT, MRJobConfig.DEFAULT_MR_AM_MAX_ATTEMPTS);
|
||||
appMaster.init(conf);
|
||||
appMaster.start();
|
||||
//shutdown the job, not the lastRetry
|
||||
|
@ -144,7 +146,7 @@ import org.junit.Test;
|
|||
attemptId.setApplicationId(appId);
|
||||
ContainerAllocator mockAlloc = mock(ContainerAllocator.class);
|
||||
MRAppMaster appMaster = new TestMRApp(attemptId, mockAlloc,
|
||||
JobStateInternal.REBOOT, MRJobConfig.DEFAULT_MR_AM_MAX_ATTEMPTS);
|
||||
JobStateInternal.REBOOT, 1); //no retry
|
||||
appMaster.init(conf);
|
||||
appMaster.start();
|
||||
//shutdown the job, is lastRetry
|
||||
|
@ -201,8 +203,7 @@ import org.junit.Test;
|
|||
JobId jobid = recordFactory.newRecordInstance(JobId.class);
|
||||
jobid.setAppId(appId);
|
||||
ContainerAllocator mockAlloc = mock(ContainerAllocator.class);
|
||||
MRAppMaster appMaster = new TestMRApp(attemptId, mockAlloc,
|
||||
MRJobConfig.DEFAULT_MR_AM_MAX_ATTEMPTS);
|
||||
MRAppMaster appMaster = new TestMRApp(attemptId, mockAlloc, 1); //no retry
|
||||
appMaster.init(conf);
|
||||
//simulate the process being killed
|
||||
MRAppMaster.MRAppMasterShutdownHook hook =
|
||||
|
|
|
@ -677,6 +677,6 @@ public interface MRJobConfig {
|
|||
*/
|
||||
public static final String MR_AM_MAX_ATTEMPTS = "mapreduce.am.max-attempts";
|
||||
|
||||
public static final int DEFAULT_MR_AM_MAX_ATTEMPTS = 1;
|
||||
public static final int DEFAULT_MR_AM_MAX_ATTEMPTS = 2;
|
||||
|
||||
}
|
||||
|
|
|
@ -1250,10 +1250,11 @@
|
|||
|
||||
<property>
|
||||
<name>mapreduce.am.max-attempts</name>
|
||||
<value>1</value>
|
||||
<value>2</value>
|
||||
<description>The maximum number of application attempts. It is a
|
||||
application-specific setting. It should not be larger than the global number
|
||||
set by resourcemanager. Otherwise, it will be override.</description>
|
||||
set by resourcemanager. Otherwise, it will be override. The default number is
|
||||
set to 2, to allow at least one retry for AM.</description>
|
||||
</property>
|
||||
|
||||
<!-- Job Notification Configuration -->
|
||||
|
|
Loading…
Reference in New Issue