OOZIE-2737 testConfigDefaultPropsToAction is flaky (satishsaley via rohini)
Project: http://git-wip-us.apache.org/repos/asf/oozie/repo Commit: http://git-wip-us.apache.org/repos/asf/oozie/commit/1d54e476 Tree: http://git-wip-us.apache.org/repos/asf/oozie/tree/1d54e476 Diff: http://git-wip-us.apache.org/repos/asf/oozie/diff/1d54e476 Branch: refs/heads/oya Commit: 1d54e476f7abe0317cffa526d9b42e21e2497fed Parents: b327fdb Author: Rohini Palaniswamy <[email protected]> Authored: Fri Nov 18 12:44:12 2016 -0800 Committer: Rohini Palaniswamy <[email protected]> Committed: Fri Nov 18 12:44:12 2016 -0800 ---------------------------------------------------------------------- release-log.txt | 1 + .../hadoop/TestMapReduceActionExecutor.java | 23 ++++++++++++++------ 2 files changed, 17 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/oozie/blob/1d54e476/release-log.txt ---------------------------------------------------------------------- diff --git a/release-log.txt b/release-log.txt index caceaa9..acfac17 100644 --- a/release-log.txt +++ b/release-log.txt @@ -1,5 +1,6 @@ -- Oozie 4.4.0 release (trunk - unreleased) +OOZIE-2737 testConfigDefaultPropsToAction is flaky (satishsaley via rohini) OOZIE-2666 Support embedding Jetty into Oozie (asasvari via rkanter) OOZIE-1459 Remove the version in the child poms for maven-antrun-plugin (Jan Hentschel via rkanter) OOZIE-2225 Add wild card filter for gathering jobs (sai-krish,pbacsko via rkanter,rohini) http://git-wip-us.apache.org/repos/asf/oozie/blob/1d54e476/sharelib/streaming/src/test/java/org/apache/oozie/action/hadoop/TestMapReduceActionExecutor.java ---------------------------------------------------------------------- diff --git a/sharelib/streaming/src/test/java/org/apache/oozie/action/hadoop/TestMapReduceActionExecutor.java b/sharelib/streaming/src/test/java/org/apache/oozie/action/hadoop/TestMapReduceActionExecutor.java index 2713526..c7860be 100644 --- a/sharelib/streaming/src/test/java/org/apache/oozie/action/hadoop/TestMapReduceActionExecutor.java +++ b/sharelib/streaming/src/test/java/org/apache/oozie/action/hadoop/TestMapReduceActionExecutor.java @@ -33,6 +33,7 @@ import org.apache.oozie.WorkflowActionBean; import org.apache.oozie.WorkflowJobBean; import org.apache.oozie.client.OozieClient; import org.apache.oozie.client.WorkflowAction; +import org.apache.oozie.client.WorkflowAction.Status; import org.apache.oozie.command.wf.StartXCommand; import org.apache.oozie.command.wf.SubmitXCommand; import org.apache.oozie.executor.jpa.WorkflowActionQueryExecutor; @@ -138,11 +139,10 @@ public class TestMapReduceActionExecutor extends ActionExecutorTestCase { String wfId = new SubmitXCommand(conf).call(); new StartXCommand(wfId).call(); - sleep(3000); + waitForWorkflowAction(wfId + "@mr-node"); WorkflowActionBean mrAction = WorkflowActionQueryExecutor.getInstance().get(WorkflowActionQuery.GET_ACTION, wfId + "@mr-node"); - // check NN and JT settings Element eAction = XmlUtils.parseXml(mrAction.getConf()); Element eConf = eAction.getChild("name-node", eAction.getNamespace()); @@ -193,12 +193,12 @@ public class TestMapReduceActionExecutor extends ActionExecutorTestCase { writer = new FileWriter(getTestCaseDir() + "/workflow.xml"); IOUtils.copyCharStream(new StringReader(wfXml), writer); - wfId = new SubmitXCommand(conf).call(); - new StartXCommand(wfId).call(); - sleep(3000); + wfId = new SubmitXCommand(conf).call(); + new StartXCommand(wfId).call(); + waitForWorkflowAction(wfId + "@mr-node"); - mrAction = WorkflowActionQueryExecutor.getInstance().get(WorkflowActionQuery.GET_ACTION, - wfId + "@mr-node"); + mrAction = WorkflowActionQueryExecutor.getInstance().get(WorkflowActionQuery.GET_ACTION, + wfId + "@mr-node"); // check param eAction = XmlUtils.parseXml(mrAction.getConf()); @@ -1362,5 +1362,14 @@ public class TestMapReduceActionExecutor extends ActionExecutorTestCase { } } + private void waitForWorkflowAction(final String actionId) { + waitFor(3 * 60 * 1000, new Predicate() { + public boolean evaluate() throws Exception { + WorkflowActionBean mrAction = WorkflowActionQueryExecutor.getInstance() + .get(WorkflowActionQuery.GET_ACTION, actionId); + return mrAction.inTerminalState() || mrAction.getStatus() == Status.RUNNING; + } + }); + } }
