use of org.apache.oozie.BundleJobBean in project oozie by apache.
the class TestBundleChangeXCommand method testBundleChange1.
/**
* Test : Change pause time of a bundle
*
* @throws Exception
*/
public void testBundleChange1() throws Exception {
BundleJobBean job = this.addRecordToBundleJobTable(Job.Status.PREP, false);
String dateStr = "2099-01-01T01:00Z";
JPAService jpaService = Services.get().get(JPAService.class);
assertNotNull(jpaService);
BundleJobGetJPAExecutor bundleJobGetCmd = new BundleJobGetJPAExecutor(job.getId());
job = jpaService.execute(bundleJobGetCmd);
assertEquals(job.getPauseTime(), null);
new BundleJobChangeXCommand(job.getId(), "pausetime=" + dateStr).call();
job = jpaService.execute(bundleJobGetCmd);
assertEquals(job.getPauseTime(), DateUtils.parseDateOozieTZ(dateStr));
}
use of org.apache.oozie.BundleJobBean in project oozie by apache.
the class TestBundleChangeXCommand method testBundleChange2.
/**
* Test : Change pause time of a bundle that contains a SUCCEEDED coordinator job,
* The coordinator should also change its pause time.
*
* @throws Exception
*/
public void testBundleChange2() throws Exception {
BundleJobBean bundleJob = this.addRecordToBundleJobTable(Job.Status.RUNNING, false);
CoordinatorJobBean coordJob = addRecordToCoordJobTable(CoordinatorJob.Status.SUCCEEDED, false, false);
coordJob.setBundleId(bundleJob.getId());
final JPAService jpaService = Services.get().get(JPAService.class);
assertNotNull(jpaService);
CoordJobQueryExecutor.getInstance().executeUpdate(CoordJobQuery.UPDATE_COORD_JOB_BUNDLEID, coordJob);
coordJob.setAppName("COORD-TEST1");
assertNotNull(jpaService);
CoordJobQueryExecutor.getInstance().executeUpdate(CoordJobQuery.UPDATE_COORD_JOB, coordJob);
BundleActionBean bundleAction = new BundleActionBean();
bundleAction.setBundleActionId(bundleJob.getId() + "_COORD-TEST1");
bundleAction.setCoordId(coordJob.getId());
bundleAction.setBundleId(bundleJob.getId());
bundleAction.setStatus(Job.Status.SUCCEEDED);
jpaService.execute(new BundleActionInsertJPAExecutor(bundleAction));
String dateStr = "2099-01-01T01:00Z";
BundleJobGetJPAExecutor bundleJobGetCmd = new BundleJobGetJPAExecutor(bundleJob.getId());
bundleJob = jpaService.execute(bundleJobGetCmd);
assertEquals(bundleJob.getPauseTime(), null);
new BundleJobChangeXCommand(bundleJob.getId(), "pausetime=" + dateStr).call();
bundleJob = jpaService.execute(bundleJobGetCmd);
assertEquals(DateUtils.parseDateOozieTZ(dateStr), bundleJob.getPauseTime());
final String coordJobId = coordJob.getId();
waitFor(60000, new Predicate() {
public boolean evaluate() throws Exception {
CoordinatorJobBean coordJob1 = jpaService.execute(new CoordJobGetJPAExecutor(coordJobId));
return (coordJob1.getPauseTime() != null);
}
});
coordJob = jpaService.execute(new CoordJobGetJPAExecutor(coordJob.getId()));
assertEquals(DateUtils.parseDateOozieTZ(dateStr), coordJob.getPauseTime());
}
use of org.apache.oozie.BundleJobBean in project oozie by apache.
the class TestBundleChangeXCommand method testBundleChangeNegative2.
/**
* Negative Test : pause time is a past time
*
* @throws Exception
*/
public void testBundleChangeNegative2() throws Exception {
BundleJobBean job = this.addRecordToBundleJobTable(Job.Status.PREP, false);
String dateStr = "2009-01-01T01:00Z";
JPAService jpaService = Services.get().get(JPAService.class);
assertNotNull(jpaService);
BundleJobGetJPAExecutor bundleJobGetCmd = new BundleJobGetJPAExecutor(job.getId());
job = jpaService.execute(bundleJobGetCmd);
assertEquals(job.getPauseTime(), null);
try {
new BundleJobChangeXCommand(job.getId(), "pausetime=" + dateStr).call();
fail("Should not reach here");
} catch (XException e) {
assertEquals(ErrorCode.E1317, e.getErrorCode());
}
}
use of org.apache.oozie.BundleJobBean in project oozie by apache.
the class TestBundleJobSuspendXCommand method testBundleSuspendWithError.
/**
* Test : Suspend bundle job in RUNNINGWITHERROR state
*
* @throws Exception
*/
public void testBundleSuspendWithError() throws Exception {
BundleJobBean job = this.addRecordToBundleJobTable(Job.Status.RUNNINGWITHERROR, false);
JPAService jpaService = Services.get().get(JPAService.class);
assertNotNull(jpaService);
BundleJobGetJPAExecutor bundleJobGetCmd = new BundleJobGetJPAExecutor(job.getId());
job = jpaService.execute(bundleJobGetCmd);
assertEquals(Job.Status.RUNNINGWITHERROR, job.getStatus());
new BundleJobSuspendXCommand(job.getId()).call();
job = jpaService.execute(bundleJobGetCmd);
assertEquals(Job.Status.SUSPENDEDWITHERROR, job.getStatus());
}
use of org.apache.oozie.BundleJobBean in project oozie by apache.
the class TestBundleJobSuspendXCommand method testBundleSuspendWithError2.
/**
* Test : Suspend bundle job in PAUSEDWITHERROR state
*
* @throws Exception
*/
public void testBundleSuspendWithError2() throws Exception {
BundleJobBean job = this.addRecordToBundleJobTable(Job.Status.PAUSEDWITHERROR, false);
JPAService jpaService = Services.get().get(JPAService.class);
assertNotNull(jpaService);
BundleJobGetJPAExecutor bundleJobGetCmd = new BundleJobGetJPAExecutor(job.getId());
job = jpaService.execute(bundleJobGetCmd);
assertEquals(Job.Status.PAUSEDWITHERROR, job.getStatus());
new BundleJobSuspendXCommand(job.getId()).call();
job = jpaService.execute(bundleJobGetCmd);
assertEquals(Job.Status.SUSPENDEDWITHERROR, job.getStatus());
}
Aggregations