Repository: oozie
Updated Branches:
  refs/heads/master 853a4af9f -> adb91c6a9


OOZIE-1775 TestEventGeneration.testCoordinatorActionEvent is failing and 
CoordRerunX should generate event (mona)


Project: http://git-wip-us.apache.org/repos/asf/oozie/repo
Commit: http://git-wip-us.apache.org/repos/asf/oozie/commit/adb91c6a
Tree: http://git-wip-us.apache.org/repos/asf/oozie/tree/adb91c6a
Diff: http://git-wip-us.apache.org/repos/asf/oozie/diff/adb91c6a

Branch: refs/heads/master
Commit: adb91c6a95328e078c77a014aec01a3949f92e95
Parents: 853a4af
Author: mona <[email protected]>
Authored: Wed May 28 11:27:53 2014 -0700
Committer: mona <[email protected]>
Committed: Wed May 28 11:27:53 2014 -0700

----------------------------------------------------------------------
 .../apache/oozie/command/TransitionXCommand.java |  5 +++--
 .../oozie/command/coord/CoordRerunXCommand.java  |  2 +-
 .../oozie/command/coord/CoordResumeXCommand.java |  6 ++++++
 .../org/apache/oozie/sla/service/SLAService.java |  1 +
 .../apache/oozie/event/TestEventGeneration.java  | 19 +++++++++++++++----
 .../apache/oozie/sla/TestSLAEventGeneration.java |  1 +
 core/src/test/resources/coord-action-sla.xml     |  2 +-
 release-log.txt                                  |  1 +
 8 files changed, 29 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/oozie/blob/adb91c6a/core/src/main/java/org/apache/oozie/command/TransitionXCommand.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/org/apache/oozie/command/TransitionXCommand.java 
b/core/src/main/java/org/apache/oozie/command/TransitionXCommand.java
index c9e185c..dc4be10 100644
--- a/core/src/main/java/org/apache/oozie/command/TransitionXCommand.java
+++ b/core/src/main/java/org/apache/oozie/command/TransitionXCommand.java
@@ -18,6 +18,7 @@
 package org.apache.oozie.command;
 
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 
 import org.apache.oozie.CoordinatorActionBean;
