You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oozie.apache.org by bu...@apache.org on 2019/12/06 09:10:50 UTC

svn commit: r1053698 [11/17] - in /websites/staging/oozie/trunk/content: ./ docs/5.2.0/ docs/5.2.0/css/ docs/5.2.0/fonts/ docs/5.2.0/images/ docs/5.2.0/images/logos/ docs/5.2.0/images/profiles/ docs/5.2.0/img/ docs/5.2.0/js/

Added: websites/staging/oozie/trunk/content/docs/5.2.0/DG_SparkActionExtension.html
==============================================================================
--- websites/staging/oozie/trunk/content/docs/5.2.0/DG_SparkActionExtension.html (added)
+++ websites/staging/oozie/trunk/content/docs/5.2.0/DG_SparkActionExtension.html Fri Dec  6 09:10:49 2019
@@ -0,0 +1,527 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2019-12-05 
+ | Rendered using Apache Maven Fluido Skin 1.4
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="Date-Revision-yyyymmdd" content="20191205" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Oozie &#x2013; </title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.4.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+
+      
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.4.min.js"></script>
+
+    
+                  </head>
+        <body class="topBarDisabled">
+          
+        
+    
+        <div class="container-fluid">
+          <div id="banner">
+        <div class="pull-left">
+                                    <a href="https://oozie.apache.org/" id="bannerLeft">
+                                                                                        <img src="https://oozie.apache.org/images/oozie_200x.png"  alt="Oozie"/>
+                </a>
+                      </div>
+        <div class="pull-right">  </div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+                
+                    
+                              <li class="">
+                    <a href="http://www.apache.org/" class="externalLink" title="Apache">
+        Apache</a>
+                    <span class="divider">/</span>
+      </li>
+            <li class="">
+                    <a href="../../" title="Oozie">
+        Oozie</a>
+                    <span class="divider">/</span>
+      </li>
+            <li class="">
+                    <a href="../" title="docs">
+        docs</a>
+                    <span class="divider">/</span>
+      </li>
+                <li class="">
+                    <a href="./" title="5.2.0">
+        5.2.0</a>
+                    <span class="divider">/</span>
+      </li>
+        <li class="active "></li>
+        
+                
+                    
+                  <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 2019-12-05</li>
+              <li id="projectVersion" class="pull-right">
+                    Version: 5.2.0
+        </li>
+            
+                            </ul>
+      </div>
+
+            
+      <div class="row-fluid">
+        <div id="leftColumn" class="span2">
+          <div class="well sidebar-nav">
+                
+                    
+                <ul class="nav nav-list">
+  </ul>
+                
+                    
+                
+          <hr />
+
+           <div id="poweredBy">
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+      </a>
+                  </div>
+          </div>
+        </div>
+        
+                
+        <div id="bodyColumn"  class="span10" >
+                                  
+            <p><a href="index.html">::Go back to Oozie Documentation Index::</a></p><hr />
+<h1>Oozie Spark Action Extension</h1>
+<ul>
+<li><a href="#Spark_Action">Spark Action</a>
+<ul>
+<li><a href="#Spark_Action_Logging">Spark Action Logging</a></li>
+<li><a href="#Spark_on_YARN">Spark on YARN</a></li>
+<li><a href="#PySpark_with_Spark_Action">PySpark with Spark Action</a></li>
+<li><a href="#Using_Symlink_in_jar">Using Symlink in &lt;jar&gt;</a></li></ul></li>
+<li><a href="#Appendix_Spark_XML-Schema">Appendix, Spark XML-Schema</a>
+<ul>
+<li><a href="#AE.A_Appendix_A_Spark_XML-Schema">AE.A Appendix A, Spark XML-Schema</a>
+<ul>
+<li><a href="#Spark_Action_Schema_Version_1.0">Spark Action Schema Version 1.0</a></li>
+<li><a href="#Spark_Action_Schema_Version_0.2">Spark Action Schema Version 0.2</a></li>
+<li><a href="#Spark_Action_Schema_Version_0.1">Spark Action Schema Version 0.1</a></li></ul></li></ul></li></ul>
+
+<div class="section">
+<h2><a name="Spark_Action"></a>Spark Action</h2>
+<p>The <tt>spark</tt> action runs a Spark job.</p>
+<p>The workflow job will wait until the Spark job completes before continuing to the next action.</p>
+<p>To run the Spark job, you have to configure the <tt>spark</tt> action with the <tt>resource-manager</tt>, <tt>name-node</tt>, Spark <tt>master</tt> elements as well as the necessary elements, arguments and configuration.</p>
+<p>Spark options can be specified in an element called <tt>spark-opts</tt>.</p>
+<p>A <tt>spark</tt> action can be configured to create or delete HDFS directories before starting the Spark job.</p>
+<p>Oozie EL expressions can be used in the inline configuration. Property values specified in the <tt>configuration</tt> element override values specified in the <tt>job-xml</tt> file.</p>
+<p><b>Syntax:</b></p>
+
+<div>
+<div>
+<pre class="source">&lt;workflow-app name=&quot;[WF-DEF-NAME]&quot; xmlns=&quot;uri:oozie:workflow:1.0&quot;&gt;
+    ...
+    &lt;action name=&quot;[NODE-NAME]&quot;&gt;
+        &lt;spark xmlns=&quot;uri:oozie:spark-action:1.0&quot;&gt;
+            &lt;resource-manager&gt;[RESOURCE-MANAGER]&lt;/resource-manager&gt;
+            &lt;name-node&gt;[NAME-NODE]&lt;/name-node&gt;
+            &lt;prepare&gt;
+               &lt;delete path=&quot;[PATH]&quot;/&gt;
+               ...
+               &lt;mkdir path=&quot;[PATH]&quot;/&gt;
+               ...
+            &lt;/prepare&gt;
+            &lt;job-xml&gt;[SPARK SETTINGS FILE]&lt;/job-xml&gt;
+            &lt;configuration&gt;
+                &lt;property&gt;
+                    &lt;name&gt;[PROPERTY-NAME]&lt;/name&gt;
+                    &lt;value&gt;[PROPERTY-VALUE]&lt;/value&gt;
+                &lt;/property&gt;
+                ...
+            &lt;/configuration&gt;
+            &lt;master&gt;[SPARK MASTER URL]&lt;/master&gt;
+            &lt;mode&gt;[SPARK MODE]&lt;/mode&gt;
+            &lt;name&gt;[SPARK JOB NAME]&lt;/name&gt;
+            &lt;class&gt;[SPARK MAIN CLASS]&lt;/class&gt;
+            &lt;jar&gt;[SPARK DEPENDENCIES JAR / PYTHON FILE]&lt;/jar&gt;
+            &lt;spark-opts&gt;[SPARK-OPTIONS]&lt;/spark-opts&gt;
+            &lt;arg&gt;[ARG-VALUE]&lt;/arg&gt;
+                ...
+            &lt;arg&gt;[ARG-VALUE]&lt;/arg&gt;
+            ...
+        &lt;/spark&gt;
+        &lt;ok to=&quot;[NODE-NAME]&quot;/&gt;
+        &lt;error to=&quot;[NODE-NAME]&quot;/&gt;
+    &lt;/action&gt;
+    ...
+&lt;/workflow-app&gt;
+</pre></div></div>
+
+<p>The <tt>prepare</tt> element, if present, indicates a list of paths to delete or create before starting the job. Specified paths must start with <tt>hdfs://HOST:PORT</tt>.</p>
+<p>The <tt>job-xml</tt> element, if present, specifies a file containing configuration for the Spark job. Multiple <tt>job-xml</tt> elements are allowed in order to specify multiple <tt>job.xml</tt> files.</p>
+<p>The <tt>configuration</tt> element, if present, contains configuration properties that are passed to the Spark job.</p>
+<p>The <tt>master</tt> element indicates the url of the Spark Master. Ex: <tt>spark://host:port</tt>, <tt>mesos://host:port</tt>, yarn-cluster, yarn-client, or local.</p>
+<p>The <tt>mode</tt> element if present indicates the mode of spark, where to run spark driver program. Ex: client,cluster.  This is typically not required because you can specify it as part of <tt>master</tt> (i.e. master<tt>yarn, mode</tt>client is equivalent to master=yarn-client). A local <tt>master</tt> always runs in client mode.</p>
+<p>Depending on the <tt>master</tt> (and <tt>mode</tt>) entered, the Spark job will run differently as follows:</p>
+<ul>
+
+<li>local mode: everything runs here in the Launcher Job.</li>
+<li>yarn-client mode: the driver runs here in the Launcher Job and the executor in Yarn.</li>
+<li>yarn-cluster mode: the driver and executor run in Yarn.</li>
+</ul>
+<p>The <tt>name</tt> element indicates the name of the spark application.</p>
+<p>The <tt>class</tt> element if present, indicates the spark&#x2019;s application main class.</p>
+<p>The <tt>jar</tt> element indicates a comma separated list of jars or python files.</p>
+<p>The <tt>spark-opts</tt> element, if present, contains a list of Spark options that can be passed to Spark. Spark configuration options can be passed by specifying &#x2018;&#x2013;conf key=value&#x2019; or other Spark CLI options. Values containing whitespaces can be enclosed by double quotes.</p>
+<p>Some examples of the <tt>spark-opts</tt> element:</p>
+<ul>
+
+<li>&#x2018;&#x2013;conf key=value&#x2019;</li>
+<li>&#x2018;&#x2013;conf key1=value1 value2&#x2019;</li>
+<li>&#x2018;&#x2013;conf key1=&#x201c;value1 value2&#x201d;&#x2019;</li>
+<li>&#x2018;&#x2013;conf key1=value1 key2=&#x201c;value2 value3&#x201d;&#x2019;</li>
+<li>&#x2018;&#x2013;conf key=value &#x2013;verbose &#x2013;properties-file user.properties&#x2019;</li>
+</ul>
+<p>There are several ways to define properties that will be passed to Spark. They are processed in the following order:</p>
+<ul>
+
+<li>propagated from <tt>oozie.service.SparkConfigurationService.spark.configurations</tt></li>
+<li>read from a localized <tt>spark-defaults.conf</tt> file</li>
+<li>read from a file defined in <tt>spark-opts</tt> via the <tt>--properties-file</tt></li>
+<li>properties defined in <tt>spark-opts</tt> element</li>
+</ul>
+<p>(The latter takes precedence over the former.) The server propagated properties, the <tt>spark-defaults.conf</tt> and the user-defined properties file are merged together into a single properties file as Spark handles only one file in its <tt>--properties-file</tt> option.</p>
+<p>The <tt>arg</tt> element if present, contains arguments that can be passed to spark application.</p>
+<p>In case some property values are present both in <tt>spark-defaults.conf</tt> and as property key/value pairs generated by Oozie, the user configured values from <tt>spark-defaults.conf</tt> are prepended to the ones generated by Oozie, as part of the Spark arguments list.</p>
+<p>Following properties to prepend to Spark arguments:</p>
+<ul>
+
+<li><tt>spark.executor.extraClassPath</tt></li>
+<li><tt>spark.driver.extraClassPath</tt></li>
+<li><tt>spark.executor.extraJavaOptions</tt></li>
+<li><tt>spark.driver.extraJavaOptions</tt></li>
+</ul>
+<p>All the above elements can be parameterized (templatized) using EL expressions.</p>
+<p><b>Example:</b></p>
+
+<div>
+<div>
+<pre class="source">&lt;workflow-app name=&quot;sample-wf&quot; xmlns=&quot;uri:oozie:workflow:1.0&quot;&gt;
+    ...
+    &lt;action name=&quot;myfirstsparkjob&quot;&gt;
+        &lt;spark xmlns=&quot;uri:oozie:spark-action:1.0&quot;&gt;
+            &lt;resource-manager&gt;foo:8032&lt;/resource-manager&gt;
+            &lt;name-node&gt;bar:8020&lt;/name-node&gt;
+            &lt;prepare&gt;
+                &lt;delete path=&quot;${jobOutput}&quot;/&gt;
+            &lt;/prepare&gt;
+            &lt;configuration&gt;
+                &lt;property&gt;
+                    &lt;name&gt;mapred.compress.map.output&lt;/name&gt;
+                    &lt;value&gt;true&lt;/value&gt;
+                &lt;/property&gt;
+            &lt;/configuration&gt;
+            &lt;master&gt;local[*]&lt;/master&gt;
+            &lt;mode&gt;client&lt;/mode&gt;
+            &lt;name&gt;Spark Example&lt;/name&gt;
+            &lt;class&gt;org.apache.spark.examples.mllib.JavaALS&lt;/class&gt;
+            &lt;jar&gt;/lib/spark-examples_2.10-1.1.0.jar&lt;/jar&gt;
+            &lt;spark-opts&gt;--executor-memory 20G --num-executors 50
+             --conf spark.executor.extraJavaOptions=&quot;-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp&quot;&lt;/spark-opts&gt;
+            &lt;arg&gt;inputpath=hdfs://localhost/input/file.txt&lt;/arg&gt;
+            &lt;arg&gt;value=2&lt;/arg&gt;
+        &lt;/spark&gt;
+        &lt;ok to=&quot;myotherjob&quot;/&gt;
+        &lt;error to=&quot;errorcleanup&quot;/&gt;
+    &lt;/action&gt;
+    ...
+&lt;/workflow-app&gt;
+</pre></div></div>
+
+<div class="section">
+<h3><a name="Spark_Action_Logging"></a>Spark Action Logging</h3>
+<p>Spark action logs are redirected to the Oozie Launcher map-reduce job task STDOUT/STDERR that runs Spark.</p>
+<p>From Oozie web-console, from the Spark action pop up using the &#x2018;Console URL&#x2019; link, it is possible to navigate to the Oozie Launcher map-reduce job task logs via the Hadoop job-tracker web-console.</p></div>
+<div class="section">
+<h3><a name="Spark_on_YARN"></a>Spark on YARN</h3>
+<p>To ensure that your Spark job shows up in the Spark History Server, make sure to specify these three Spark configuration properties either in <tt>spark-opts</tt> with <tt>--conf</tt> or from <tt>oozie.service.SparkConfigurationService.spark.configurations</tt> in oozie-site.xml.</p>
+<ol style="list-style-type: decimal">
+
+<li>
+
+<p>spark.yarn.historyServer.address=SPH-HOST:18088</p>
+</li>
+<li>
+
+<p>spark.eventLog.dir=<tt>hdfs://NN:8020/user/spark/applicationHistory</tt></p>
+</li>
+<li>
+
+<p>spark.eventLog.enabled=true</p>
+</li>
+</ol></div>
+<div class="section">
+<h3><a name="PySpark_with_Spark_Action"></a>PySpark with Spark Action</h3>
+<p>To submit PySpark scripts with Spark Action, pyspark dependencies must be available in sharelib or in workflow&#x2019;s lib/ directory. For more information, please refer to <a href="AG_Install.html#Oozie_Share_Lib">installation document.</a></p>
+<p><b>Example:</b></p>
+
+<div>
+<div>
+<pre class="source">&lt;workflow-app name=&quot;sample-wf&quot; xmlns=&quot;uri:oozie:workflow:1.0&quot;&gt;
+    ....
+    &lt;action name=&quot;myfirstpysparkjob&quot;&gt;
+        &lt;spark xmlns=&quot;uri:oozie:spark-action:1.0&quot;&gt;
+            &lt;resource-manager&gt;foo:8032&lt;/resource-manager&gt;
+            &lt;name-node&gt;bar:8020&lt;/name-node&gt;
+            &lt;prepare&gt;
+                &lt;delete path=&quot;${jobOutput}&quot;/&gt;
+            &lt;/prepare&gt;
+            &lt;configuration&gt;
+                &lt;property&gt;
+                    &lt;name&gt;mapred.compress.map.output&lt;/name&gt;
+                    &lt;value&gt;true&lt;/value&gt;
+                &lt;/property&gt;
+            &lt;/configuration&gt;
+            &lt;master&gt;yarn-cluster&lt;/master&gt;
+            &lt;name&gt;Spark Example&lt;/name&gt;
+            &lt;jar&gt;pi.py&lt;/jar&gt;
+            &lt;spark-opts&gt;--executor-memory 20G --num-executors 50
+            --conf spark.executor.extraJavaOptions=&quot;-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp&quot;&lt;/spark-opts&gt;
+            &lt;arg&gt;100&lt;/arg&gt;
+        &lt;/spark&gt;
+        &lt;ok to=&quot;myotherjob&quot;/&gt;
+        &lt;error to=&quot;errorcleanup&quot;/&gt;
+    &lt;/action&gt;
+    ...
+&lt;/workflow-app&gt;
+</pre></div></div>
+
+<p>The <tt>jar</tt> element indicates python file. Refer to the file by it&#x2019;s localized name, because only local files are allowed in PySpark. The py file should be in the lib/ folder next to the workflow.xml or added using the <tt>file</tt> element so that it&#x2019;s localized to the working directory with just its name.</p></div>
+<div class="section">
+<h3><a name="Using_Symlink_in_jar"></a>Using Symlink in &lt;jar&gt;</h3>
+<p>A symlink must be specified using <a href="WorkflowFunctionalSpec.html#a3.2.2.1_Adding_Files_and_Archives_for_the_Job">file</a> element. Then, you can use the symlink name in <tt>jar</tt> element.</p>
+<p><b>Example:</b></p>
+<p>Specifying relative path for symlink:</p>
+<p>Make sure that the file is within the application directory i.e. <tt>oozie.wf.application.path</tt> .</p>
+
+<div>
+<div>
+<pre class="source">        &lt;spark xmlns=&quot;uri:oozie:spark-action:1.0&quot;&gt;
+        ...
+            &lt;jar&gt;py-spark-example-symlink.py&lt;/jar&gt;
+            ...
+            ...
+            &lt;file&gt;py-spark.py#py-spark-example-symlink.py&lt;/file&gt;
+        ...
+        &lt;/spark&gt;
+</pre></div></div>
+
+<p>Specifying full path for symlink:</p>
+
+<div>
+<div>
+<pre class="source">        &lt;spark xmlns=&quot;uri:oozie:spark-action:1.0&quot;&gt;
+        ...
+            &lt;jar&gt;spark-example-symlink.jar&lt;/jar&gt;
+            ...
+            ...
+            &lt;file&gt;hdfs://localhost:8020/user/testjars/all-oozie-examples.jar#spark-example-symlink.jar&lt;/file&gt;
+        ...
+        &lt;/spark&gt;
+</pre></div></div>
+</div></div>
+<div class="section">
+<h2><a name="Appendix_Spark_XML-Schema"></a>Appendix, Spark XML-Schema</h2>
+<div class="section">
+<h3><a name="AE.A_Appendix_A_Spark_XML-Schema"></a>AE.A Appendix A, Spark XML-Schema</h3>
+<div class="section">
+<h4><a name="Spark_Action_Schema_Version_1.0"></a>Spark Action Schema Version 1.0</h4>
+
+<div>
+<div>
+<pre class="source">&lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
+           xmlns:spark=&quot;uri:oozie:spark-action:1.0&quot; elementFormDefault=&quot;qualified&quot;
+           targetNamespace=&quot;uri:oozie:spark-action:1.0&quot;&gt;
+.
+    &lt;xs:include schemaLocation=&quot;oozie-common-1.0.xsd&quot;/&gt;
+.
+    &lt;xs:element name=&quot;spark&quot; type=&quot;spark:ACTION&quot;/&gt;
+.
+    &lt;xs:complexType name=&quot;ACTION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:choice&gt;
+                &lt;xs:element name=&quot;job-tracker&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+                &lt;xs:element name=&quot;resource-manager&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;/xs:choice&gt;
+            &lt;xs:element name=&quot;name-node&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;prepare&quot; type=&quot;spark:PREPARE&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;launcher&quot; type=&quot;spark:LAUNCHER&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;job-xml&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;configuration&quot; type=&quot;spark:CONFIGURATION&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;master&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;mode&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;name&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;class&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;jar&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;spark-opts&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;arg&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;file&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;archive&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+.
+&lt;/xs:schema&gt;
+</pre></div></div>
+</div>
+<div class="section">
+<h4><a name="Spark_Action_Schema_Version_0.2"></a>Spark Action Schema Version 0.2</h4>
+
+<div>
+<div>
+<pre class="source">&lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
+           xmlns:spark=&quot;uri:oozie:spark-action:0.2&quot; elementFormDefault=&quot;qualified&quot;
+           targetNamespace=&quot;uri:oozie:spark-action:0.2&quot;&gt;
+
+    &lt;xs:element name=&quot;spark&quot; type=&quot;spark:ACTION&quot;/&gt;
+
+    &lt;xs:complexType name=&quot;ACTION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;job-tracker&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;name-node&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;prepare&quot; type=&quot;spark:PREPARE&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;job-xml&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;configuration&quot; type=&quot;spark:CONFIGURATION&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;master&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;mode&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;name&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;class&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;jar&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;spark-opts&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;arg&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;file&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;archive&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;CONFIGURATION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;property&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;unbounded&quot;&gt;
+                &lt;xs:complexType&gt;
+                    &lt;xs:sequence&gt;
+                        &lt;xs:element name=&quot;name&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                        &lt;xs:element name=&quot;value&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                        &lt;xs:element name=&quot;description&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                    &lt;/xs:sequence&gt;
+                &lt;/xs:complexType&gt;
+            &lt;/xs:element&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;PREPARE&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;delete&quot; type=&quot;spark:DELETE&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;mkdir&quot; type=&quot;spark:MKDIR&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;DELETE&quot;&gt;
+        &lt;xs:attribute name=&quot;path&quot; type=&quot;xs:string&quot; use=&quot;required&quot;/&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;MKDIR&quot;&gt;
+        &lt;xs:attribute name=&quot;path&quot; type=&quot;xs:string&quot; use=&quot;required&quot;/&gt;
+    &lt;/xs:complexType&gt;
+
+&lt;/xs:schema&gt;
+</pre></div></div>
+</div>
+<div class="section">
+<h4><a name="Spark_Action_Schema_Version_0.1"></a>Spark Action Schema Version 0.1</h4>
+
+<div>
+<div>
+<pre class="source">&lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
+           xmlns:spark=&quot;uri:oozie:spark-action:0.1&quot; elementFormDefault=&quot;qualified&quot;
+           targetNamespace=&quot;uri:oozie:spark-action:0.1&quot;&gt;
+
+    &lt;xs:element name=&quot;spark&quot; type=&quot;spark:ACTION&quot;/&gt;
+
+    &lt;xs:complexType name=&quot;ACTION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;job-tracker&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;name-node&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;prepare&quot; type=&quot;spark:PREPARE&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;job-xml&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;configuration&quot; type=&quot;spark:CONFIGURATION&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;master&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;mode&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;name&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;class&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;jar&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;spark-opts&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;arg&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;CONFIGURATION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;property&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;unbounded&quot;&gt;
+                &lt;xs:complexType&gt;
+                    &lt;xs:sequence&gt;
+                        &lt;xs:element name=&quot;name&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                        &lt;xs:element name=&quot;value&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                        &lt;xs:element name=&quot;description&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                    &lt;/xs:sequence&gt;
+                &lt;/xs:complexType&gt;
+            &lt;/xs:element&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;PREPARE&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;delete&quot; type=&quot;spark:DELETE&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;mkdir&quot; type=&quot;spark:MKDIR&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;DELETE&quot;&gt;
+        &lt;xs:attribute name=&quot;path&quot; type=&quot;xs:string&quot; use=&quot;required&quot;/&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;MKDIR&quot;&gt;
+        &lt;xs:attribute name=&quot;path&quot; type=&quot;xs:string&quot; use=&quot;required&quot;/&gt;
+    &lt;/xs:complexType&gt;
+
+&lt;/xs:schema&gt;
+</pre></div></div>
+
+<p><a href="index.html">::Go back to Oozie Documentation Index::</a></p></div></div></div>
+                  </div>
+            </div>
+          </div>
+
+    <hr/>
+
+    <footer>
+            <div class="container-fluid">
+                      <div class="row-fluid">
+                                      <p >Copyright &copy;                    2019
+                        <a href="https://www.apache.org">Apache Software Foundation</a>.
+            All rights reserved.      
+                    
+      </p>
+                </div>
+
+        
+                </div>
+    </footer>
+        </body>
+</html>

