Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
It's a bug in Oozie. CoordActionCheckXCommand doesn't take care of SUSPENDED state. It only handles SUCCEEDED, FAILED and KILLED.
protected Void execute() throws CommandException { try { InstrumentUtils.incrJobCounter(getName(), 1, getInstrumentation()); Status slaStatus = null; CoordinatorAction.Status initialStatus = coordAction.getStatus(); if (workflowJob.getStatus() == WorkflowJob.Status.SUCCEEDED) { coordAction.setStatus(CoordinatorAction.Status.SUCCEEDED); // set pending to false as the status is SUCCEEDED coordAction.setPending(0); slaStatus = Status.SUCCEEDED; } else { if (workflowJob.getStatus() == WorkflowJob.Status.FAILED) { coordAction.setStatus(CoordinatorAction.Status.FAILED); slaStatus = Status.FAILED; // set pending to false as the status is FAILED coordAction.setPending(0); } else { if (workflowJob.getStatus() == WorkflowJob.Status.KILLED) { coordAction.setStatus(CoordinatorAction.Status.KILLED); slaStatus = Status.KILLED; // set pending to false as the status is KILLED coordAction.setPending(0); } else { LOG.warn("Unexpected workflow " + workflowJob.getId() + " STATUS " + workflowJob.getStatus()); coordAction.setLastModifiedTime(new Date()); CoordActionQueryExecutor.getInstance().executeUpdate( CoordActionQueryExecutor.CoordActionQuery.UPDATE_COORD_ACTION_FOR_MODIFIED_DATE, coordAction); return null; } } }
Thank you puru for pointing it out.
Attachments
Attachments
Issue Links
- is related to
-
OOZIE-2465 CoordActionCheckXCommand acquires lock on coord action id
- Resolved