[ 
https://issues.apache.org/jira/browse/OOZIE-2716?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15595886#comment-15595886
 ] 

Robert Kanter commented on OOZIE-2716:
--------------------------------------

The command line uses the REST API.  [~abhishekbafna], if you {{export 
OOZIE_DEBUG=1}}, the CLI will print out the REST calls it's making.  You can 
then see if the CLI is doing any sort of parsing or escaping.

> Oozie Truncates Workflow Parameter Values which contain '}}'
> ------------------------------------------------------------
>
>                 Key: OOZIE-2716
>                 URL: https://issues.apache.org/jira/browse/OOZIE-2716
>             Project: Oozie
>          Issue Type: Bug
>    Affects Versions: 4.1.0
>         Environment: Using Oozie 4.1.0-cdh5.8.2, Java 1.8.0_60-b27
>            Reporter: Ruben Aguilar
>
> When submitting a workflow job to oozie through the web api, if the value of 
> a substituted workflow parameter contains a {{"\}\}"}} then the rest of the 
> value is truncated. This happens quite often which json data. I tried 
> delimiting by 
> {code:javascript}
> }} => }}}}
> }} => \}\}
> }} => '}''}'
> {code}
> but none of these worked.
> Example:
> Expected value received in {{jar}} (ending double braces):
> {code:javascript}
> {"hdfsArtifacts":null,"azureSqlArtifacts":null,"osdbArtifacts":{"username":"","password":"","server":"","database":"","schema":"","scriptsPath":"","outputType":""}}
> {code}
> Actual value received in {{jar}} (lacking ending double braces):
> {code:javascript}
> {"hdfsArtifacts":null,"azureSqlArtifacts":null,"osdbArtifacts":{"username":"","password":"","server":"","database":"","schema":"","scriptsPath":"","outputType":""
> {code}
> {{workflow.xml}}:
> {code:xml}
> <workflow-app name="end-2-end-test" xmlns="uri:oozie:workflow:0.4">
>   <start to="SparkAction" />
>   <action name="SparkAction">
>     <spark xmlns="uri:oozie:spark-action:0.1">
>       <job-tracker>${jobTracker}</job-tracker>
>       <name-node>${nameNode}</name-node>
>       <master>${master}</master>
>       <mode>cluster</mode>
>       <name>${jobName}</name>
>       <class>${classToExecute}</class>
>       <jar>${nameNode}${executableJarPath}</jar>
>       <spark-opts></spark-opts>
>       <arg>${artifactSpecification}</arg>
>     </spark>
>     <ok to="real-end" />
>     <error to="fail"/>
>   </action>
>   <kill name="fail">
>     <message>Spark Action failed, error 
> message[${wf:errorMessage(wf:lastErrorNode())}]</message>
>   </kill>
>   <end name="real-end" />
> </workflow-app>
> {code}
> Configuration sent to web api:
> {code:xml}
> <configuration>
>   <property>
>     <name>jobName</name>
>     <value>end-2-end-test</value>
>   </property>
>   <property>
>     <name>oozie.use.system.libpath</name>
>     <value>True</value>
>   </property>
>   <property>
>     <name>executableJarPath</name>
>     
> <value>/oozie-jars/e2e-job-test/version-14/E2EJobTest-assembly-1.20.jar</value>
>   </property>
>   <property>
>     <name>user.name</name>
>     <value>oozie</value>
>   </property>
>   <property>
>     <name>mapreduce.job.user.name</name>
>     <value>oozie</value>
>   </property>
>   <property>
>     <name>master</name>
>     <value>yarn-cluster</value>
>   </property>
>   <property>
>     <name>oozie.wf.application.path</name>
>     
> <value>hdfs://some-hdfs:8020/oozie-workflow/e2e-job-test/version-14/workflow.xml</value>
>   </property>
>   <property>
>     <name>artifactSpecification</name>
>     
> <value>{"hdfsArtifacts":null,"azureSqlArtifacts":null,"osdbArtifacts":{"username":"","password":"","server":"","database":"","schema":"","scriptsPath":"","outputType":""}}</value>
>   </property>
>   <property>
>     <name>jobTracker</name>
>     <value>some-namenode:8032</value>
>   </property>
>   <property>
>     <name>nameNode</name>
>     <value>hdfs://some-namenode:8020</value>
>   </property>
>   <property>
>     <name>classToExecute</name>
>     <value>E2EJob</value>
>   </property>
> </configuration>
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to