You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oozie.apache.org by ge...@apache.org on 2018/03/14 12:18:27 UTC
[2/2] oozie git commit: OOZIE-2814 OYA: Update example workflows to
newest schemas (asasvari via gezapeti)
OOZIE-2814 OYA: Update example workflows to newest schemas (asasvari via gezapeti)
Project: http://git-wip-us.apache.org/repos/asf/oozie/repo
Commit: http://git-wip-us.apache.org/repos/asf/oozie/commit/da8e5b51
Tree: http://git-wip-us.apache.org/repos/asf/oozie/tree/da8e5b51
Diff: http://git-wip-us.apache.org/repos/asf/oozie/diff/da8e5b51
Branch: refs/heads/master
Commit: da8e5b5184a0afba033ae5358b7ca6a03a38b618
Parents: 09df58f
Author: Gezapeti Cseh <ge...@apache.org>
Authored: Wed Mar 14 13:17:01 2018 +0100
Committer: Gezapeti Cseh <ge...@apache.org>
Committed: Wed Mar 14 13:17:09 2018 +0100
----------------------------------------------------------------------
client/src/main/resources/distcp-action-1.0.xsd | 39 +++
.../oozie/action/hadoop/JavaActionExecutor.java | 14 +-
.../workflow/lite/LiteWorkflowAppParser.java | 66 +++-
core/src/main/resources/oozie-default.xml | 13 +-
.../action/hadoop/TestJavaActionExecutor.java | 83 ++++-
.../lite/TestLiteWorkflowAppParser.java | 321 ++++++++-----------
.../apps/aggregator/coordinator-with-offset.xml | 4 +-
.../src/main/apps/aggregator/coordinator.xml | 4 +-
.../apps/aggregator/job-with-offset.properties | 2 +-
.../src/main/apps/aggregator/job.properties | 2 +-
examples/src/main/apps/aggregator/workflow.xml | 4 +-
examples/src/main/apps/bundle/job.properties | 2 +-
.../main/apps/coord-input-logic/job.properties | 2 +-
.../main/apps/coord-input-logic/workflow.xml | 4 +-
.../src/main/apps/cron-schedule/coordinator.xml | 4 +-
.../src/main/apps/cron-schedule/job.properties | 2 +-
.../src/main/apps/cron-schedule/workflow.xml | 2 +-
examples/src/main/apps/cron/coordinator.xml | 4 +-
examples/src/main/apps/cron/job.properties | 2 +-
examples/src/main/apps/cron/workflow.xml | 2 +-
.../src/main/apps/custom-main/job.properties | 2 +-
examples/src/main/apps/custom-main/workflow.xml | 6 +-
.../main/apps/datelist-java-main/job.properties | 2 +-
.../main/apps/datelist-java-main/workflow.xml | 4 +-
examples/src/main/apps/demo/job.properties | 2 +-
.../src/main/apps/demo/job.windows.properties | 2 +-
examples/src/main/apps/demo/workflow.xml | 8 +-
examples/src/main/apps/distcp/job.properties | 2 +-
examples/src/main/apps/distcp/workflow.xml | 6 +-
examples/src/main/apps/hadoop-el/job.properties | 2 +-
examples/src/main/apps/hadoop-el/workflow.xml | 4 +-
examples/src/main/apps/hcatalog/job.properties | 2 +-
.../main/apps/hcatalog/job.properties.security | 2 +-
examples/src/main/apps/hcatalog/workflow.xml | 4 +-
.../main/apps/hcatalog/workflow.xml.security | 4 +-
examples/src/main/apps/hive/job.properties | 2 +-
examples/src/main/apps/hive/workflow.xml | 6 +-
.../src/main/apps/hive/workflow.xml.security | 6 +-
examples/src/main/apps/hive2/job.properties | 2 +-
.../src/main/apps/hive2/job.properties.security | 2 +-
examples/src/main/apps/hive2/workflow.xml | 6 +-
.../src/main/apps/hive2/workflow.xml.security | 6 +-
examples/src/main/apps/java-main/job.properties | 2 +-
examples/src/main/apps/java-main/workflow.xml | 4 +-
.../map-reduce/job-with-config-class.properties | 2 +-
.../src/main/apps/map-reduce/job.properties | 2 +-
.../map-reduce/workflow-with-config-class.xml | 4 +-
examples/src/main/apps/map-reduce/workflow.xml | 4 +-
examples/src/main/apps/no-op/job.properties | 2 +-
examples/src/main/apps/no-op/workflow.xml | 2 +-
examples/src/main/apps/pig/job.properties | 2 +-
examples/src/main/apps/pig/workflow.xml | 4 +-
examples/src/main/apps/pyspark/job.properties | 2 +-
examples/src/main/apps/pyspark/workflow.xml | 4 +-
examples/src/main/apps/shell/job.properties | 2 +-
examples/src/main/apps/shell/workflow.xml | 6 +-
examples/src/main/apps/sla/coordinator.xml | 4 +-
examples/src/main/apps/sla/job.properties | 2 +-
examples/src/main/apps/sla/workflow.xml | 2 +-
examples/src/main/apps/spark/job.properties | 4 +-
examples/src/main/apps/spark/workflow.xml | 6 +-
.../src/main/apps/sqoop-freeform/job.properties | 2 +-
.../src/main/apps/sqoop-freeform/workflow.xml | 6 +-
examples/src/main/apps/sqoop/job.properties | 2 +-
examples/src/main/apps/sqoop/workflow.xml | 6 +-
examples/src/main/apps/ssh/job.properties | 2 +-
examples/src/main/apps/ssh/workflow.xml | 2 +-
examples/src/main/apps/streaming/job.properties | 2 +-
.../main/apps/streaming/job.windows.properties | 2 +-
examples/src/main/apps/streaming/workflow.xml | 4 +-
examples/src/main/apps/subwf/job.properties | 2 +-
examples/src/main/apps/subwf/workflow.xml | 6 +-
.../src/test/resources/localoozieexample-wf.xml | 2 +-
release-log.txt | 1 +
74 files changed, 422 insertions(+), 335 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/client/src/main/resources/distcp-action-1.0.xsd
----------------------------------------------------------------------
diff --git a/client/src/main/resources/distcp-action-1.0.xsd b/client/src/main/resources/distcp-action-1.0.xsd
new file mode 100644
index 0000000..9592f9e
--- /dev/null
+++ b/client/src/main/resources/distcp-action-1.0.xsd
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:distcp="uri:oozie:distcp-action:1.0" elementFormDefault="qualified"
+ targetNamespace="uri:oozie:distcp-action:1.0">
+ <xs:include schemaLocation="oozie-common-1.0.xsd"/>
+ <xs:element name="distcp" type="distcp:ACTION"/>
+
+ <xs:complexType name="ACTION">
+ <xs:sequence>
+ <xs:choice>
+ <xs:element name="job-tracker" type="xs:string" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="resource-manager" type="xs:string" minOccurs="0" maxOccurs="1"/>
+ </xs:choice>
+ <xs:element name="name-node" type="xs:string" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="prepare" type="distcp:PREPARE" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="launcher" type="distcp:LAUNCHER" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="configuration" type="distcp:CONFIGURATION" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="java-opts" type="xs:string" minOccurs="0" maxOccurs="1"/>
+ <xs:element name="arg" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+</xs:schema>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/core/src/main/java/org/apache/oozie/action/hadoop/JavaActionExecutor.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/oozie/action/hadoop/JavaActionExecutor.java b/core/src/main/java/org/apache/oozie/action/hadoop/JavaActionExecutor.java
index bc0f405..122dfd0 100644
--- a/core/src/main/java/org/apache/oozie/action/hadoop/JavaActionExecutor.java
+++ b/core/src/main/java/org/apache/oozie/action/hadoop/JavaActionExecutor.java
@@ -261,18 +261,26 @@ public class JavaActionExecutor extends ActionExecutor {
protected Configuration createBaseHadoopConf(Context context, Element actionXml, boolean loadResources) {
Namespace ns = actionXml.getNamespace();
- String jobTracker = actionXml.getChild("job-tracker", ns).getTextTrim();
+ String resourceManager;
+ final Element resourceManagerTag = actionXml.getChild("resource-manager", ns);
+ if (resourceManagerTag != null) {
+ resourceManager = resourceManagerTag.getTextTrim();
+ }
+ else {
+ resourceManager = actionXml.getChild("job-tracker", ns).getTextTrim();
+ }
+
String nameNode = actionXml.getChild("name-node", ns).getTextTrim();
Configuration conf = null;
if (loadResources) {
- conf = Services.get().get(HadoopAccessorService.class).createConfiguration(jobTracker);
+ conf = Services.get().get(HadoopAccessorService.class).createConfiguration(resourceManager);
}
else {
conf = new Configuration(false);
}
conf.set(HADOOP_USER, context.getProtoActionConf().get(WorkflowAppService.HADOOP_USER));
- conf.set(HADOOP_YARN_RM, jobTracker);
+ conf.set(HADOOP_YARN_RM, resourceManager);
conf.set(HADOOP_NAME_NODE, nameNode);
conf.set("mapreduce.fileoutputcommitter.marksuccessfuljobs", "true");
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/core/src/main/java/org/apache/oozie/workflow/lite/LiteWorkflowAppParser.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/oozie/workflow/lite/LiteWorkflowAppParser.java b/core/src/main/java/org/apache/oozie/workflow/lite/LiteWorkflowAppParser.java
index c236daf..78b0652 100644
--- a/core/src/main/java/org/apache/oozie/workflow/lite/LiteWorkflowAppParser.java
+++ b/core/src/main/java/org/apache/oozie/workflow/lite/LiteWorkflowAppParser.java
@@ -107,9 +107,12 @@ public class LiteWorkflowAppParser {
public static final String DEFAULT_NAME_NODE = "oozie.actions.default.name-node";
public static final String DEFAULT_JOB_TRACKER = "oozie.actions.default.job-tracker";
+ public static final String DEFAULT_RESOURCE_MANAGER = "oozie.actions.default.resource-manager";
public static final String OOZIE_GLOBAL = "oozie.wf.globalconf";
private static final String JOB_TRACKER = "job-tracker";
+ private static final String RESOURCE_MANAGER = "resource-manager";
+
private static final String NAME_NODE = "name-node";
private static final String JOB_XML = "job-xml";
private static final String CONFIGURATION = "configuration";
@@ -120,7 +123,9 @@ public class LiteWorkflowAppParser {
private Class<? extends ActionNodeHandler> actionHandlerClass;
private String defaultNameNode;
+ private String defaultResourceManager;
private String defaultJobTracker;
+ private boolean isResourceManagerTagUsed;
public LiteWorkflowAppParser(Schema schema,
Class<? extends ControlNodeHandler> controlNodeHandler,
@@ -131,20 +136,21 @@ public class LiteWorkflowAppParser {
this.decisionHandlerClass = decisionHandlerClass;
this.actionHandlerClass = actionHandlerClass;
- defaultNameNode = ConfigurationService.get(DEFAULT_NAME_NODE);
- if (defaultNameNode != null) {
- defaultNameNode = defaultNameNode.trim();
- if (defaultNameNode.isEmpty()) {
- defaultNameNode = null;
- }
- }
- defaultJobTracker = ConfigurationService.get(DEFAULT_JOB_TRACKER);
- if (defaultJobTracker != null) {
- defaultJobTracker = defaultJobTracker.trim();
- if (defaultJobTracker.isEmpty()) {
- defaultJobTracker = null;
+ defaultNameNode = getPropertyFromConfig(DEFAULT_NAME_NODE);
+ defaultResourceManager = getPropertyFromConfig(DEFAULT_RESOURCE_MANAGER);
+ defaultJobTracker = getPropertyFromConfig(DEFAULT_JOB_TRACKER);
+ }
+
+ private String getPropertyFromConfig(final String configPropertyKey) {
+ String property = ConfigurationService.get(configPropertyKey);
+ if (property != null) {
+ property = property.trim();
+ if (property.isEmpty()) {
+ property = null;
}
}
+
+ return property;
}
public LiteWorkflowApp validateAndParse(Reader reader, Configuration jobConf) throws WorkflowException {
@@ -421,11 +427,14 @@ public class LiteWorkflowAppParser {
GlobalSectionData gData = null;
if (global != null) {
String globalJobTracker = null;
- Element globalJobTrackerElement = global.getChild(JOB_TRACKER, ns);
+ Element globalJobTrackerElement = getResourceManager(ns, global);
+ isResourceManagerTagUsed = globalJobTrackerElement != null
+ && globalJobTrackerElement.getName().equals(RESOURCE_MANAGER);
if (globalJobTrackerElement != null) {
globalJobTracker = globalJobTrackerElement.getValue();
}
+
String globalNameNode = null;
Element globalNameNodeElement = global.getChild(NAME_NODE, ns);
if (globalNameNodeElement != null) {
@@ -462,6 +471,14 @@ public class LiteWorkflowAppParser {
return gData;
}
+ private Element getResourceManager(final Namespace ns, final Element element) {
+ final Element resourceManager = element.getChild(RESOURCE_MANAGER, ns);
+ if (resourceManager != null) {
+ return resourceManager;
+ }
+ return element.getChild(JOB_TRACKER, ns);
+ }
+
private void handleDefaultsAndGlobal(GlobalSectionData gData, Configuration configDefault, Element actionElement, Namespace ns)
throws WorkflowException {
@@ -491,15 +508,17 @@ public class LiteWorkflowAppParser {
throw new WorkflowException(ErrorCode.E0701, "No " + NAME_NODE + " defined");
}
}
- if (actionElement.getChild(JOB_TRACKER, actionNs) == null &&
+ if (getResourceManager(actionNs, actionElement) == null &&
!FsActionExecutor.ACTION_TYPE.equals(actionElement.getName())) {
if (gData != null && gData.jobTracker != null) {
- addChildElement(actionElement, actionNs, JOB_TRACKER, gData.jobTracker);
+ addResourceManagerOrJobTracker(actionElement, actionNs, gData.jobTracker, isResourceManagerTagUsed);
+ } else if (defaultResourceManager != null) {
+ addResourceManagerOrJobTracker(actionElement, actionNs, defaultResourceManager, true);
} else if (defaultJobTracker != null) {
- addChildElement(actionElement, actionNs, JOB_TRACKER, defaultJobTracker);
+ addResourceManagerOrJobTracker(actionElement, actionNs, defaultJobTracker, false);
} else if (!(SubWorkflowActionExecutor.ACTION_TYPE.equals(actionElement.getName()) ||
GLOBAL.equals(actionElement.getName()))) {
- throw new WorkflowException(ErrorCode.E0701, "No " + JOB_TRACKER + " defined");
+ throw new WorkflowException(ErrorCode.E0701, "No " + JOB_TRACKER + " or " + RESOURCE_MANAGER + " defined");
}
}
}
@@ -568,4 +587,17 @@ public class LiteWorkflowAppParser {
}
}
}
+
+ private void addResourceManagerOrJobTracker(final Element actionElement, final Namespace actionNs, final String jobTracker,
+ boolean isResourceManagerUsed) {
+ if (isResourceManagerUsed) {
+ addChildElement(actionElement, actionNs, RESOURCE_MANAGER, jobTracker);
+ } else {
+ addChildElement(actionElement, actionNs, JOB_TRACKER, jobTracker);
+ }
+ }
+
+ private void addResourceManager(final Element actionElement, final Namespace actionNs, final String jobTracker) {
+ addChildElement(actionElement, actionNs, RESOURCE_MANAGER, jobTracker);
+ }
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/core/src/main/resources/oozie-default.xml
----------------------------------------------------------------------
diff --git a/core/src/main/resources/oozie-default.xml b/core/src/main/resources/oozie-default.xml
index e53b17b..966dd29 100644
--- a/core/src/main/resources/oozie-default.xml
+++ b/core/src/main/resources/oozie-default.xml
@@ -1624,7 +1624,7 @@ will be the requeue interval for the actions which are waiting for a long time w
hive-action-0.2.xsd,hive-action-0.3.xsd,hive-action-0.4.xsd,hive-action-0.5.xsd,hive-action-0.6.xsd,hive-action-1.0.xsd,
sqoop-action-0.2.xsd,sqoop-action-0.3.xsd,sqoop-action-0.4.xsd,sqoop-action-1.0.xsd,
ssh-action-0.1.xsd,ssh-action-0.2.xsd,
- distcp-action-0.1.xsd,distcp-action-0.2.xsd,
+ distcp-action-0.1.xsd,distcp-action-0.2.xsd,distcp-action-1.0.xsd,
oozie-sla-0.1.xsd,oozie-sla-0.2.xsd,
hive2-action-0.1.xsd,hive2-action-0.2.xsd,hive2-action-1.0.xsd,
spark-action-0.1.xsd,spark-action-0.2.xsd,spark-action-1.0.xsd
@@ -3042,6 +3042,17 @@ will be the requeue interval for the actions which are waiting for a long time w
</property>
<property>
+ <name>oozie.actions.default.resource-manager</name>
+ <value> </value>
+ <description>
+ The default value to use for the <resource-manager> element in applicable action types. This value will be used
+ when neither the action itself nor the global section specifies a <resource-managerr>. As expected, it should
+ be of the form "HOST:PORT". If both oozie.actions.default.job-tracker and oozie.actions.default.resource-manager are
+ specified, oozie.actions.default.resource-manager takes precedence.
+ </description>
+ </property>
+
+ <property>
<name>oozie.service.SchemaCheckerService.check.interval</name>
<value>168</value>
<description>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/core/src/test/java/org/apache/oozie/action/hadoop/TestJavaActionExecutor.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/oozie/action/hadoop/TestJavaActionExecutor.java b/core/src/test/java/org/apache/oozie/action/hadoop/TestJavaActionExecutor.java
index 1cc569d..b55a3cd 100644
--- a/core/src/test/java/org/apache/oozie/action/hadoop/TestJavaActionExecutor.java
+++ b/core/src/test/java/org/apache/oozie/action/hadoop/TestJavaActionExecutor.java
@@ -386,6 +386,25 @@ public class TestJavaActionExecutor extends ActionExecutorTestCase {
assertEquals(WorkflowAction.Status.OK, context.getAction().getStatus());
}
+
+ public void testSimplestSubmitWithResourceManagerOK() throws Exception {
+ final String actionXml = "<java>" +
+ "<resource-manager>" + getJobTrackerUri() + "</resource-manager>" +
+ "<name-node>" + getNameNodeUri() + "</name-node>" +
+ "<main-class>" + LauncherMainTester.class.getName() + "</main-class>" +
+ "</java>";
+ final Context context = createContext(actionXml, null);
+ submitAction(context);
+ waitUntilYarnAppDoneAndAssertSuccess(context.getAction().getExternalId());
+ final ActionExecutor ae = new JavaActionExecutor();
+ ae.check(context, context.getAction());
+ assertEquals("SUCCEEDED", context.getAction().getExternalStatus());
+ assertNull(context.getAction().getData());
+
+ ae.end(context, context.getAction());
+ assertEquals(WorkflowAction.Status.OK, context.getAction().getStatus());
+ }
+
public void testOutputSubmitOK() throws Exception {
String actionXml = "<java>" +
"<job-tracker>" + getJobTrackerUri() + "</job-tracker>" +
@@ -2246,27 +2265,21 @@ public class TestJavaActionExecutor extends ActionExecutorTestCase {
String config = addConfig ? "<configuration>" +
"<property><name>action.foo</name><value>AA</value></property>" +
"</configuration>" : "";
- return "<java>" + "<job-tracker>" + getJobTrackerUri() + "</job-tracker>" +
+ return "<java>" +
+ "<job-tracker>" + getJobTrackerUri() + "</job-tracker>" +
"<name-node>" + getNameNodeUri() + "</name-node>" +
config +
"<main-class>MAIN-CLASS</main-class>" +
"</java>";
}
- private String createTestWorkflowXml() throws IOException {
+ private String createTestWorkflowXml(final String globalXml, final String actionXml) throws IOException {
String workflowUri = getTestCaseFileUri("workflow.xml");
- String appXml = "<workflow-app xmlns=\"uri:oozie:workflow:0.4\" name=\"workflow\">" +
- "<global>" +
- " <configuration>" +
- " <property>" +
- " <name>action.foo</name>" +
- " <value>foo2</value>" +
- " </property>" +
- " </configuration>" +
- "</global>" +
+ String appXml = "<workflow-app xmlns=\"uri:oozie:workflow:1.0\" name=\"workflow\">" +
+ globalXml +
"<start to=\"java\"/>" +
"<action name=\"java\">" +
- getJavaActionXml(false)+
+ actionXml +
" <ok to=\"end\"/>" +
" <error to=\"fail\"/>" +
"</action>" +
@@ -2284,7 +2297,7 @@ public class TestJavaActionExecutor extends ActionExecutorTestCase {
public void testGlobalConfigurationWithActionDefaults() throws Exception {
try {
- String workflowUri = createTestWorkflowXml();
+ String workflowUri = createTestWorkflowXml(getWorkflowGlobalXml(), getJavaActionXml(false));
LocalOozie.start();
final OozieClient wfClient = LocalOozie.getClient();
Properties conf = wfClient.createConfiguration();
@@ -2313,6 +2326,39 @@ public class TestJavaActionExecutor extends ActionExecutorTestCase {
}
}
+ public void testResourceManagerInGlobalConfigurationCanBeOverridenWithJobTrackerInAction() throws Exception {
+ try {
+ final String global = "<global>" +
+ "<resource-manager>RM</resource-manager>"+
+ "</global>";
+
+ final String workflowUri = createTestWorkflowXml(global, getJavaActionXml(false));
+ LocalOozie.start();
+ final OozieClient wfClient = LocalOozie.getClient();
+ final Properties conf = wfClient.createConfiguration();
+ conf.setProperty(OozieClient.APP_PATH, workflowUri);
+ conf.setProperty(OozieClient.USER_NAME, getTestUser());
+ conf.setProperty("appName", "var-app-name");
+ final String jobId = wfClient.submit(conf);
+ wfClient.start(jobId);
+ WorkflowJob workflow = wfClient.getJobInfo(jobId);
+ waitFor(20 * 1000, new Predicate() {
+ @Override
+ public boolean evaluate() throws Exception {
+ WorkflowAction javaAction = getJavaAction(wfClient.getJobInfo(jobId));
+ return javaAction != null && !javaAction.getStatus().equals("PREP");
+ }
+ });
+ final WorkflowAction workflowAction = getJavaAction(workflow);
+ final String actualConfig = workflowAction.getConf();
+ final String actualJobTrackerURI = XmlUtils.parseXml(actualConfig).getChildTextNormalize("job-tracker", null);
+ assertEquals(getJobTrackerUri(), actualJobTrackerURI);
+
+ } finally {
+ LocalOozie.stop();
+ }
+ }
+
private WorkflowAction getJavaAction(WorkflowJob workflowJob){
List<WorkflowAction> actions = workflowJob.getActions();
for(WorkflowAction wa : actions){
@@ -2676,4 +2722,15 @@ public class TestJavaActionExecutor extends ActionExecutorTestCase {
assertEquals(FinalApplicationStatus.KILLED,
yarnClient.getApplicationReport(ConverterUtils.toApplicationId(runningJob)).getFinalApplicationStatus());
}
+
+ public String getWorkflowGlobalXml() {
+ return "<global>" +
+ " <configuration>" +
+ " <property>" +
+ " <name>action.foo</name>" +
+ " <value>foo2</value>" +
+ " </property>" +
+ " </configuration>" +
+ "</global>";
+ }
}
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/core/src/test/java/org/apache/oozie/workflow/lite/TestLiteWorkflowAppParser.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/oozie/workflow/lite/TestLiteWorkflowAppParser.java b/core/src/test/java/org/apache/oozie/workflow/lite/TestLiteWorkflowAppParser.java
index 2cdbde4..f5baf6b 100644
--- a/core/src/test/java/org/apache/oozie/workflow/lite/TestLiteWorkflowAppParser.java
+++ b/core/src/test/java/org/apache/oozie/workflow/lite/TestLiteWorkflowAppParser.java
@@ -67,10 +67,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserGlobal() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-valid-global.xml", -1),
new Configuration());
@@ -107,10 +104,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserGlobalJobXML() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-valid-global-jobXml.xml", -1),
new Configuration());
@@ -150,10 +144,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserGlobalLocalAlreadyExists() throws Exception{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-valid-global.xml", -1),
new Configuration());
@@ -188,10 +179,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserGlobalExtensionActions() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-valid-global-ext.xml", -1),
new Configuration());
@@ -228,10 +216,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserGlobalExtensionActionsLocalAlreadyExists() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-valid-global-ext.xml", -1),
new Configuration());
@@ -263,10 +248,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserGlobalExtensionActionsNotApplicable() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
// Not all actions want a JT, NN, conf, or jobxml (e.g. email action)
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-valid-global-ext.xml", -1),
@@ -284,10 +266,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserGlobalExtensionActionsNoGlobal() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
// If no global section is defined, some extension actions (e.g. hive) must still have name-node and job-tracker elements
// or the handleGlobal() method will throw an exception
@@ -309,10 +288,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
public void testParserDefaultNameNode() throws Exception {
ConfigurationService.set("oozie.actions.default.name-node", "default-nn");
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-no-namenode.xml", -1),
new Configuration());
@@ -341,10 +317,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
public void testParserDefaultNameNodeWithGlobal() throws Exception {
ConfigurationService.set("oozie.actions.default.name-node", "default-nn");
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-no-namenode-global.xml", -1),
new Configuration());
@@ -373,10 +346,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
public void testParserDefaultNameNodeNotApplicable() throws Exception {
ConfigurationService.set("oozie.actions.default.name-node", "default-nn");
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
// Not all actions want a NN (e.g. email action)
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-no-namenode.xml", -1),
@@ -393,10 +363,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserDefaultNameNodeFail() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
// No default NN is set
try {
@@ -411,10 +378,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
public void testParserDefaultJobTracker() throws Exception {
ConfigurationService.set("oozie.actions.default.job-tracker", "default-jt");
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-no-jobtracker.xml", -1),
new Configuration());
@@ -443,10 +407,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
public void testParserDefaultJobTrackerWithGlobal() throws Exception {
ConfigurationService.set("oozie.actions.default.job-tracker", "default-jt");
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-no-jobtracker-global.xml", -1),
new Configuration());
@@ -475,10 +436,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
public void testParserDefaultJobTrackerNotApplicable() throws Exception {
ConfigurationService.set("oozie.actions.default.job-tracker", "default-jt");
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
// Not all actions want a NN (e.g. email action)
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-no-jobtracker.xml", -1),
@@ -495,10 +453,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserDefaultJobTrackerFail() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
// No default NN is set
try {
@@ -507,15 +462,12 @@ public class TestLiteWorkflowAppParser extends XTestCase {
fail();
} catch (WorkflowException e) {
assertEquals(ErrorCode.E0701, e.getErrorCode());
- assertTrue(e.getMessage().contains("No job-tracker defined"));
+ assertTrue(e.getMessage().contains("E0701: XML schema error, No job-tracker or resource-manager defined"));
}
}
public void testParserSubWorkflowPropagateNoGlobal() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(
IOUtils.getResourceAsReader("wf-schema-subworkflow-propagate-no-global.xml", -1),
@@ -533,10 +485,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserFsGlobalNN() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-fs-no-namenode-global.xml", -1),
new Configuration());
@@ -562,10 +511,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
public void testParserFsDefaultNN() throws Exception {
ConfigurationService.set("oozie.actions.default.name-node", "default-nn");
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-fs-no-namenode.xml", -1),
new Configuration());
@@ -590,10 +536,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserFsNoNN() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-fs-no-namenode.xml", -1),
new Configuration());
@@ -618,10 +561,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParser() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-valid.xml", -1), new Configuration());
@@ -661,10 +601,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserGlobalLauncherAM() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp workflowApp = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-global-launcherconf.xml", -1), new Configuration());
@@ -681,10 +618,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testParserGlobalLauncherAMOverridden() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp workflowApp = parser.validateAndParse(IOUtils.getResourceAsReader("wf-schema-global-launcherconf-override.xml", -1), new Configuration());
@@ -703,12 +637,9 @@ public class TestLiteWorkflowAppParser extends XTestCase {
* 2->ok->end
*/
public void testWfNoForkJoin() throws WorkflowException {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
- LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
+ LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new ActionNodeDef("one", dummyConf, TestActionNodeHandler.class, "two", "three"))
.addNode(new ActionNodeDef("two", dummyConf, TestActionNodeHandler.class, "end", "end"))
@@ -728,10 +659,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
(2,3)->j
*/
public void testSimpleForkJoin() throws WorkflowException {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("wf", "<worklfow-app/>",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
@@ -763,10 +691,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
7->j
*/
public void testNestedForkJoin() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("testWf", "<worklfow-app/>",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
@@ -800,10 +725,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
3->end
*/
public void testForkJoinFailure() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("testWf", "<worklfow-app/>",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
@@ -839,10 +761,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
j2-end
*/
public void testNestedForkJoinFailure() throws WorkflowException {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("testWf", "<worklfow-app/>",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
@@ -879,10 +798,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
j->k
*/
public void testTransitionFailure1() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
@@ -914,10 +830,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
j->end
*/
public void testTransition2() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
@@ -950,10 +863,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
j->end
*/
public void testTransition3() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
@@ -988,10 +898,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
* 6->k
*/
public void testErrorTransitionForkJoin() throws WorkflowException {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("wf", "<worklfow-app/>",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
@@ -1026,10 +933,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
3->j
*/
public void testDecisionForkJoin() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new ActionNodeDef("one", dummyConf, TestActionNodeHandler.class, "f","end"))
@@ -1060,10 +964,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
5->j
*/
public void testDecisionsToJoinForkJoin() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new ActionNodeDef("one", dummyConf, TestActionNodeHandler.class, "f","end"))
@@ -1095,10 +996,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
5->j
*/
public void testDecisionsToKillForkJoin() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new ActionNodeDef("one", dummyConf, TestActionNodeHandler.class, "f","end"))
@@ -1132,10 +1030,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
*j->end
*/
public void testDecisionForkJoinFailure() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new ActionNodeDef("one", dummyConf, TestActionNodeHandler.class, "f","end"))
@@ -1169,10 +1064,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
*j->end
*/
public void testDecisionToEndForkJoinFailure() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new ActionNodeDef("one", dummyConf, TestActionNodeHandler.class, "f","end"))
@@ -1207,10 +1099,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
*j->end
*/
public void testDecisionTwoPathsForkJoin() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new ActionNodeDef("one", dummyConf, TestActionNodeHandler.class, "f","end"))
@@ -1243,10 +1132,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
*j->end
*/
public void testMultipleDecisionThreePathsForkJoin() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new ActionNodeDef("one", dummyConf, TestActionNodeHandler.class, "f","end"))
@@ -1281,10 +1167,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
*j->end
*/
public void testMultipleDecisionThreePathsForkJoinFailure() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new ActionNodeDef("one", dummyConf, TestActionNodeHandler.class, "f","end"))
@@ -1322,10 +1205,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
*j->end
*/
public void testMultipleDecisionThreePathsForkJoinFailure2() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new ActionNodeDef("one", dummyConf, TestActionNodeHandler.class, "f","end"))
@@ -1363,10 +1243,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
* j2->end
*/
public void testDecisionMultipleForks() throws WorkflowException{
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "one"))
.addNode(new DecisionNodeDef("one", dummyConf, TestDecisionNodeHandler.class,
@@ -1403,10 +1280,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
* f2->k,k
*/
public void testForkJoinMismatch() throws WorkflowException {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "f"))
.addNode(new ForkNodeDef("f", LiteWorkflowStoreService.LiteControlNodeHandler.class,
@@ -1438,10 +1312,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
* j->end
*/
public void testForkJoinDuplicateTransitionsFromFork() throws WorkflowException {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
LiteWorkflowApp def = new LiteWorkflowApp("name", "def",
new StartNodeDef(LiteWorkflowStoreService.LiteControlNodeHandler.class, "f"))
.addNode(new ForkNodeDef("f", LiteWorkflowStoreService.LiteControlNodeHandler.class,
@@ -1463,10 +1334,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
@SuppressWarnings("deprecation")
public void testForkJoinValidationTime() throws Exception {
- final LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ final LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
final LiteWorkflowApp app = parser.validateAndParse(IOUtils.getResourceAsReader("wf-long.xml", -1),
new Configuration());
@@ -1500,9 +1368,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testMultipleErrorTransitions() throws WorkflowException, IOException {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class, LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
try {
parser.validateAndParse(IOUtils.getResourceAsReader(
"wf-multiple-error-parent.xml", -1), new Configuration());
@@ -1513,9 +1379,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testOkToTransitionToKillTransitions() throws WorkflowException, IOException {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class, LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
try {
parser.validateAndParse(IOUtils.getResourceAsReader(
@@ -1588,10 +1452,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
}
public void testDisableWFValidateForkJoin() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class,
- LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
// oozie level default, wf level default
try {
@@ -1660,9 +1521,7 @@ public class TestLiteWorkflowAppParser extends XTestCase {
// Test parameterization of retry-max and retry-interval
public void testParameterizationRetry() throws Exception {
- LiteWorkflowAppParser parser = new LiteWorkflowAppParser(null,
- LiteWorkflowStoreService.LiteControlNodeHandler.class,
- LiteWorkflowStoreService.LiteDecisionHandler.class, LiteWorkflowStoreService.LiteActionHandler.class);
+ LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
String wf = "<workflow-app xmlns=\"uri:oozie:workflow:0.5\" name=\"test\" > "
+ "<global> <job-tracker>localhost</job-tracker><name-node>localhost</name-node></global>"
@@ -1677,6 +1536,86 @@ public class TestLiteWorkflowAppParser extends XTestCase {
assertEquals(app.getNode("retry").getUserRetryInterval(), "10");
}
+ public void testWorkflowWithGlobalLevelResourceManager() throws Exception {
+ final LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
+
+ final String wf = "<workflow-app xmlns=\"uri:oozie:workflow:1.0\" name=\"test\" > " +
+ "<global>" +
+ " <resource-manager>localhost</resource-manager>" +
+ " <name-node>localhost</name-node>" +
+ "</global>" +
+ "<start to=\"test\"/>" +
+ "<action name=\"test\">" +
+ " <java>" +
+ " <main-class>com.retry</main-class>" +
+ " </java>" +
+ " <ok to=\"end\"/>" +
+ " <error to=\"end\"/>" +
+ "</action>" +
+ "<end name=\"end\"/>" +
+ "</workflow-app>";
+
+ final Configuration conf = new Configuration();
+ final LiteWorkflowApp app = parser.validateAndParse(new StringReader(wf), conf);
+ assertTrue(app.getNode("test").getConf().contains("resource-manager"));
+ }
+
+ public void testWorkflowWithActionLevelResourceManager() throws Exception {
+ final LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
+
+ final String wf = "<workflow-app xmlns=\"uri:oozie:workflow:1.0\" name=\"test\" > " +
+ "<start to=\"test\"/>" +
+ "<action name=\"test\">" +
+ " <java>" +
+ " <resource-manager>resourceManager</resource-manager>" +
+ " <name-node>localhost</name-node>" +
+ " <main-class>com.retry</main-class>" +
+ " </java>" +
+ " <ok to=\"end\"/>" +
+ " <error to=\"end\"/>" +
+ "</action>" +
+ "<end name=\"end\"/>" +
+ "</workflow-app>";
+
+ final Configuration conf = new Configuration();
+ final LiteWorkflowApp app = parser.validateAndParse(new StringReader(wf), conf);
+ assertTrue(app.getNode("test").getConf().contains("resource-manager"));
+ }
+
+ public void testWorkflowWithGlobalLevelResourceManagerAndActionLevelJobTracker() throws Exception {
+ final LiteWorkflowAppParser parser = newLiteWorkflowAppParser();
+
+ final String wf = "<workflow-app xmlns=\"uri:oozie:workflow:1.0\" name=\"test\" > " +
+ "<global>" +
+ " <resource-manager>jobtracker</resource-manager>" +
+ " <name-node>localhost</name-node>" +
+ "</global>" +
+ "<start to=\"test\"/>" +
+ "<action name=\"test\">" +
+ " <java>" +
+ " <job-tracker>localhost</job-tracker>" +
+ " <name-node>localhost</name-node>" +
+ " <main-class>com.retry</main-class>" +
+ " </java>" +
+ " <ok to=\"end\"/>" +
+ " <error to=\"end\"/>" +
+ "</action>" +
+ "<end name=\"end\"/>" +
+ "</workflow-app>";
+
+ final Configuration conf = new Configuration();
+ final LiteWorkflowApp app = parser.validateAndParse(new StringReader(wf), conf);
+ final XConfiguration actualActionConfig = extractConfig(app, "test");
+
+ assertTrue(app.getNode("test").getConf().contains("job-tracker"));
+ }
+
+ private LiteWorkflowAppParser newLiteWorkflowAppParser() throws WorkflowException {
+ return new LiteWorkflowAppParser(null,
+ LiteWorkflowStoreService.LiteControlNodeHandler.class,
+ LiteWorkflowStoreService.LiteDecisionHandler.class, LiteWorkflowStoreService.LiteActionHandler.class);
+ }
+
private XConfiguration extractConfig(LiteWorkflowApp app, String actionNode) throws Exception {
String confXML = app.getNode(actionNode).getConf();
Element confElement = XmlUtils.parseXml(confXML);
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/aggregator/coordinator-with-offset.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/aggregator/coordinator-with-offset.xml b/examples/src/main/apps/aggregator/coordinator-with-offset.xml
index 4c35167..710d0a9 100644
--- a/examples/src/main/apps/aggregator/coordinator-with-offset.xml
+++ b/examples/src/main/apps/aggregator/coordinator-with-offset.xml
@@ -51,8 +51,8 @@
<app-path>${nameNode}/user/${coord:user()}/${examplesRoot}/apps/aggregator</app-path>
<configuration>
<property>
- <name>jobTracker</name>
- <value>${jobTracker}</value>
+ <name>resourceManager</name>
+ <value>${resourceManager}</value>
</property>
<property>
<name>nameNode</name>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/aggregator/coordinator.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/aggregator/coordinator.xml b/examples/src/main/apps/aggregator/coordinator.xml
index 948edc1..7d48d91 100644
--- a/examples/src/main/apps/aggregator/coordinator.xml
+++ b/examples/src/main/apps/aggregator/coordinator.xml
@@ -48,8 +48,8 @@
<app-path>${nameNode}/user/${coord:user()}/${examplesRoot}/apps/aggregator</app-path>
<configuration>
<property>
- <name>jobTracker</name>
- <value>${jobTracker}</value>
+ <name>resourceManager</name>
+ <value>${resourceManager}</value>
</property>
<property>
<name>nameNode</name>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/aggregator/job-with-offset.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/aggregator/job-with-offset.properties b/examples/src/main/apps/aggregator/job-with-offset.properties
index 9a28ae1..ea4857d 100644
--- a/examples/src/main/apps/aggregator/job-with-offset.properties
+++ b/examples/src/main/apps/aggregator/job-with-offset.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8021
queueName=default
examplesRoot=examples
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/aggregator/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/aggregator/job.properties b/examples/src/main/apps/aggregator/job.properties
index aaf4edf..8589484 100644
--- a/examples/src/main/apps/aggregator/job.properties
+++ b/examples/src/main/apps/aggregator/job.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8032
queueName=default
examplesRoot=examples
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/aggregator/workflow.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/aggregator/workflow.xml b/examples/src/main/apps/aggregator/workflow.xml
index 4a80109..5de4a21 100644
--- a/examples/src/main/apps/aggregator/workflow.xml
+++ b/examples/src/main/apps/aggregator/workflow.xml
@@ -15,11 +15,11 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns="uri:oozie:workflow:0.2" name="aggregator-wf">
+<workflow-app xmlns="uri:oozie:workflow:1.0" name="aggregator-wf">
<start to="aggregator"/>
<action name="aggregator">
<map-reduce>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${outputData}"/>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/bundle/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/bundle/job.properties b/examples/src/main/apps/bundle/job.properties
index c06edeb..b5db5a7 100644
--- a/examples/src/main/apps/bundle/job.properties
+++ b/examples/src/main/apps/bundle/job.properties
@@ -18,7 +18,7 @@
oozie.bundle.application.path=${nameNode}/user/${user.name}/${examplesRoot}/apps/bundle
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8032
queueName=default
outputDir=bundle
examplesRoot=examples
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/coord-input-logic/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/coord-input-logic/job.properties b/examples/src/main/apps/coord-input-logic/job.properties
index 2cd137b..d62fbc8 100644
--- a/examples/src/main/apps/coord-input-logic/job.properties
+++ b/examples/src/main/apps/coord-input-logic/job.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:9000
-jobTracker=localhost:9001
+resourceManager=localhost:9001
queueName=default
examplesRoot=examples
oozie.coord.application.path=${nameNode}/user/${user.name}/${examplesRoot}/apps/coord-input-logic/coordinator.xml
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/coord-input-logic/workflow.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/coord-input-logic/workflow.xml b/examples/src/main/apps/coord-input-logic/workflow.xml
index 80d3145..b72b1ff 100644
--- a/examples/src/main/apps/coord-input-logic/workflow.xml
+++ b/examples/src/main/apps/coord-input-logic/workflow.xml
@@ -15,11 +15,11 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns="uri:oozie:workflow:0.2" name="coord-input-logic-wf">
+<workflow-app xmlns="uri:oozie:workflow:1.0" name="coord-input-logic-wf">
<start to="aggregator"/>
<action name="aggregator">
<map-reduce>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${outputData}"/>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/cron-schedule/coordinator.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/cron-schedule/coordinator.xml b/examples/src/main/apps/cron-schedule/coordinator.xml
index 48a7de7..4c4d5b4 100644
--- a/examples/src/main/apps/cron-schedule/coordinator.xml
+++ b/examples/src/main/apps/cron-schedule/coordinator.xml
@@ -22,8 +22,8 @@
<app-path>${workflowAppUri}</app-path>
<configuration>
<property>
- <name>jobTracker</name>
- <value>${jobTracker}</value>
+ <name>resourceManager</name>
+ <value>${resourceManager}</value>
</property>
<property>
<name>nameNode</name>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/cron-schedule/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/cron-schedule/job.properties b/examples/src/main/apps/cron-schedule/job.properties
index 5b5eb43..a2b8d13 100644
--- a/examples/src/main/apps/cron-schedule/job.properties
+++ b/examples/src/main/apps/cron-schedule/job.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8032
queueName=default
examplesRoot=examples
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/cron-schedule/workflow.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/cron-schedule/workflow.xml b/examples/src/main/apps/cron-schedule/workflow.xml
index b53922c..f7787d1 100644
--- a/examples/src/main/apps/cron-schedule/workflow.xml
+++ b/examples/src/main/apps/cron-schedule/workflow.xml
@@ -15,7 +15,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns="uri:oozie:workflow:0.2" name="no-op-wf">
+<workflow-app xmlns="uri:oozie:workflow:1.0" name="no-op-wf">
<start to="end"/>
<end name="end"/>
</workflow-app>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/cron/coordinator.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/cron/coordinator.xml b/examples/src/main/apps/cron/coordinator.xml
index 744d14e..3e3cdd0 100644
--- a/examples/src/main/apps/cron/coordinator.xml
+++ b/examples/src/main/apps/cron/coordinator.xml
@@ -22,8 +22,8 @@
<app-path>${workflowAppUri}</app-path>
<configuration>
<property>
- <name>jobTracker</name>
- <value>${jobTracker}</value>
+ <name>resourceManager</name>
+ <value>${resourceManager}</value>
</property>
<property>
<name>nameNode</name>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/cron/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/cron/job.properties b/examples/src/main/apps/cron/job.properties
index 42875fd..696818b 100644
--- a/examples/src/main/apps/cron/job.properties
+++ b/examples/src/main/apps/cron/job.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8032
queueName=default
examplesRoot=examples
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/cron/workflow.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/cron/workflow.xml b/examples/src/main/apps/cron/workflow.xml
index 63dff97..3730fef 100644
--- a/examples/src/main/apps/cron/workflow.xml
+++ b/examples/src/main/apps/cron/workflow.xml
@@ -15,7 +15,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns="uri:oozie:workflow:0.5" name="one-op-wf">
+<workflow-app xmlns="uri:oozie:workflow:1.0" name="one-op-wf">
<start to="action1"/>
<action name="action1">
<fs/>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/custom-main/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/custom-main/job.properties b/examples/src/main/apps/custom-main/job.properties
index b897512..75c647d 100644
--- a/examples/src/main/apps/custom-main/job.properties
+++ b/examples/src/main/apps/custom-main/job.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8032
queueName=default
examplesRoot=examples
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/custom-main/workflow.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/custom-main/workflow.xml b/examples/src/main/apps/custom-main/workflow.xml
index 828dfaa..0f67c7c 100644
--- a/examples/src/main/apps/custom-main/workflow.xml
+++ b/examples/src/main/apps/custom-main/workflow.xml
@@ -15,11 +15,11 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns="uri:oozie:workflow:0.2" name="custom-main-wf">
+<workflow-app xmlns="uri:oozie:workflow:1.0" name="custom-main-wf">
<start to="mr-node"/>
<action name="mr-node">
<map-reduce>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/custom-main/mr-node"/>
@@ -72,7 +72,7 @@
<action name="pig-node">
<pig>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/custom-main/pig-node"/>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/datelist-java-main/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/datelist-java-main/job.properties b/examples/src/main/apps/datelist-java-main/job.properties
index e8356e3..2bdf216 100644
--- a/examples/src/main/apps/datelist-java-main/job.properties
+++ b/examples/src/main/apps/datelist-java-main/job.properties
@@ -16,7 +16,7 @@
# limitations under the License.
#
-jobTracker=localhost:8021
+resourceManager=localhost:8032
nameNode=hdfs://localhost:8020
queueName=default
START=2009-02-01T01:00Z
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/datelist-java-main/workflow.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/datelist-java-main/workflow.xml b/examples/src/main/apps/datelist-java-main/workflow.xml
index b59a12e..d5eb528 100644
--- a/examples/src/main/apps/datelist-java-main/workflow.xml
+++ b/examples/src/main/apps/datelist-java-main/workflow.xml
@@ -15,11 +15,11 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns='uri:oozie:workflow:0.2' name='datelist-java-main-wf'>
+<workflow-app xmlns='uri:oozie:workflow:1.0' name='datelist-java-main-wf'>
<start to='java1' />
<action name='java1'>
<java>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<configuration>
<property>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/demo/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/demo/job.properties b/examples/src/main/apps/demo/job.properties
index d70d320..a590d28 100644
--- a/examples/src/main/apps/demo/job.properties
+++ b/examples/src/main/apps/demo/job.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8032
queueName=default
examplesRoot=examples
streamingMapper=/bin/cat
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/demo/job.windows.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/demo/job.windows.properties b/examples/src/main/apps/demo/job.windows.properties
index ea948b2..1b96bda 100644
--- a/examples/src/main/apps/demo/job.windows.properties
+++ b/examples/src/main/apps/demo/job.windows.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8021
queueName=default
examplesRoot=examples
streamingMapper=powershell -command "$input | Write-Host"
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/demo/workflow.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/demo/workflow.xml b/examples/src/main/apps/demo/workflow.xml
index 0ceca50..3fd9d1b 100644
--- a/examples/src/main/apps/demo/workflow.xml
+++ b/examples/src/main/apps/demo/workflow.xml
@@ -15,7 +15,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns="uri:oozie:workflow:0.2" name="demo-wf">
+<workflow-app xmlns="uri:oozie:workflow:1.0" name="demo-wf">
<start to="cleanup-node"/>
@@ -34,7 +34,7 @@
<action name="pig-node">
<pig>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/demo/pig-node"/>
@@ -59,7 +59,7 @@
<action name="streaming-node">
<map-reduce>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/demo/streaming-node"/>
@@ -93,7 +93,7 @@
<action name="mr-node">
<map-reduce>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/demo/mr-node"/>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/distcp/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/distcp/job.properties b/examples/src/main/apps/distcp/job.properties
index ec9422c..0bc6ded 100644
--- a/examples/src/main/apps/distcp/job.properties
+++ b/examples/src/main/apps/distcp/job.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8032
queueName=default
examplesRoot=examples
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/distcp/workflow.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/distcp/workflow.xml b/examples/src/main/apps/distcp/workflow.xml
index 6deecb3..d957e3b 100644
--- a/examples/src/main/apps/distcp/workflow.xml
+++ b/examples/src/main/apps/distcp/workflow.xml
@@ -15,11 +15,11 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns="uri:oozie:workflow:0.3" name="distcp-wf">
+<workflow-app xmlns="uri:oozie:workflow:1.0" name="distcp-wf">
<start to="distcp-node"/>
<action name="distcp-node">
- <distcp xmlns="uri:oozie:distcp-action:0.1">
- <job-tracker>${jobTracker}</job-tracker>
+ <distcp xmlns="uri:oozie:distcp-action:1.0">
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/${outputDir}"/>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/hadoop-el/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/hadoop-el/job.properties b/examples/src/main/apps/hadoop-el/job.properties
index 1d13c27..961ed6c 100644
--- a/examples/src/main/apps/hadoop-el/job.properties
+++ b/examples/src/main/apps/hadoop-el/job.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8032
queueName=default
examplesRoot=examples
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/hadoop-el/workflow.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/hadoop-el/workflow.xml b/examples/src/main/apps/hadoop-el/workflow.xml
index d4094d4..8852bfb 100644
--- a/examples/src/main/apps/hadoop-el/workflow.xml
+++ b/examples/src/main/apps/hadoop-el/workflow.xml
@@ -15,11 +15,11 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns="uri:oozie:workflow:0.2" name="hadoop-el-wf">
+<workflow-app xmlns="uri:oozie:workflow:1.0" name="hadoop-el-wf">
<start to="mr-node"/>
<action name="mr-node">
<map-reduce>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<prepare>
<delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/hadoop-el"/>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/hcatalog/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/hcatalog/job.properties b/examples/src/main/apps/hcatalog/job.properties
index e0aa18c..1ded953 100644
--- a/examples/src/main/apps/hcatalog/job.properties
+++ b/examples/src/main/apps/hcatalog/job.properties
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8032
queueName=default
examplesRoot=examples
oozie.use.system.libpath=true
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/hcatalog/job.properties.security
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/hcatalog/job.properties.security b/examples/src/main/apps/hcatalog/job.properties.security
index 2fbcc6e..d1c59c3 100644
--- a/examples/src/main/apps/hcatalog/job.properties.security
+++ b/examples/src/main/apps/hcatalog/job.properties.security
@@ -17,7 +17,7 @@
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8021
queueName=default
examplesRoot=examples
oozie.use.system.libpath=true
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/hcatalog/workflow.xml
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/hcatalog/workflow.xml b/examples/src/main/apps/hcatalog/workflow.xml
index d6593df..fa832f9 100644
--- a/examples/src/main/apps/hcatalog/workflow.xml
+++ b/examples/src/main/apps/hcatalog/workflow.xml
@@ -15,11 +15,11 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns="uri:oozie:workflow:0.5" name="pig-wf">
+<workflow-app xmlns="uri:oozie:workflow:1.0" name="pig-wf">
<start to="pig-node"/>
<action name="pig-node">
<pig>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<configuration>
<property>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/hcatalog/workflow.xml.security
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/hcatalog/workflow.xml.security b/examples/src/main/apps/hcatalog/workflow.xml.security
index aa3522a..d07bf92 100644
--- a/examples/src/main/apps/hcatalog/workflow.xml.security
+++ b/examples/src/main/apps/hcatalog/workflow.xml.security
@@ -15,7 +15,7 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<workflow-app xmlns="uri:oozie:workflow:0.5" name="pig-wf">
+<workflow-app xmlns="uri:oozie:workflow:1.0" name="pig-wf">
<credentials>
<credential name='hcatauth' type='hcat'>
<property>
@@ -31,7 +31,7 @@
<start to="pig-node"/>
<action name="pig-node" cred="hcatauth">
<pig>
- <job-tracker>${jobTracker}</job-tracker>
+ <resource-manager>${resourceManager}</resource-manager>
<name-node>${nameNode}</name-node>
<configuration>
<property>
http://git-wip-us.apache.org/repos/asf/oozie/blob/da8e5b51/examples/src/main/apps/hive/job.properties
----------------------------------------------------------------------
diff --git a/examples/src/main/apps/hive/job.properties b/examples/src/main/apps/hive/job.properties
index dbc7ad2..6b3194a 100644
--- a/examples/src/main/apps/hive/job.properties
+++ b/examples/src/main/apps/hive/job.properties
@@ -16,7 +16,7 @@
# limitations under the License.
#
nameNode=hdfs://localhost:8020
-jobTracker=localhost:8021
+resourceManager=localhost:8032
queueName=default
examplesRoot=examples