@@ -77,13 +78,13 @@ public abstract class TransitionXCommand<T> extends 
XCommand<T> {
      * @param em
      * @throws CommandException
      */
-    public void generateEvents(CoordinatorJobBean coordJob) throws 
CommandException {
+    public void generateEvents(CoordinatorJobBean coordJob, Date startTime) 
throws CommandException {
         for(UpdateEntry entry : updateList){
             JsonBean actionBean = entry.getBean();
             if (actionBean instanceof CoordinatorActionBean) {
                 CoordinatorActionBean caBean = (CoordinatorActionBean) 
actionBean;
                 caBean.setJobId(coordJob.getId());
-                CoordinatorXCommand.generateEvent(caBean, coordJob.getUser(), 
coordJob.getAppName(), null);
+                CoordinatorXCommand.generateEvent(caBean, coordJob.getUser(), 
coordJob.getAppName(), startTime);
             }
             // TODO generate Coord Job event
         }

http://git-wip-us.apache.org/repos/asf/oozie/blob/adb91c6a/core/src/main/java/org/apache/oozie/command/coord/CoordRerunXCommand.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/org/apache/oozie/command/coord/CoordRerunXCommand.java 
b/core/src/main/java/org/apache/oozie/command/coord/CoordRerunXCommand.java
index 8aeb803..735b295 100644
--- a/core/src/main/java/org/apache/oozie/command/coord/CoordRerunXCommand.java
+++ b/core/src/main/java/org/apache/oozie/command/coord/CoordRerunXCommand.java
@@ -391,7 +391,7 @@ public class CoordRerunXCommand extends 
RerunTransitionXCommand<CoordinatorActio
         try {
             
BatchQueryExecutor.getInstance().executeBatchInsertUpdateDelete(insertList, 
updateList, null);
             if (EventHandlerService.isEnabled()) {
-                generateEvents(coordJob);
+                generateEvents(coordJob, null);
             }
         }
         catch (JPAExecutorException e) {

http://git-wip-us.apache.org/repos/asf/oozie/blob/adb91c6a/core/src/main/java/org/apache/oozie/command/coord/CoordResumeXCommand.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/org/apache/oozie/command/coord/CoordResumeXCommand.java 
b/core/src/main/java/org/apache/oozie/command/coord/CoordResumeXCommand.java
index 47900a4..0aae1e6 100644
--- a/core/src/main/java/org/apache/oozie/command/coord/CoordResumeXCommand.java
+++ b/core/src/main/java/org/apache/oozie/command/coord/CoordResumeXCommand.java
@@ -38,6 +38,7 @@ import 
org.apache.oozie.executor.jpa.CoordJobGetActionsSuspendedJPAExecutor;
 import org.apache.oozie.executor.jpa.CoordJobGetJPAExecutor;
 import org.apache.oozie.executor.jpa.JPAExecutorException;
 import org.apache.oozie.executor.jpa.CoordJobQueryExecutor.CoordJobQuery;
+import org.apache.oozie.service.EventHandlerService;
 import org.apache.oozie.service.JPAService;
 import org.apache.oozie.service.Services;
 import org.apache.oozie.util.InstrumentUtils;
@@ -164,6 +165,11 @@ public class CoordResumeXCommand extends 
ResumeTransitionXCommand {
     public void performWrites() throws CommandException {
         try {
             
BatchQueryExecutor.getInstance().executeBatchInsertUpdateDelete(null, 
updateList, null);
+            if (EventHandlerService.isEnabled()) {
+                // good enough to set event start time as coord's last 
modified time
+                // updated when set to running
+                generateEvents(coordJob, coordJob.getLastModifiedTime());
+            }
         }
         catch (JPAExecutorException e) {
             throw new CommandException(e);

http://git-wip-us.apache.org/repos/asf/oozie/blob/adb91c6a/core/src/main/java/org/apache/oozie/sla/service/SLAService.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/oozie/sla/service/SLAService.java 
b/core/src/main/java/org/apache/oozie/sla/service/SLAService.java
index ea2983f..7fcb334 100644
--- a/core/src/main/java/org/apache/oozie/sla/service/SLAService.java
+++ b/core/src/main/java/org/apache/oozie/sla/service/SLAService.java
@@ -93,6 +93,7 @@ public class SLAService implements Service {
         return slaEnabled;
     }
 
+    @VisibleForTesting
     public SLACalculator getSLACalculator() {
         return calcImpl;
     }

http://git-wip-us.apache.org/repos/asf/oozie/blob/adb91c6a/core/src/test/java/org/apache/oozie/event/TestEventGeneration.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/oozie/event/TestEventGeneration.java 
b/core/src/test/java/org/apache/oozie/event/TestEventGeneration.java
index 9c03299..3f68c73 100644
--- a/core/src/test/java/org/apache/oozie/event/TestEventGeneration.java
+++ b/core/src/test/java/org/apache/oozie/event/TestEventGeneration.java
@@ -17,7 +17,6 @@
  */
 package org.apache.oozie.event;
 
-import java.io.File;
 import java.io.FileWriter;
 import java.io.Reader;
 import java.io.Writer;
@@ -85,6 +84,7 @@ import org.apache.oozie.service.LiteWorkflowStoreService;
 import org.apache.oozie.service.Services;
 import org.apache.oozie.service.UUIDService;
 import org.apache.oozie.test.XDataTestCase;
+import org.apache.oozie.test.XTestCase.Predicate;
 import org.apache.oozie.util.DateUtils;
 import org.apache.oozie.util.IOUtils;
 import org.apache.oozie.util.XConfiguration;
@@ -320,18 +320,20 @@ public class TestEventGeneration extends XDataTestCase {
         ((LiteWorkflowInstance) 
wfInstance).setStatus(WorkflowInstance.Status.SUSPENDED);
         wfJob.setWorkflowInstance(wfInstance);
         
WorkflowJobQueryExecutor.getInstance().executeUpdate(WorkflowJobQuery.UPDATE_WORKFLOW_STATUS_INSTANCE_MODIFIED,
 wfJob);
+        queue.clear();
         new CoordResumeXCommand(coord.getId()).call();
-        Thread.sleep(5000);
+        waitForEventGeneration(1000);
         CoordinatorActionEvent cevent = (CoordinatorActionEvent) queue.poll();
         assertEquals(EventStatus.STARTED, cevent.getEventStatus());
         assertEquals(AppType.COORDINATOR_ACTION, cevent.getAppType());
         assertEquals(action.getId(), cevent.getId());
         assertEquals(action.getJobId(), cevent.getParentId());
         assertEquals(action.getNominalTime(), cevent.getNominalTime());
-        assertEquals(wfJob.getStartTime(), cevent.getStartTime());
+        coord = 
CoordJobQueryExecutor.getInstance().get(CoordJobQuery.GET_COORD_JOB, 
coord.getId());
+        assertEquals(coord.getLastModifiedTime(), cevent.getStartTime());
 
         // Action going to WAITING on Coord Rerun
-        action.setStatus(CoordinatorAction.Status.SUCCEEDED);
+        action.setStatus(CoordinatorAction.Status.KILLED);
         
CoordActionQueryExecutor.getInstance().executeUpdate(CoordActionQuery.UPDATE_COORD_ACTION_STATUS_PENDING_TIME,
 action);
         queue.clear();
         new CoordRerunXCommand(coord.getId(), 
RestConstants.JOB_COORD_SCOPE_ACTION, "1", false, true)
@@ -655,4 +657,13 @@ public class TestEventGeneration extends XDataTestCase {
         return action.getId();
     }
 
+    private void waitForEventGeneration(int wait) {
+        waitFor(wait, new Predicate() {
+            @Override
+            public boolean evaluate() throws Exception {
+                return ehs.getEventQueue().peek() != null;
+            }
+        });
+    }
+
 }

http://git-wip-us.apache.org/repos/asf/oozie/blob/adb91c6a/core/src/test/java/org/apache/oozie/sla/TestSLAEventGeneration.java
----------------------------------------------------------------------
diff --git 
a/core/src/test/java/org/apache/oozie/sla/TestSLAEventGeneration.java 
b/core/src/test/java/org/apache/oozie/sla/TestSLAEventGeneration.java
index f3bfc29..cb4e434 100644
--- a/core/src/test/java/org/apache/oozie/sla/TestSLAEventGeneration.java
+++ b/core/src/test/java/org/apache/oozie/sla/TestSLAEventGeneration.java
@@ -436,6 +436,7 @@ public class TestSLAEventGeneration extends XDataTestCase {
         assertTrue(SLAStatus.IN_PROCESS == slaEvent.getSLAStatus() || 
SLAStatus.NOT_STARTED == slaEvent.getSLAStatus());
         assertEquals(EventStatus.START_MISS, slaEvent.getEventStatus());
 
+        ehs.getEventQueue().clear();
         // test that sla processes the Job Event from Start command
         action.setStatus(CoordinatorAction.Status.SUBMITTED);
         
CoordActionQueryExecutor.getInstance().executeUpdate(CoordActionQuery.UPDATE_COORD_ACTION_STATUS_PENDING_TIME,
 action);

http://git-wip-us.apache.org/repos/asf/oozie/blob/adb91c6a/core/src/test/resources/coord-action-sla.xml
----------------------------------------------------------------------
diff --git a/core/src/test/resources/coord-action-sla.xml 
b/core/src/test/resources/coord-action-sla.xml
index e88df6c..4893c61 100644
--- a/core/src/test/resources/coord-action-sla.xml
+++ b/core/src/test/resources/coord-action-sla.xml
@@ -16,7 +16,7 @@
   limitations under the License.
 -->
 <coordinator-app name="test-coord-sla" frequency="${coord:days(1)}"
-                 start="2009-01-02T08:01Z" end="2010-01-01T08:01Z"
+                 start="2009-01-01T08:01Z" end="2009-01-02T08:01Z"
                  timezone="America/Los_Angeles"
                  xmlns="uri:oozie:coordinator:0.4"
                  xmlns:sla="uri:oozie:sla:0.2">

http://git-wip-us.apache.org/repos/asf/oozie/blob/adb91c6a/release-log.txt
----------------------------------------------------------------------
diff --git a/release-log.txt b/release-log.txt
index 44e42d5..ef32934 100644
--- a/release-log.txt
+++ b/release-log.txt
@@ -1,5 +1,6 @@
 -- Oozie 4.1.0 release (trunk - unreleased)
 
+OOZIE-1775 TestEventGeneration.testCoordinatorActionEvent is failing and 
CoordRerunX should generate event (mona)
 OOZIE-1844 HA - Lock mechanism for CoordMaterializeTriggerService (puru via 
rohini)
 OOZIE-1834 sla should-start is supposed to be optional but it is not (rkanter)
 OOZIE-1838 jdbc.connections.active sampler does not show up (rkanter)

Reply via email to