You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oozie.apache.org by vi...@apache.org on 2012/08/21 19:20:41 UTC
svn commit: r1375671 [2/2] - in /incubator/oozie/trunk: ./
client/src/main/java/org/apache/oozie/client/rest/ core/
core/src/main/java/org/apache/oozie/client/rest/
core/src/main/java/org/apache/oozie/servlet/
core/src/main/java/org/apache/oozie/util/ ...
Added: incubator/oozie/trunk/core/src/test/resources/invalidGraphWF.xml
URL: http://svn.apache.org/viewvc/incubator/oozie/trunk/core/src/test/resources/invalidGraphWF.xml?rev=1375671&view=auto
==============================================================================
--- incubator/oozie/trunk/core/src/test/resources/invalidGraphWF.xml (added)
+++ incubator/oozie/trunk/core/src/test/resources/invalidGraphWF.xml Tue Aug 21 17:20:40 2012
@@ -0,0 +1,490 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<workflow-app xmlns="uri:oozie:workflow:0.2" name="sm3-segment-3908-251483">
+ <start to="or_0_1"/>
+ <kill name="kill">
+ <message>killed message</message>
+ </kill>
+ <action name="or_0_1">
+ <pig>
+ <job-tracker>${jobTracker}</job-tracker>
+ <name-node>${nameNode}</name-node>
+ <prepare>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_0_1"/>
+ </prepare>
+ <configuration>
+ <property>
+ <name>mapreduce.reduce.input.limit</name>
+ <value>-1</value>
+ </property>
+ <property>
+ <name>mapred.job.queue.name</name>
+ <value>${queueName}</value>
+ </property>
+ <property>
+ <name>mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>mapred.map.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>mapred.reduce.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapred.child.java.opts</name>
+ <value>${OOZIE_LAUNCHER_MAPRED_CHILD_JAVA_OPTS}</value>
+ </property>
+ <property>
+ <name>SM3.DUMMYSID</name>
+ <value>FALSE</value>
+ </property>
+ </configuration>
+ <script>script/pig/sm3-segment-3908-251483-or_0_1.pig</script>
+ <param>REDUCERS=15</param>
+ <param>OUTPUT=/projects/sm3/root/request/251483/output/pig/or_0_1</param>
+ <param>INPUT1=/projects/sm3/root/segment/235/2/20120308_20120308</param>
+ <param>USERTYPE1=yuid</param>
+ <param>INPUT2=/projects/sm3/root/segment/236/2/20120308_20120308</param>
+ <param>USERTYPE2=yuid</param>
+ </pig>
+ <ok to="or_or_0_1_2"/>
+ <error to="kill"/>
+ </action>
+ <action name="or_or_0_1_2">
+ <pig>
+ <job-tracker>${jobTracker}</job-tracker>
+ <name-node>${nameNode}</name-node>
+ <prepare>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_2"/>
+ </prepare>
+ <configuration>
+ <property>
+ <name>mapreduce.reduce.input.limit</name>
+ <value>-1</value>
+ </property>
+ <property>
+ <name>mapred.job.queue.name</name>
+ <value>${queueName}</value>
+ </property>
+ <property>
+ <name>mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>mapred.map.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>mapred.reduce.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapred.child.java.opts</name>
+ <value>${OOZIE_LAUNCHER_MAPRED_CHILD_JAVA_OPTS}</value>
+ </property>
+ <property>
+ <name>SM3.DUMMYSID</name>
+ <value>FALSE</value>
+ </property>
+ </configuration>
+ <script>script/pig/sm3-segment-3908-251483-or_or_0_1_2.pig</script>
+ <param>REDUCERS=15</param>
+ <param>OUTPUT=/projects/sm3/root/request/251483/output/pig/or_or_0_1_2</param>
+ <param>INPUT1=/projects/sm3/root/request/251483/output/pig/or_0_1</param>
+ <param>USERTYPE1=yuid</param>
+ <param>INPUT2=/projects/sm3/root/segment/237/2/20120308_20120308</param>
+ <param>USERTYPE2=yuid</param>
+ </pig>
+ <ok to="or_or_0_1_3"/>
+ <error to="kill"/>
+ </action>
+ <action name="or_or_0_1_3">
+ <pig>
+ <job-tracker>${jobTracker}</job-tracker>
+ <name-node>${nameNode}</name-node>
+ <prepare>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_3"/>
+ </prepare>
+ <configuration>
+ <property>
+ <name>mapreduce.reduce.input.limit</name>
+ <value>-1</value>
+ </property>
+ <property>
+ <name>mapred.job.queue.name</name>
+ <value>${queueName}</value>
+ </property>
+ <property>
+ <name>mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>mapred.map.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>mapred.reduce.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapred.child.java.opts</name>
+ <value>${OOZIE_LAUNCHER_MAPRED_CHILD_JAVA_OPTS}</value>
+ </property>
+ <property>
+ <name>SM3.DUMMYSID</name>
+ <value>FALSE</value>
+ </property>
+ </configuration>
+ <script>script/pig/sm3-segment-3908-251483-or_or_0_1_3.pig</script>
+ <param>REDUCERS=15</param>
+ <param>OUTPUT=/projects/sm3/root/request/251483/output/pig/or_or_0_1_3</param>
+ <param>INPUT1=/projects/sm3/root/request/251483/output/pig/or_or_0_1_2</param>
+ <param>USERTYPE1=yuid</param>
+ <param>INPUT2=/projects/sm3/root/segment/238/2/20120308_20120308</param>
+ <param>USERTYPE2=yuid</param>
+ </pig>
+ <ok to="or_or_0_1_4"/>
+ <error to="kill"/>
+ </action>
+ <action name="or_or_0_1_4">
+ <pig>
+ <job-tracker>${jobTracker}</job-tracker>
+ <name-node>${nameNode}</name-node>
+ <prepare>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_4"/>
+ </prepare>
+ <configuration>
+ <property>
+ <name>mapreduce.reduce.input.limit</name>
+ <value>-1</value>
+ </property>
+ <property>
+ <name>mapred.job.queue.name</name>
+ <value>${queueName}</value>
+ </property>
+ <property>
+ <name>mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>mapred.map.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>mapred.reduce.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapred.child.java.opts</name>
+ <value>${OOZIE_LAUNCHER_MAPRED_CHILD_JAVA_OPTS}</value>
+ </property>
+ <property>
+ <name>SM3.DUMMYSID</name>
+ <value>FALSE</value>
+ </property>
+ </configuration>
+ <script>script/pig/sm3-segment-3908-251483-or_or_0_1_4.pig</script>
+ <param>REDUCERS=15</param>
+ <param>OUTPUT=/projects/sm3/root/request/251483/output/pig/or_or_0_1_4</param>
+ <param>INPUT1=/projects/sm3/root/request/251483/output/pig/or_or_0_1_3</param>
+ <param>USERTYPE1=yuid</param>
+ <param>INPUT2=/projects/sm3/root/segment/239/2/20120308_20120308</param>
+ <param>USERTYPE2=yuid</param>
+ </pig>
+ <ok to="or_or_0_1_5"/>
+ <error to="kill"/>
+ </action>
+ <action name="or_or_0_1_5">
+ <pig>
+ <job-tracker>${jobTracker}</job-tracker>
+ <name-node>${nameNode}</name-node>
+ <prepare>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_5"/>
+ </prepare>
+ <configuration>
+ <property>
+ <name>mapreduce.reduce.input.limit</name>
+ <value>-1</value>
+ </property>
+ <property>
+ <name>mapred.job.queue.name</name>
+ <value>${queueName}</value>
+ </property>
+ <property>
+ <name>mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>mapred.map.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>mapred.reduce.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapred.child.java.opts</name>
+ <value>${OOZIE_LAUNCHER_MAPRED_CHILD_JAVA_OPTS}</value>
+ </property>
+ <property>
+ <name>SM3.DUMMYSID</name>
+ <value>FALSE</value>
+ </property>
+ </configuration>
+ <script>script/pig/sm3-segment-3908-251483-or_or_0_1_5.pig</script>
+ <param>REDUCERS=15</param>
+ <param>OUTPUT=/projects/sm3/root/request/251483/output/pig/or_or_0_1_5</param>
+ <param>INPUT1=/projects/sm3/root/request/251483/output/pig/or_or_0_1_4</param>
+ <param>USERTYPE1=yuid</param>
+ <param>INPUT2=/projects/sm3/root/segment/240/2/20120308_20120308</param>
+ <param>USERTYPE2=yuid</param>
+ </pig>
+ <ok to="or_or_0_1_6_bad"/>
+ <error to="kill"/>
+ </action>
+ <action name="or_or_0_1_6">
+ <pig>
+ <job-tracker>${jobTracker}</job-tracker>
+ <name-node>${nameNode}</name-node>
+ <prepare>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_6"/>
+ </prepare>
+ <configuration>
+ <property>
+ <name>mapreduce.reduce.input.limit</name>
+ <value>-1</value>
+ </property>
+ <property>
+ <name>mapred.job.queue.name</name>
+ <value>${queueName}</value>
+ </property>
+ <property>
+ <name>mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>mapred.map.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>mapred.reduce.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapred.child.java.opts</name>
+ <value>${OOZIE_LAUNCHER_MAPRED_CHILD_JAVA_OPTS}</value>
+ </property>
+ <property>
+ <name>SM3.DUMMYSID</name>
+ <value>FALSE</value>
+ </property>
+ </configuration>
+ <script>script/pig/sm3-segment-3908-251483-or_or_0_1_6.pig</script>
+ <param>REDUCERS=15</param>
+ <param>OUTPUT=/projects/sm3/root/request/251483/output/pig/or_or_0_1_6</param>
+ <param>INPUT1=/projects/sm3/root/request/251483/output/pig/or_or_0_1_5</param>
+ <param>USERTYPE1=yuid</param>
+ <param>INPUT2=/projects/sm3/root/segment/241/2/20120308_20120308</param>
+ <param>USERTYPE2=yuid</param>
+ </pig>
+ <ok to="or_or_0_1_7"/>
+ <error to="kill"/>
+ </action>
+ <action name="or_or_0_1_7">
+ <pig>
+ <job-tracker>${jobTracker}</job-tracker>
+ <name-node>${nameNode}</name-node>
+ <prepare>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_7"/>
+ </prepare>
+ <configuration>
+ <property>
+ <name>mapreduce.reduce.input.limit</name>
+ <value>-1</value>
+ </property>
+ <property>
+ <name>mapred.job.queue.name</name>
+ <value>${queueName}</value>
+ </property>
+ <property>
+ <name>mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>mapred.map.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>mapred.reduce.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapred.child.java.opts</name>
+ <value>${OOZIE_LAUNCHER_MAPRED_CHILD_JAVA_OPTS}</value>
+ </property>
+ <property>
+ <name>SM3.DUMMYSID</name>
+ <value>FALSE</value>
+ </property>
+ </configuration>
+ <script>script/pig/sm3-segment-3908-251483-or_or_0_1_7.pig</script>
+ <param>REDUCERS=15</param>
+ <param>OUTPUT=/projects/sm3/root/request/251483/output/pig/or_or_0_1_7</param>
+ <param>INPUT1=/projects/sm3/root/request/251483/output/pig/or_or_0_1_6</param>
+ <param>USERTYPE1=yuid</param>
+ <param>INPUT2=/projects/sm3/root/segment/242/2/20120308_20120308</param>
+ <param>USERTYPE2=yuid</param>
+ </pig>
+ <ok to="or_or_0_1_8"/>
+ <error to="kill"/>
+ </action>
+ <action name="or_or_0_1_8">
+ <pig>
+ <job-tracker>${jobTracker}</job-tracker>
+ <name-node>${nameNode}</name-node>
+ <prepare>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_8"/>
+ </prepare>
+ <configuration>
+ <property>
+ <name>mapreduce.reduce.input.limit</name>
+ <value>-1</value>
+ </property>
+ <property>
+ <name>mapred.job.queue.name</name>
+ <value>${queueName}</value>
+ </property>
+ <property>
+ <name>mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>mapred.map.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>mapred.reduce.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapred.child.java.opts</name>
+ <value>${OOZIE_LAUNCHER_MAPRED_CHILD_JAVA_OPTS}</value>
+ </property>
+ <property>
+ <name>SM3.DUMMYSID</name>
+ <value>FALSE</value>
+ </property>
+ </configuration>
+ <script>script/pig/sm3-segment-3908-251483-or_or_0_1_8.pig</script>
+ <param>REDUCERS=15</param>
+ <param>OUTPUT=/projects/sm3/root/request/251483/output/pig/or_or_0_1_8</param>
+ <param>INPUT1=/projects/sm3/root/request/251483/output/pig/or_or_0_1_7</param>
+ <param>USERTYPE1=yuid</param>
+ <param>INPUT2=/projects/sm3/root/segment/243/2/20120308_20120308</param>
+ <param>USERTYPE2=yuid</param>
+ </pig>
+ <ok to="or_or_0_1_9"/>
+ <error to="kill"/>
+ </action>
+ <action name="or_or_0_1_9">
+ <pig>
+ <job-tracker>${jobTracker}</job-tracker>
+ <name-node>${nameNode}</name-node>
+ <prepare>
+ <delete path="${nameNode}/projects/sm3/root/segment/3908/8/20120308_20120308"/>
+ </prepare>
+ <configuration>
+ <property>
+ <name>mapreduce.reduce.input.limit</name>
+ <value>-1</value>
+ </property>
+ <property>
+ <name>mapred.job.queue.name</name>
+ <value>${queueName}</value>
+ </property>
+ <property>
+ <name>mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapreduce.job.acl-view-job</name>
+ <value>${SM_H20S_VIEWJOB}</value>
+ </property>
+ <property>
+ <name>mapred.map.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>mapred.reduce.tasks.speculative.execution</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>oozie.launcher.mapred.child.java.opts</name>
+ <value>${OOZIE_LAUNCHER_MAPRED_CHILD_JAVA_OPTS}</value>
+ </property>
+ <property>
+ <name>SM3.DUMMYSID</name>
+ <value>FALSE</value>
+ </property>
+ </configuration>
+ <script>script/pig/sm3-segment-3908-251483-or_or_0_1_9.pig</script>
+ <param>REDUCERS=15</param>
+ <param>OUTPUT=/projects/sm3/root/segment/3908/8/20120308_20120308</param>
+ <param>INPUT1=/projects/sm3/root/request/251483/output/pig/or_or_0_1_8</param>
+ <param>USERTYPE1=yuid</param>
+ <param>INPUT2=/projects/sm3/root/segment/244/2/20120308_20120308</param>
+ <param>USERTYPE2=yuid</param>
+ </pig>
+ <ok to="cleanup"/>
+ <error to="kill"/>
+ </action>
+ <action name="cleanup">
+ <fs>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_0_1"/>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_2"/>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_3"/>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_4"/>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_5"/>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_6"/>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_7"/>
+ <delete path="${nameNode}/projects/sm3/root/request/251483/output/pig/or_or_0_1_8"/>
+ </fs>
+ <ok to="end"/>
+ <error to="kill"/>
+ </action>
+ <end name="end"/>
+</workflow-app>
\ No newline at end of file
Modified: incubator/oozie/trunk/docs/src/site/twiki/WebServicesAPI.twiki
URL: http://svn.apache.org/viewvc/incubator/oozie/trunk/docs/src/site/twiki/WebServicesAPI.twiki?rev=1375671&r1=1375670&r2=1375671&view=diff
==============================================================================
--- incubator/oozie/trunk/docs/src/site/twiki/WebServicesAPI.twiki (original)
+++ incubator/oozie/trunk/docs/src/site/twiki/WebServicesAPI.twiki Tue Aug 21 17:20:40 2012
@@ -649,7 +649,7 @@ Content-Type: application/xml;charset=UT
---++++ Job Log
-A HTTP GET request retrieves the job log.
+An HTTP GET request retrieves the job log.
*Request:*
@@ -669,6 +669,37 @@ Content-Type: text/plain;charset=UTF-8
...
</verbatim>
+---++++ Job graph
+
+An =HTTP GET= request returns the image of the workflow DAG (rendered as a PNG image).
+ * The nodes that are being executed are painted yellow
+ * The nodes that have successfully executed are painted green
+ * The nodes that have failed execution are painted red
+ * The nodes that are yet to be executed are pained gray
+ * An arc painted green marks the successful path taken so far
+ * An arc painted red marks the failure of the node and highlights the _error_ action
+ * An arc painted gray marks a path not taken yet
+
+*Request:*
+<verbatim>
+GET /oozie/v1/job/job-3?show=graph[&show-kill=true]
+</verbatim>
+
+*Response:*
+<verbatim>
+HTTP/1.1 200 OK
+Content-Type: image/png
+Content-Length: {image_size_in_bytes}
+
+{image_bits}
+</verbatim>
+
+The optional =show-kill= parameter shows =kill= node in the graph. Valid values for this parameter are =1=, =yes=, and =true=. This parameter has no effect when workflow fails and the failure node leads to the =kill= node; in that case =kill= node is shown always.
+
+The node labels are the node names provided in the workflow XML.
+
+This API returns =HTTP 400= when run on a resource other than a workflow, viz. bundle and coordinator.
+
---++++ Jobs Information
A HTTP GET request retrieves workflow and coordinator jobs information.
Modified: incubator/oozie/trunk/release-log.txt
URL: http://svn.apache.org/viewvc/incubator/oozie/trunk/release-log.txt?rev=1375671&r1=1375670&r2=1375671&view=diff
==============================================================================
--- incubator/oozie/trunk/release-log.txt (original)
+++ incubator/oozie/trunk/release-log.txt Tue Aug 21 17:20:40 2012
@@ -1,5 +1,6 @@
-- Oozie 3.3.0 release (trunk - unreleased)
+OOZIE-906 Show runtime job DAG visually in Oozie console/dashboard (vaidya via virag)
OOZIE-958 typo in error message of E0736 (egashira via virag)
OOZIE-923 Improve error message when a user tries to start a coordinator job (sms via virag)
OOZIE-947 Forward porting OOZIE-733 to 3.2 and trunk (mona via virag)