MAPREDUCE-6801. Fix flaky TestKill.testKillJob (Haibo Chen via Varun Saxena)

This commit is contained in:
Varun Saxena 2016-11-19 01:37:59 +05:30
parent f6ffa11635
commit 7584fbf4cb
1 changed files with 7 additions and 2 deletions

View File

@ -22,6 +22,7 @@
import java.util.Map;
import java.util.concurrent.CountDownLatch;
import org.apache.hadoop.service.Service;
import org.junit.Assert;
import org.apache.hadoop.conf.Configuration;
@ -66,8 +67,8 @@ public void testKillJob() throws Exception {
Job job = app.submit(new Configuration());
//wait and vailidate for Job to become RUNNING
app.waitForState(job, JobState.RUNNING);
app.waitForInternalState((JobImpl) job, JobStateInternal.RUNNING);
//send the kill signal to Job
app.getContext().getEventHandler().handle(
new JobEvent(job.getID(), JobEventType.JOB_KILL));
@ -77,6 +78,10 @@ public void testKillJob() throws Exception {
//wait and validate for Job to be KILLED
app.waitForState(job, JobState.KILLED);
// make sure all events are processed. The AM is stopped
// only when all tasks and task attempts have been killed
app.waitForState(Service.STATE.STOPPED);
Map<TaskId,Task> tasks = job.getTasks();
Assert.assertEquals("No of tasks is not correct", 1,
tasks.size());