You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@falcon.apache.org by ra...@apache.org on 2014/12/04 23:32:25 UTC
incubator-falcon git commit: FALCON-895 Fix intermittent failures in
ProcessInstanceStatus and KillsTest classes. Contributed by Paul Isaychuk
Repository: incubator-falcon
Updated Branches:
refs/heads/master dcc282389 -> 56900a2b8
FALCON-895 Fix intermittent failures in ProcessInstanceStatus and KillsTest classes. Contributed by Paul Isaychuk
Project: http://git-wip-us.apache.org/repos/asf/incubator-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-falcon/commit/56900a2b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-falcon/tree/56900a2b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-falcon/diff/56900a2b
Branch: refs/heads/master
Commit: 56900a2b860c257242e70bad7edbcd111528bfb3
Parents: dcc2823
Author: Raghav Kumar Gautam <ra...@apache.org>
Authored: Thu Dec 4 14:32:22 2014 -0800
Committer: Raghav Kumar Gautam <ra...@apache.org>
Committed: Thu Dec 4 14:32:22 2014 -0800
----------------------------------------------------------------------
falcon-regression/CHANGES.txt | 3 ++
.../regression/ProcessInstanceKillsTest.java | 37 ++++++++++++++------
.../regression/ProcessInstanceStatusTest.java | 1 +
3 files changed, 31 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/56900a2b/falcon-regression/CHANGES.txt
----------------------------------------------------------------------
diff --git a/falcon-regression/CHANGES.txt b/falcon-regression/CHANGES.txt
index 6a1df5c..a0a1a7d 100644
--- a/falcon-regression/CHANGES.txt
+++ b/falcon-regression/CHANGES.txt
@@ -169,6 +169,9 @@ Trunk (Unreleased)
FALCON-681 delete duplicate feed retention test from falcon regression (SamarthG)
BUG FIXES
+ FALCON-895 Fix intermittent failures in ProcessInstanceStatus and KillsTest classes.
+ (Paul Isaychuk via Raghav Kumar Gautam)
+
FALCON-891 Removing some more invalid acl tests (Raghav Kumar Gautam)
FALCON-888 Disabling test for special chars in pipeline name and
http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/56900a2b/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/ProcessInstanceKillsTest.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/ProcessInstanceKillsTest.java b/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/ProcessInstanceKillsTest.java
index 53054c61..e1a4dd4 100644
--- a/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/ProcessInstanceKillsTest.java
+++ b/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/ProcessInstanceKillsTest.java
@@ -35,6 +35,7 @@ import org.apache.falcon.resource.InstancesResult.WorkflowStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.log4j.Logger;
import org.apache.oozie.client.CoordinatorAction;
+import org.apache.oozie.client.CoordinatorJob;
import org.apache.oozie.client.OozieClient;
import org.testng.Assert;
import org.testng.annotations.AfterClass;
@@ -45,6 +46,8 @@ import org.testng.annotations.Test;
import java.io.IOException;
import java.lang.reflect.Method;
+import java.util.Arrays;
+import java.util.List;
/**
* Process instance kill tests.
@@ -136,26 +139,40 @@ public class ProcessInstanceKillsTest extends BaseTestClass {
}
/**
- * Schedule process. Perform -kill action on instances between -start and -end dates which
- * expose range of last 3 instances which have been materialized already and those which
- * should be. Check that only existent instances are killed.
+ * Schedule process. Provide data for all instances except the last,
+ * thus making it non-materialized (waiting). Try to -kill last 3 instances.
+ * Check that only running instances were affected.
*
* @throws Exception
*/
@Test(groups = {"singleCluster"})
- public void testProcessInstanceKillKillNonMaterialized() throws Exception {
- bundles[0].setProcessValidity("2010-01-02T00:00Z", "2010-01-02T01:00Z");
+ public void testProcessInstanceKillKillNotRunning() throws Exception {
+ bundles[0].setProcessValidity("2010-01-02T00:00Z", "2010-01-02T00:26Z");
bundles[0].setProcessTimeOut(3, TimeUnit.minutes);
- bundles[0].setProcessPeriodicity(1, TimeUnit.minutes);
+ bundles[0].setProcessPeriodicity(5, TimeUnit.minutes);
+ bundles[0].setInputFeedPeriodicity(5, TimeUnit.minutes);
bundles[0].setProcessConcurrency(6);
bundles[0].submitFeedsScheduleProcess(prism);
InstanceUtil.waitTillInstancesAreCreated(cluster, bundles[0].getProcessData(), 0);
- OozieUtil.createMissingDependencies(cluster, EntityType.PROCESS, processName, 0);
+
+ //create data for first 5 instances, 6th should be non-materialized
+ String bundleId = InstanceUtil.getSequenceBundleID(cluster, processName, EntityType.PROCESS, 0);
+ for(CoordinatorJob c : clusterOC.getBundleJobInfo(bundleId).getCoordinators()) {
+ List<CoordinatorAction> actions = clusterOC.getCoordJobInfo(c.getId()).getActions();
+ if (actions.size() == 6) {
+ for(int i = 0; i < 5; i++) {
+ CoordinatorAction action = actions.get(i);
+ InstanceUtil.createHDFSFolders(cluster, Arrays
+ .asList(action.getMissingDependencies().split("#")));
+ }
+ break;
+ }
+ }
InstanceUtil.waitTillInstanceReachState(clusterOC, processName, 5,
- CoordinatorAction.Status.RUNNING, EntityType.PROCESS, 5);
+ CoordinatorAction.Status.RUNNING, EntityType.PROCESS, 3);
InstancesResult r = prism.getProcessHelper()
- .getProcessInstanceKill(processName, "?start=2010-01-02T00:03Z&end=2010-01-02T00:30Z");
- InstanceUtil.validateResponse(r, 3, 0, 0, 0, 3);
+ .getProcessInstanceKill(processName, "?start=2010-01-02T00:14Z&end=2010-01-02T00:26Z");
+ InstanceUtil.validateResponse(r, 3, 0, 0, 1, 2);
LOGGER.info(r.toString());
}
http://git-wip-us.apache.org/repos/asf/incubator-falcon/blob/56900a2b/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/ProcessInstanceStatusTest.java
----------------------------------------------------------------------
diff --git a/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/ProcessInstanceStatusTest.java b/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/ProcessInstanceStatusTest.java
index 6f88103..91fbf29 100644
--- a/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/ProcessInstanceStatusTest.java
+++ b/falcon-regression/merlin/src/test/java/org/apache/falcon/regression/ProcessInstanceStatusTest.java
@@ -121,6 +121,7 @@ public class ProcessInstanceStatusTest extends BaseTestClass {
bundles[0].setProcessConcurrency(1);
bundles[0].submitFeedsScheduleProcess(prism);
OozieUtil.createMissingDependencies(cluster, EntityType.PROCESS, processName, 0);
+ InstanceUtil.waitTillInstanceReachState(clusterOC, processName, 1, Status.RUNNING, EntityType.PROCESS);
InstancesResult r = prism.getProcessHelper().getProcessInstanceStatus(processName,
"?start=2010-01-02T01:00Z&end=2010-01-02T10:20Z");
InstanceUtil.validateSuccess(r, bundles[0], WorkflowStatus.RUNNING);