| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| <workflow-app xmlns='uri:oozie:workflow:0.3' name='falcon-dr-fs-workflow'> |
| <start to='dr-replication'/> |
| <!-- Replication action --> |
| <action name="dr-replication"> |
| <java> |
| <job-tracker>${jobTracker}</job-tracker> |
| <name-node>${nameNode}</name-node> |
| <configuration> |
| <property> <!-- hadoop 2 parameter --> |
| <name>oozie.launcher.mapreduce.job.user.classpath.first</name> |
| <value>true</value> |
| </property> |
| <property> |
| <name>mapred.job.queue.name</name> |
| <value>${queueName}</value> |
| </property> |
| <property> |
| <name>oozie.launcher.mapred.job.priority</name> |
| <value>${jobPriority}</value> |
| </property> |
| <property> |
| <name>oozie.use.system.libpath</name> |
| <value>true</value> |
| </property> |
| <property> |
| <name>oozie.action.sharelib.for.java</name> |
| <value>distcp</value> |
| </property> |
| <property> |
| <name>oozie.launcher.oozie.libpath</name> |
| <value>${wf:conf("falcon.libpath")}</value> |
| </property> |
| <property> |
| <name>oozie.launcher.mapreduce.job.hdfs-servers</name> |
| <value>${sourceClusterFS},${targetClusterFS}</value> |
| </property> |
| <property> |
| <name>mapreduce.job.hdfs-servers</name> |
| <value>${sourceClusterFS},${targetClusterFS}</value> |
| </property> |
| </configuration> |
| <main-class>org.apache.falcon.replication.FeedReplicator</main-class> |
| <arg>-Dmapred.job.queue.name=${queueName}</arg> |
| <arg>-Dmapred.job.priority=${jobPriority}</arg> |
| <arg>-maxMaps</arg> |
| <arg>${distcpMaxMaps}</arg> |
| <arg>-mapBandwidth</arg> |
| <arg>${distcpMapBandwidth}</arg> |
| <arg>-overwrite</arg> |
| <arg>${overwrite}</arg> |
| <arg>-ignoreErrors</arg> |
| <arg>${ignoreErrors}</arg> |
| <arg>-skipChecksum</arg> |
| <arg>${skipChecksum}</arg> |
| <arg>-removeDeletedFiles</arg> |
| <arg>${removeDeletedFiles}</arg> |
| <arg>-preserveBlockSize</arg> |
| <arg>${preserveBlockSize}</arg> |
| <arg>-preserveReplicationNumber</arg> |
| <arg>${preserveReplicationNumber}</arg> |
| <arg>-preservePermission</arg> |
| <arg>${preservePermission}</arg> |
| <arg>-preserveUser</arg> |
| <arg>${preserveUser}</arg> |
| <arg>-preserveGroup</arg> |
| <arg>${preserveGroup}</arg> |
| <arg>-preserveChecksumType</arg> |
| <arg>${preserveChecksumType}</arg> |
| <arg>-preserveAcl</arg> |
| <arg>${preserveAcl}</arg> |
| <arg>-preserveXattr</arg> |
| <arg>${preserveXattr}</arg> |
| <arg>-preserveTimes</arg> |
| <arg>${preserveTimes}</arg> |
| <arg>-sourcePaths</arg> |
| <arg>${sourceDir}</arg> |
| <arg>-targetPath</arg> |
| <arg>${targetDir}</arg> |
| <arg>-falconFeedStorageType</arg> |
| <arg>FILESYSTEM</arg> |
| <arg>-availabilityFlag</arg> |
| <arg>${availabilityFlag == 'NA' ? "NA" : availabilityFlag}</arg> |
| <arg>-tdeEncryptionEnabled</arg> |
| <arg>${tdeEncryptionEnabled}</arg> |
| <arg>-counterLogDir</arg> |
| <arg>${logDir}/job-${nominalTime}/${srcClusterName == 'NA' ? '' : srcClusterName}</arg> |
| </java> |
| <ok to="end"/> |
| <error to="fail"/> |
| </action> |
| <kill name="fail"> |
| <message> |
| Workflow action failed, error message[${wf:errorMessage(wf:lastErrorNode())}] |
| </message> |
| </kill> |
| <end name="end"/> |
| </workflow-app> |