Added: websites/staging/oozie/trunk/content/docs/5.2.0/DG_SqoopActionExtension.html
==============================================================================
--- websites/staging/oozie/trunk/content/docs/5.2.0/DG_SqoopActionExtension.html (added)
+++ websites/staging/oozie/trunk/content/docs/5.2.0/DG_SqoopActionExtension.html Fri Dec  6 09:10:49 2019
@@ -0,0 +1,432 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2019-12-05 
+ | Rendered using Apache Maven Fluido Skin 1.4
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="Date-Revision-yyyymmdd" content="20191205" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Oozie &#x2013; </title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.4.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+
+      
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.4.min.js"></script>
+
+    
+                  </head>
+        <body class="topBarDisabled">
+          
+        
+    
+        <div class="container-fluid">
+          <div id="banner">
+        <div class="pull-left">
+                                    <a href="https://oozie.apache.org/" id="bannerLeft">
+                                                                                        <img src="https://oozie.apache.org/images/oozie_200x.png"  alt="Oozie"/>
+                </a>
+                      </div>
+        <div class="pull-right">  </div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+                
+                    
+                              <li class="">
+                    <a href="http://www.apache.org/" class="externalLink" title="Apache">
+        Apache</a>
+                    <span class="divider">/</span>
+      </li>
+            <li class="">
+                    <a href="../../" title="Oozie">
+        Oozie</a>
+                    <span class="divider">/</span>
+      </li>
+            <li class="">
+                    <a href="../" title="docs">
+        docs</a>
+                    <span class="divider">/</span>
+      </li>
+                <li class="">
+                    <a href="./" title="5.2.0">
+        5.2.0</a>
+                    <span class="divider">/</span>
+      </li>
+        <li class="active "></li>
+        
+                
+                    
+                  <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 2019-12-05</li>
+              <li id="projectVersion" class="pull-right">
+                    Version: 5.2.0
+        </li>
+            
+                            </ul>
+      </div>
+
+            
+      <div class="row-fluid">
+        <div id="leftColumn" class="span2">
+          <div class="well sidebar-nav">
+                
+                    
+                <ul class="nav nav-list">
+  </ul>
+                
+                    
+                
+          <hr />
+
+           <div id="poweredBy">
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+      </a>
+                  </div>
+          </div>
+        </div>
+        
+                
+        <div id="bodyColumn"  class="span10" >
+                                  
+            <p><a href="index.html">::Go back to Oozie Documentation Index::</a></p><hr />
+<h1>Oozie Sqoop Action Extension</h1>
+<ul>
+<li><a href="#Sqoop_Action">Sqoop Action</a>
+<ul>
+<li><a href="#Sqoop_Action_Counters">Sqoop Action Counters</a></li>
+<li><a href="#Sqoop_Action_Logging">Sqoop Action Logging</a></li></ul></li>
+<li><a href="#Appendix_Sqoop_XML-Schema">Appendix, Sqoop XML-Schema</a>
+<ul>
+<li><a href="#AE.A_Appendix_A_Sqoop_XML-Schema">AE.A Appendix A, Sqoop XML-Schema</a>
+<ul>
+<li><a href="#Sqoop_Action_Schema_Version_1.0">Sqoop Action Schema Version 1.0</a></li>
+<li><a href="#Sqoop_Action_Schema_Version_0.3">Sqoop Action Schema Version 0.3</a></li>
+<li><a href="#Sqoop_Action_Schema_Version_0.2">Sqoop Action Schema Version 0.2</a></li></ul></li></ul></li></ul>
+
+<div class="section">
+<h2><a name="Sqoop_Action"></a>Sqoop Action</h2>
+<p><b>IMPORTANT:</b> The Sqoop action requires Apache Hadoop 1.x or 2.x.</p>
+<p>The <tt>sqoop</tt> action runs a Sqoop job.</p>
+<p>The workflow job will wait until the Sqoop job completes before continuing to the next action.</p>
+<p>To run the Sqoop job, you have to configure the <tt>sqoop</tt> action with the <tt>resource-manager</tt>, <tt>name-node</tt> and Sqoop <tt>command</tt> or <tt>arg</tt> elements as well as configuration.</p>
+<p>A <tt>sqoop</tt> action can be configured to create or delete HDFS directories before starting the Sqoop job.</p>
+<p>Sqoop configuration can be specified with a file, using the <tt>job-xml</tt> element, and inline, using the <tt>configuration</tt> elements.</p>
+<p>Oozie EL expressions can be used in the inline configuration. Property values specified in the <tt>configuration</tt> element override values specified in the <tt>job-xml</tt> file.</p>
+<p>Note that YARN <tt>yarn.resourcemanager.address</tt> / <tt>resource-manager</tt> and HDFS <tt>fs.default.name</tt> / <tt>name-node</tt> properties must not be present in the inline configuration.</p>
+<p>As with Hadoop <tt>map-reduce</tt> jobs, it is possible to add files and archives in order to make them available to the Sqoop job. Refer to the [WorkflowFunctionalSpec#FilesArchives][Adding Files and Archives for the Job] section for more information about this feature.</p>
+<p><b>Syntax:</b></p>
+
+<div>
+<div>
+<pre class="source">&lt;workflow-app name=&quot;[WF-DEF-NAME]&quot; xmlns=&quot;uri:oozie:workflow:1.0&quot;&gt;
+    ...
+    &lt;action name=&quot;[NODE-NAME]&quot;&gt;
+        &lt;sqoop xmlns=&quot;uri:oozie:sqoop-action:1.0&quot;&gt;
+            &lt;resource-manager&gt;[RESOURCE-MANAGER]&lt;/resource-manager&gt;
+            &lt;name-node&gt;[NAME-NODE]&lt;/name-node&gt;
+            &lt;prepare&gt;
+               &lt;delete path=&quot;[PATH]&quot;/&gt;
+               ...
+               &lt;mkdir path=&quot;[PATH]&quot;/&gt;
+               ...
+            &lt;/prepare&gt;
+            &lt;configuration&gt;
+                &lt;property&gt;
+                    &lt;name&gt;[PROPERTY-NAME]&lt;/name&gt;
+                    &lt;value&gt;[PROPERTY-VALUE]&lt;/value&gt;
+                &lt;/property&gt;
+                ...
+            &lt;/configuration&gt;
+            &lt;command&gt;[SQOOP-COMMAND]&lt;/command&gt;
+            &lt;arg&gt;[SQOOP-ARGUMENT]&lt;/arg&gt;
+            ...
+            &lt;file&gt;[FILE-PATH]&lt;/file&gt;
+            ...
+            &lt;archive&gt;[FILE-PATH]&lt;/archive&gt;
+            ...
+        &lt;/sqoop&gt;
+        &lt;ok to=&quot;[NODE-NAME]&quot;/&gt;
+        &lt;error to=&quot;[NODE-NAME]&quot;/&gt;
+    &lt;/action&gt;
+    ...
+&lt;/workflow-app&gt;
+</pre></div></div>
+
+<p>The <tt>prepare</tt> element, if present, indicates a list of paths to delete or create before starting the job. Specified paths must start with <tt>hdfs://HOST:PORT</tt>.</p>
+<p>The <tt>job-xml</tt> element, if present, specifies a file containing configuration for the Sqoop job. As of schema 0.3, multiple <tt>job-xml</tt> elements are allowed in order to specify multiple <tt>job.xml</tt> files.</p>
+<p>The <tt>configuration</tt> element, if present, contains configuration properties that are passed to the Sqoop job.</p>
+<p><b>Sqoop command</b></p>
+<p>The Sqoop command can be specified either using the <tt>command</tt> element or multiple <tt>arg</tt> elements.</p>
+<p>When using the <tt>command</tt> element, Oozie will split the command into multiple arguments. There are two command splitting algorithms in Oozie.</p>
+<p>If <tt>oozie.action.sqoop.shellsplitter</tt> property is set to <tt>false</tt> Oozie will split the command on every space.</p>
+<p>If <tt>oozie.action.sqoop.shellsplitter</tt> property is set to <tt>true</tt> Oozie will split the command like <tt>bash</tt> splits the commands. In this case it&#x2019;s possible to group strings together using quotes. For instance oozie will split <tt>--query &quot;select * from employee&quot;</tt> into two tokens: <tt>--query</tt> and <tt>select * from employee</tt>.</p>
+<p>The default value of the <tt>oozie.action.sqoop.shellsplitter</tt> property is <tt>false</tt>.</p>
+<p>When using the <tt>arg</tt> elements, Oozie will pass each argument value as an argument to Sqoop.</p>
+<p>Consult the Sqoop documentation for a complete list of valid Sqoop commands.</p>
+<p>All the above elements can be parameterized (templatized) using EL expressions.</p>
+<p><b>Examples:</b></p>
+<p>Using the <tt>command</tt> element:</p>
+
+<div>
+<div>
+<pre class="source">&lt;workflow-app name=&quot;sample-wf&quot; xmlns=&quot;uri:oozie:workflow:1.0&quot;&gt;
+    ...
+    &lt;action name=&quot;myfirsthivejob&quot;&gt;
+        &lt;sqoop xmlns=&quot;uri:oozie:sqoop-action:1.0&quot;&gt;
+            &lt;resource-manager&gt;foo:8032&lt;/resource-manager&gt;
+            &lt;name-node&gt;bar:8020&lt;/name-node&gt;
+            &lt;prepare&gt;
+                &lt;delete path=&quot;${jobOutput}&quot;/&gt;
+            &lt;/prepare&gt;
+            &lt;configuration&gt;
+                &lt;property&gt;
+                    &lt;name&gt;mapred.compress.map.output&lt;/name&gt;
+                    &lt;value&gt;true&lt;/value&gt;
+                &lt;/property&gt;
+            &lt;/configuration&gt;
+            &lt;command&gt;import  --connect jdbc:hsqldb:file:db.hsqldb --table TT --target-dir hdfs://localhost:8020/user/tucu/foo -m 1&lt;/command&gt;
+        &lt;/sqoop&gt;
+        &lt;ok to=&quot;myotherjob&quot;/&gt;
+        &lt;error to=&quot;errorcleanup&quot;/&gt;
+    &lt;/action&gt;
+    ...
+&lt;/workflow-app&gt;
+</pre></div></div>
+
+<p>The same Sqoop action using <tt>arg</tt> elements:</p>
+
+<div>
+<div>
+<pre class="source">&lt;workflow-app name=&quot;sample-wf&quot; xmlns=&quot;uri:oozie:workflow:1.0&quot;&gt;
+    ...
+    &lt;action name=&quot;myfirstsqoopjob&quot;&gt;
+        &lt;sqoop xmlns=&quot;uri:oozie:sqoop-action:1.0&quot;&gt;
+            &lt;resource-manager&gt;foo:8032&lt;/resource-manager&gt;
+            &lt;name-node&gt;bar:8020&lt;/name-node&gt;
+            &lt;prepare&gt;
+                &lt;delete path=&quot;${jobOutput}&quot;/&gt;
+            &lt;/prepare&gt;
+            &lt;configuration&gt;
+                &lt;property&gt;
+                    &lt;name&gt;mapred.compress.map.output&lt;/name&gt;
+                    &lt;value&gt;true&lt;/value&gt;
+                &lt;/property&gt;
+            &lt;/configuration&gt;
+            &lt;arg&gt;import&lt;/arg&gt;
+            &lt;arg&gt;--connect&lt;/arg&gt;
+            &lt;arg&gt;jdbc:hsqldb:file:db.hsqldb&lt;/arg&gt;
+            &lt;arg&gt;--table&lt;/arg&gt;
+            &lt;arg&gt;TT&lt;/arg&gt;
+            &lt;arg&gt;--target-dir&lt;/arg&gt;
+            &lt;arg&gt;hdfs://localhost:8020/user/tucu/foo&lt;/arg&gt;
+            &lt;arg&gt;-m&lt;/arg&gt;
+            &lt;arg&gt;1&lt;/arg&gt;
+        &lt;/sqoop&gt;
+        &lt;ok to=&quot;myotherjob&quot;/&gt;
+        &lt;error to=&quot;errorcleanup&quot;/&gt;
+    &lt;/action&gt;
+    ...
+&lt;/workflow-app&gt;
+</pre></div></div>
+
+<p>NOTE: The <tt>arg</tt> elements syntax, while more verbose, allows to have spaces in a single argument, something useful when using free from queries.</p>
+<div class="section">
+<h3><a name="Sqoop_Action_Counters"></a>Sqoop Action Counters</h3>
+<p>The counters of the map-reduce job run by the Sqoop action are available to be used in the workflow via the <a href="WorkflowFunctionalSpec.html#HadoopCountersEL">hadoop:counters() EL function</a>.</p>
+<p>If the Sqoop action run an import all command, the <tt>hadoop:counters()</tt> EL will return the aggregated counters of all map-reduce jobs run by the Sqoop import all command.</p></div>
+<div class="section">
+<h3><a name="Sqoop_Action_Logging"></a>Sqoop Action Logging</h3>
+<p>Sqoop action logs are redirected to the Oozie Launcher map-reduce job task STDOUT/STDERR that runs Sqoop.</p>
+<p>From Oozie web-console, from the Sqoop action pop up using the &#x2018;Console URL&#x2019; link, it is possible to navigate to the Oozie Launcher map-reduce job task logs via the Hadoop job-tracker web-console.</p>
+<p>The logging level of the Sqoop action can set in the Sqoop action configuration using the property <tt>oozie.sqoop.log.level</tt>. The default value is <tt>INFO</tt>.</p></div></div>
+<div class="section">
+<h2><a name="Appendix_Sqoop_XML-Schema"></a>Appendix, Sqoop XML-Schema</h2>
+<div class="section">
+<h3><a name="AE.A_Appendix_A_Sqoop_XML-Schema"></a>AE.A Appendix A, Sqoop XML-Schema</h3>
+<div class="section">
+<h4><a name="Sqoop_Action_Schema_Version_1.0"></a>Sqoop Action Schema Version 1.0</h4>
+
+<div>
+<div>
+<pre class="source">&lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
+           xmlns:sqoop=&quot;uri:oozie:sqoop-action:1.0&quot;
+           elementFormDefault=&quot;qualified&quot;
+           targetNamespace=&quot;uri:oozie:sqoop-action:1.0&quot;&gt;
+.
+    &lt;xs:include schemaLocation=&quot;oozie-common-1.0.xsd&quot;/&gt;
+.
+    &lt;xs:element name=&quot;sqoop&quot; type=&quot;sqoop:ACTION&quot;/&gt;
+.
+    &lt;xs:complexType name=&quot;ACTION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:choice&gt;
+                &lt;xs:element name=&quot;job-tracker&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+                &lt;xs:element name=&quot;resource-manager&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;/xs:choice&gt;
+            &lt;xs:element name=&quot;name-node&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;prepare&quot; type=&quot;sqoop:PREPARE&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;launcher&quot; type=&quot;sqoop:LAUNCHER&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;job-xml&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;configuration&quot; type=&quot;sqoop:CONFIGURATION&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:choice&gt;
+                &lt;xs:element name=&quot;command&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+                &lt;xs:element name=&quot;arg&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;/xs:choice&gt;
+            &lt;xs:element name=&quot;file&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;archive&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+.
+&lt;/xs:schema&gt;
+</pre></div></div>
+</div>
+<div class="section">
+<h4><a name="Sqoop_Action_Schema_Version_0.3"></a>Sqoop Action Schema Version 0.3</h4>
+
+<div>
+<div>
+<pre class="source">&lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
+           xmlns:sqoop=&quot;uri:oozie:sqoop-action:0.3&quot; elementFormDefault=&quot;qualified&quot;
+           targetNamespace=&quot;uri:oozie:sqoop-action:0.3&quot;&gt;
+
+    &lt;xs:element name=&quot;sqoop&quot; type=&quot;sqoop:ACTION&quot;/&gt;
+
+    &lt;xs:complexType name=&quot;ACTION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;job-tracker&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;name-node&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;prepare&quot; type=&quot;sqoop:PREPARE&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;job-xml&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;configuration&quot; type=&quot;sqoop:CONFIGURATION&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:choice&gt;
+                &lt;xs:element name=&quot;command&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+                &lt;xs:element name=&quot;arg&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;/xs:choice&gt;
+            &lt;xs:element name=&quot;file&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;archive&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;CONFIGURATION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;property&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;unbounded&quot;&gt;
+                &lt;xs:complexType&gt;
+                    &lt;xs:sequence&gt;
+                        &lt;xs:element name=&quot;name&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                        &lt;xs:element name=&quot;value&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                        &lt;xs:element name=&quot;description&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                    &lt;/xs:sequence&gt;
+                &lt;/xs:complexType&gt;
+            &lt;/xs:element&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;PREPARE&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;delete&quot; type=&quot;sqoop:DELETE&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;mkdir&quot; type=&quot;sqoop:MKDIR&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;DELETE&quot;&gt;
+        &lt;xs:attribute name=&quot;path&quot; type=&quot;xs:string&quot; use=&quot;required&quot;/&gt;
+    &lt;/xs:complexType&gt;
+
+    &lt;xs:complexType name=&quot;MKDIR&quot;&gt;
+        &lt;xs:attribute name=&quot;path&quot; type=&quot;xs:string&quot; use=&quot;required&quot;/&gt;
+    &lt;/xs:complexType&gt;
+
+&lt;/xs:schema&gt;
+</pre></div></div>
+</div>
+<div class="section">
+<h4><a name="Sqoop_Action_Schema_Version_0.2"></a>Sqoop Action Schema Version 0.2</h4>
+
+<div>
+<div>
+<pre class="source">&lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
+           xmlns:sqoop=&quot;uri:oozie:sqoop-action:0.2&quot; elementFormDefault=&quot;qualified&quot;
+           targetNamespace=&quot;uri:oozie:sqoop-action:0.2&quot;&gt;
+
+    &lt;xs:element name=&quot;sqoop&quot; type=&quot;sqoop:ACTION&quot;/&gt;
+.
+    &lt;xs:complexType name=&quot;ACTION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;job-tracker&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;name-node&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;prepare&quot; type=&quot;sqoop:PREPARE&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;job-xml&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;configuration&quot; type=&quot;sqoop:CONFIGURATION&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:choice&gt;
+                &lt;xs:element name=&quot;command&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+                &lt;xs:element name=&quot;arg&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;/xs:choice&gt;
+            &lt;xs:element name=&quot;file&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;archive&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+.
+    &lt;xs:complexType name=&quot;CONFIGURATION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;property&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;unbounded&quot;&gt;
+                &lt;xs:complexType&gt;
+                    &lt;xs:sequence&gt;
+                        &lt;xs:element name=&quot;name&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                        &lt;xs:element name=&quot;value&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                        &lt;xs:element name=&quot;description&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot; type=&quot;xs:string&quot;/&gt;
+                    &lt;/xs:sequence&gt;
+                &lt;/xs:complexType&gt;
+            &lt;/xs:element&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+.
+    &lt;xs:complexType name=&quot;PREPARE&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;delete&quot; type=&quot;sqoop:DELETE&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;mkdir&quot; type=&quot;sqoop:MKDIR&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+.
+    &lt;xs:complexType name=&quot;DELETE&quot;&gt;
+        &lt;xs:attribute name=&quot;path&quot; type=&quot;xs:string&quot; use=&quot;required&quot;/&gt;
+    &lt;/xs:complexType&gt;
+.
+    &lt;xs:complexType name=&quot;MKDIR&quot;&gt;
+        &lt;xs:attribute name=&quot;path&quot; type=&quot;xs:string&quot; use=&quot;required&quot;/&gt;
+    &lt;/xs:complexType&gt;
+.
+&lt;/xs:schema&gt;
+</pre></div></div>
+
+<p><a href="index.html">::Go back to Oozie Documentation Index::</a></p></div></div></div>
+                  </div>
+            </div>
+          </div>
+
+    <hr/>
+
+    <footer>
+            <div class="container-fluid">
+                      <div class="row-fluid">
+                                      <p >Copyright &copy;                    2019
+                        <a href="https://www.apache.org">Apache Software Foundation</a>.
+            All rights reserved.      
+                    
+      </p>
+                </div>
+
+        
+                </div>
+    </footer>
+        </body>
+</html>

Added: websites/staging/oozie/trunk/content/docs/5.2.0/DG_SshActionExtension.html
==============================================================================
--- websites/staging/oozie/trunk/content/docs/5.2.0/DG_SshActionExtension.html (added)
+++ websites/staging/oozie/trunk/content/docs/5.2.0/DG_SshActionExtension.html Fri Dec  6 09:10:49 2019
@@ -0,0 +1,253 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2019-12-05 
+ | Rendered using Apache Maven Fluido Skin 1.4
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="Date-Revision-yyyymmdd" content="20191205" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Oozie &#x2013; </title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.4.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+
+      
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.4.min.js"></script>
+
+    
+                  </head>
+        <body class="topBarDisabled">
+          
+        
+    
+        <div class="container-fluid">
+          <div id="banner">
+        <div class="pull-left">
+                                    <a href="https://oozie.apache.org/" id="bannerLeft">
+                                                                                        <img src="https://oozie.apache.org/images/oozie_200x.png"  alt="Oozie"/>
+                </a>
+                      </div>
+        <div class="pull-right">  </div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+                
+                    
+                              <li class="">
+                    <a href="http://www.apache.org/" class="externalLink" title="Apache">
+        Apache</a>
+                    <span class="divider">/</span>
+      </li>
+            <li class="">
+                    <a href="../../" title="Oozie">
+        Oozie</a>
+                    <span class="divider">/</span>
+      </li>
+            <li class="">
+                    <a href="../" title="docs">
+        docs</a>
+                    <span class="divider">/</span>
+      </li>
+                <li class="">
+                    <a href="./" title="5.2.0">
+        5.2.0</a>
+                    <span class="divider">/</span>
+      </li>
+        <li class="active "></li>
+        
+                
+                    
+                  <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 2019-12-05</li>
+              <li id="projectVersion" class="pull-right">
+                    Version: 5.2.0
+        </li>
+            
+                            </ul>
+      </div>
+
+            
+      <div class="row-fluid">
+        <div id="leftColumn" class="span2">
+          <div class="well sidebar-nav">
+                
+                    
+                <ul class="nav nav-list">
+  </ul>
+                
+                    
+                
+          <hr />
+
+           <div id="poweredBy">
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+      </a>
+                  </div>
+          </div>
+        </div>
+        
+                
+        <div id="bodyColumn"  class="span10" >
+                                  
+            <p><a href="index.html">::Go back to Oozie Documentation Index::</a></p><hr />
+<h1>Oozie Ssh Action Extension</h1>
+<ul>
+<li><a href="#Ssh_Action">Ssh Action</a></li>
+<li><a href="#Appendix_Ssh_XML-Schema">Appendix, Ssh XML-Schema</a>
+<ul>
+<li><a href="#AE.A_Appendix_A_Ssh_XML-Schema">AE.A Appendix A, Ssh XML-Schema</a>
+<ul>
+<li><a href="#Ssh_Action_Schema_Version_0.2">Ssh Action Schema Version 0.2</a></li>
+<li><a href="#Ssh_Action_Schema_Version_0.1">Ssh Action Schema Version 0.1</a></li></ul></li></ul></li></ul>
+
+<div class="section">
+<h2><a name="Ssh_Action"></a>Ssh Action</h2>
+<p>The <tt>ssh</tt> action starts a shell command on a remote machine as a remote secure shell in background. The workflow job will wait until the remote shell command completes before continuing to the next action.</p>
+<p>The shell command must be present in the remote machine and it must be available for execution via the command path.</p>
+<p>The shell command is executed in the home directory of the specified user in the remote host.</p>
+<p>The output (STDOUT) of the ssh job can be made available to the workflow job after the ssh job ends. This information could be used from within decision nodes. If the output of the ssh job is made available to the workflow job the shell command must follow the following requirements:</p>
+<ul>
+
+<li>The format of the output must be a valid Java Properties file.</li>
+<li>The size of the output must not exceed 2KB.</li>
+</ul>
+<p>Note: Ssh Action will fail if any output is written to standard error / output upon login (e.g. .bashrc of the remote user contains ls -a).</p>
+<p>Note: Ssh Action will fail if oozie fails to ssh connect to host for action status check (e.g., the host is under heavy load, or network is bad) after a configurable number (3 by default) of retries. The first retry will wait a configurable period of time ( 3 seconds by default) before check. The following retries will wait 2 times of previous wait time.</p>
+<p><b>Syntax:</b></p>
+
+<div>
+<div>
+<pre class="source">&lt;workflow-app name=&quot;[WF-DEF-NAME]&quot; xmlns=&quot;uri:oozie:workflow:1.0&quot;&gt;
+    ...
+    &lt;action name=&quot;[NODE-NAME]&quot;&gt;
+        &lt;ssh xmlns=&quot;uri:oozie:ssh-action:0.1&quot;&gt;
+            &lt;host&gt;[USER]@[HOST]&lt;/host&gt;
+            &lt;command&gt;[SHELL]&lt;/command&gt;
+            &lt;args&gt;[ARGUMENTS]&lt;/args&gt;
+            ...
+            &lt;capture-output/&gt;
+        &lt;/ssh&gt;
+        &lt;ok to=&quot;[NODE-NAME]&quot;/&gt;
+        &lt;error to=&quot;[NODE-NAME]&quot;/&gt;
+    &lt;/action&gt;
+    ...
+&lt;/workflow-app&gt;
+</pre></div></div>
+
+<p>The <tt>host</tt> indicates the user and host where the shell will be executed.</p>
+<p><b>IMPORTANT:</b> The <tt>oozie.action.ssh.allow.user.at.host</tt> property, in the <tt>oozie-site.xml</tt> configuration, indicates if an alternate user than the one submitting the job can be used for the ssh invocation. By default this property is set to <tt>true</tt>.</p>
+<p>The <tt>command</tt> element indicates the shell command to execute.</p>
+<p>The <tt>args</tt> element, if present, contains parameters to be passed to the shell command. If more than one <tt>args</tt> element is present they are concatenated in order. When an <tt>args</tt> element contains a space, even when quoted, it will be considered as separate arguments (i.e. &#x201c;Hello World&#x201d; becomes &#x201c;Hello&#x201d; and &#x201c;World&#x201d;).  Starting with ssh schema 0.2, you can use the <tt>arg</tt> element (note that this is different than the <tt>args</tt> element) to specify arguments that have a space in them (i.e. &#x201c;Hello World&#x201d; is preserved as &#x201c;Hello World&#x201d;).  You can use either <tt>args</tt> elements, <tt>arg</tt> elements, or neither; but not both in the same action.</p>
+<p>If the <tt>capture-output</tt> element is present, it indicates Oozie to capture output of the STDOUT of the ssh command execution. The ssh command output must be in Java Properties file format and it must not exceed 2KB. From within the workflow definition, the output of an ssh action node is accessible via the =String action:output(String node, String key)= function (Refer to section &#x2018;4.2.6 Action EL Functions&#x2019;).</p>
+<p>The configuration of the <tt>ssh</tt> action can be parameterized (templatized) using EL expressions.</p>
+<p><b>Example:</b></p>
+
+<div>
+<div>
+<pre class="source">&lt;workflow-app name=&quot;sample-wf&quot; xmlns=&quot;uri:oozie:workflow:1.0&quot;&gt;
+    ...
+    &lt;action name=&quot;myssjob&quot;&gt;
+        &lt;ssh xmlns=&quot;uri:oozie:ssh-action:0.1&quot;&gt;
+            &lt;host&gt;foo@bar.com&lt;host&gt;
+            &lt;command&gt;uploaddata&lt;/command&gt;
+            &lt;args&gt;jdbc:derby://bar.com:1527/myDB&lt;/args&gt;
+            &lt;args&gt;hdfs://foobar.com:8020/usr/tucu/myData&lt;/args&gt;
+        &lt;/ssh&gt;
+        &lt;ok to=&quot;myotherjob&quot;/&gt;
+        &lt;error to=&quot;errorcleanup&quot;/&gt;
+    &lt;/action&gt;
+    ...
+&lt;/workflow-app&gt;
+</pre></div></div>
+
+<p>In the above example, the <tt>uploaddata</tt> shell command is executed with two arguments, <tt>jdbc:derby://foo.com:1527/myDB</tt> and <tt>hdfs://foobar.com:8020/usr/tucu/myData</tt>.</p>
+<p>The <tt>uploaddata</tt> shell must be available in the remote host and available in the command path.</p>
+<p>The output of the command will be ignored because the <tt>capture-output</tt> element is not present.</p></div>
+<div class="section">
+<h2><a name="Appendix_Ssh_XML-Schema"></a>Appendix, Ssh XML-Schema</h2>
+<div class="section">
+<h3><a name="AE.A_Appendix_A_Ssh_XML-Schema"></a>AE.A Appendix A, Ssh XML-Schema</h3>
+<div class="section">
+<h4><a name="Ssh_Action_Schema_Version_0.2"></a>Ssh Action Schema Version 0.2</h4>
+
+<div>
+<div>
+<pre class="source">&lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
+           xmlns:ssh=&quot;uri:oozie:ssh-action:0.2&quot; elementFormDefault=&quot;qualified&quot;
+           targetNamespace=&quot;uri:oozie:ssh-action:0.2&quot;&gt;
+.
+    &lt;xs:element name=&quot;ssh&quot; type=&quot;ssh:ACTION&quot;/&gt;
+.
+    &lt;xs:complexType name=&quot;ACTION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;host&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;command&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:choice&gt;
+              &lt;xs:element name=&quot;args&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+              &lt;xs:element name=&quot;arg&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;/xs:choice&gt;
+            &lt;xs:element name=&quot;capture-output&quot; type=&quot;ssh:FLAG&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+.
+    &lt;xs:complexType name=&quot;FLAG&quot;/&gt;
+.
+&lt;/xs:schema&gt;
+</pre></div></div>
+</div>
+<div class="section">
+<h4><a name="Ssh_Action_Schema_Version_0.1"></a>Ssh Action Schema Version 0.1</h4>
+
+<div>
+<div>
+<pre class="source">&lt;xs:schema xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
+           xmlns:ssh=&quot;uri:oozie:ssh-action:0.1&quot; elementFormDefault=&quot;qualified&quot;
+           targetNamespace=&quot;uri:oozie:ssh-action:0.1&quot;&gt;
+.
+    &lt;xs:element name=&quot;ssh&quot; type=&quot;ssh:ACTION&quot;/&gt;
+.
+    &lt;xs:complexType name=&quot;ACTION&quot;&gt;
+        &lt;xs:sequence&gt;
+            &lt;xs:element name=&quot;host&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;command&quot; type=&quot;xs:string&quot; minOccurs=&quot;1&quot; maxOccurs=&quot;1&quot;/&gt;
+            &lt;xs:element name=&quot;args&quot; type=&quot;xs:string&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot;/&gt;
+            &lt;xs:element name=&quot;capture-output&quot; type=&quot;ssh:FLAG&quot; minOccurs=&quot;0&quot; maxOccurs=&quot;1&quot;/&gt;
+        &lt;/xs:sequence&gt;
+    &lt;/xs:complexType&gt;
+.
+    &lt;xs:complexType name=&quot;FLAG&quot;/&gt;
+.
+&lt;/xs:schema&gt;
+</pre></div></div>
+
+<p><a href="index.html">::Go back to Oozie Documentation Index::</a></p></div></div></div>
+                  </div>
+            </div>
+          </div>
+
+    <hr/>
+
+    <footer>
+            <div class="container-fluid">
+                      <div class="row-fluid">
+                                      <p >Copyright &copy;                    2019
+                        <a href="https://www.apache.org">Apache Software Foundation</a>.
+            All rights reserved.      
+                    
+      </p>
+                </div>
+
+        
+                </div>
+    </footer>
+        </body>
+</html>

Added: websites/staging/oozie/trunk/content/docs/5.2.0/DG_WorkflowReRun.html
==============================================================================
--- websites/staging/oozie/trunk/content/docs/5.2.0/DG_WorkflowReRun.html (added)
+++ websites/staging/oozie/trunk/content/docs/5.2.0/DG_WorkflowReRun.html Fri Dec  6 09:10:49 2019
@@ -0,0 +1,177 @@
+<!DOCTYPE html>
+<!--
+ | Generated by Apache Maven Doxia at 2019-12-05 
+ | Rendered using Apache Maven Fluido Skin 1.4
+-->
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  <head>
+    <meta charset="UTF-8" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <meta name="Date-Revision-yyyymmdd" content="20191205" />
+    <meta http-equiv="Content-Language" content="en" />
+    <title>Oozie &#x2013; </title>
+    <link rel="stylesheet" href="./css/apache-maven-fluido-1.4.min.css" />
+    <link rel="stylesheet" href="./css/site.css" />
+    <link rel="stylesheet" href="./css/print.css" media="print" />
+
+      
+    <script type="text/javascript" src="./js/apache-maven-fluido-1.4.min.js"></script>
+
+    
+                  </head>
+        <body class="topBarDisabled">
+          
+        
+    
+        <div class="container-fluid">
+          <div id="banner">
+        <div class="pull-left">
+                                    <a href="https://oozie.apache.org/" id="bannerLeft">
+                                                                                        <img src="https://oozie.apache.org/images/oozie_200x.png"  alt="Oozie"/>
+                </a>
+                      </div>
+        <div class="pull-right">  </div>
+        <div class="clear"><hr/></div>
+      </div>
+
+      <div id="breadcrumbs">
+        <ul class="breadcrumb">
+                
+                    
+                              <li class="">
+                    <a href="http://www.apache.org/" class="externalLink" title="Apache">
+        Apache</a>
+                    <span class="divider">/</span>
+      </li>
+            <li class="">
+                    <a href="../../" title="Oozie">
+        Oozie</a>
+                    <span class="divider">/</span>
+      </li>
+            <li class="">
+                    <a href="../" title="docs">
+        docs</a>
+                    <span class="divider">/</span>
+      </li>
+                <li class="">
+                    <a href="./" title="5.2.0">
+        5.2.0</a>
+                    <span class="divider">/</span>
+      </li>
+        <li class="active "></li>
+        
+                
+                    
+                  <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 2019-12-05</li>
+              <li id="projectVersion" class="pull-right">
+                    Version: 5.2.0
+        </li>
+            
+                            </ul>
+      </div>
+
+            
+      <div class="row-fluid">
+        <div id="leftColumn" class="span2">
+          <div class="well sidebar-nav">
+                
+                    
+                <ul class="nav nav-list">
+  </ul>
+                
+                    
+                
+          <hr />
+
+           <div id="poweredBy">
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                            <div class="clear"></div>
+                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
+        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
+      </a>
+                  </div>
+          </div>
+        </div>
+        
+                
+        <div id="bodyColumn"  class="span10" >
+                                  
+            <p><a href="index.html">::Go back to Oozie Documentation Index::</a></p>
+<h1>Workflow ReRun</h1>
+<ul>
+<li><a href="#Configs">Configs</a></li>
+<li><a href="#Pre-Conditions">Pre-Conditions</a></li>
+<li><a href="#ReRun">ReRun</a></li></ul>
+
+<div class="section">
+<h2><a name="Configs"></a>Configs</h2>
+<ul>
+
+<li>oozie.wf.application.path</li>
+<li>Only one of following two configurations is mandatory. Both should not be defined at the same time.
+<ul>
+
+<li><tt>oozie.wf.rerun.skip.nodes</tt></li>
+<li><tt>oozie.wf.rerun.failnodes</tt></li>
+</ul>
+</li>
+<li>Skip nodes are comma separated list of action names. They can be any action nodes including decision node. If this value is empty, or null, and <tt>oozie.wf.rerun.failnodes</tt> is false, than the whole workflow is rerunned.</li>
+<li>The valid value of  <tt>oozie.wf.rerun.failnodes</tt> is true or false. By default its value is false. In case of setting this value to true, all the nodes where the status is OK will be skipped.</li>
+<li>If secured hadoop version is used, the following two properties needs to be specified as well
+<ul>
+
+<li>mapreduce.jobtracker.kerberos.principal</li>
+<li>dfs.namenode.kerberos.principal.</li>
+</ul>
+</li>
+<li>Configurations can be passed as -D param.</li>
+</ul>
+
+<div>
+<div>
+<pre class="source">$ oozie job -oozie http://localhost:11000/oozie -rerun 14-20090525161321-oozie-joe -Doozie.wf.rerun.skip.nodes=&lt;&gt;
+</pre></div></div>
+</div>
+<div class="section">
+<h2><a name="Pre-Conditions"></a>Pre-Conditions</h2>
+<ul>
+
+<li>Workflow with id wfId should exist.</li>
+<li>Workflow with id wfId should be in SUCCEEDED/KILLED/FAILED.</li>
+<li>If specified , nodes in the config <tt>oozie.wf.rerun.skip.nodes</tt> must be completed successfully.</li>
+</ul></div>
+<div class="section">
+<h2><a name="ReRun"></a>ReRun</h2>
+<ul>
+
+<li>Reloads the configs.</li>
+<li>If no configuration is passed, existing coordinator/workflow configuration will be used. If configuration is passed then, it will be merged with existing workflow configuration. Input configuration will take the precedence.</li>
+<li>Currently there is no way to remove an existing configuration but only override by passing a different value in the input configuration.</li>
+<li>Creates a new Workflow Instance with the same wfId.</li>
+<li>Deletes the actions that are not skipped from the DB and copies data from old Workflow Instance to new one for skipped actions.</li>
+<li>Action handler will skip the nodes given in the config with the same exit transition as before.</li>
+</ul>
+<p><a href="index.html">::Go back to Oozie Documentation Index::</a></p></div>
+                  </div>
+            </div>
+          </div>
+
+    <hr/>
+
+    <footer>
+            <div class="container-fluid">
+                      <div class="row-fluid">
+                                      <p >Copyright &copy;                    2019
+                        <a href="https://www.apache.org">Apache Software Foundation</a>.
+            All rights reserved.      
+                    
+      </p>
+                </div>
+
+        
+                </div>
+    </footer>
+        </body>
+</html>