Robert Kanter created OOZIE-2441:
------------------------------------
Summary: SubWorkflow action with propagate-configuration but no
global section throws NPE on submit
Key: OOZIE-2441
URL: https://issues.apache.org/jira/browse/OOZIE-2441
Project: Oozie
Issue Type: Bug
Components: action
Affects Versions: trunk
Reporter: Robert Kanter
Assignee: Robert Kanter
Priority: Blocker
Fix For: trunk
After OOZIE-2030, if you have a SubWorkflow Action with
{{<propagate-configuration/>}} and no {{<global>}} section, you'll get an NPE:
{noformat}
SERVER[nightly56-1.vpc.cloudera.com] USER[-] GROUP[-] TOKEN[-] APP[-] JOB[-]
ACTION[-] URL[POST
http://nightly56-1.vpc.cloudera.com:11000/oozie/v1/jobs?action=dryrun&timezone=America%2FLos_Angeles&user.name=hue&doAs=admin]
error[E0803], E0803: IO error, null
org.apache.oozie.servlet.XServletException: E0803: IO error, null
at
org.apache.oozie.servlet.V1JobsServlet.submitWorkflowJob(V1JobsServlet.java:197)
at
org.apache.oozie.servlet.V1JobsServlet.submitJob(V1JobsServlet.java:92)
at
org.apache.oozie.servlet.BaseJobsServlet.doPost(BaseJobsServlet.java:102)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at
org.apache.oozie.servlet.JsonRestServlet.service(JsonRestServlet.java:289)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.oozie.servlet.AuthFilter$2.doFilter(AuthFilter.java:171)
at
org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:589)
at
org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:552)
at org.apache.oozie.servlet.AuthFilter.doFilter(AuthFilter.java:176)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.oozie.servlet.HostnameFilter.doFilter(HostnameFilter.java:86)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:620)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.oozie.DagEngineException: E0803: IO error, null
at org.apache.oozie.DagEngine.dryRunSubmit(DagEngine.java:542)
at
org.apache.oozie.servlet.V1JobsServlet.submitWorkflowJob(V1JobsServlet.java:189)
... 26 more
Caused by: org.apache.oozie.command.CommandException: E0803: IO error, null
at
org.apache.oozie.command.wf.SubmitXCommand.execute(SubmitXCommand.java:278)
at
org.apache.oozie.command.wf.SubmitXCommand.execute(SubmitXCommand.java:76)
at org.apache.oozie.command.XCommand.call(XCommand.java:286)
at org.apache.oozie.DagEngine.dryRunSubmit(DagEngine.java:540)
... 27 more
Caused by: java.lang.NullPointerException
at
org.apache.oozie.workflow.lite.LiteWorkflowAppParser.getGlobalString(LiteWorkflowAppParser.java:554)
at
org.apache.oozie.workflow.lite.LiteWorkflowAppParser.parse(LiteWorkflowAppParser.java:478)
at
org.apache.oozie.workflow.lite.LiteWorkflowAppParser.validateAndParse(LiteWorkflowAppParser.java:198)
at
org.apache.oozie.workflow.lite.LiteWorkflowLib.parseDef(LiteWorkflowLib.java:57)
at
org.apache.oozie.service.LiteWorkflowAppService.parseDef(LiteWorkflowAppService.java:58)
at
org.apache.oozie.service.LiteWorkflowAppService.parseDef(LiteWorkflowAppService.java:47)
at
org.apache.oozie.command.wf.SubmitXCommand.execute(SubmitXCommand.java:165)
... 30 more
{noformat}
{code:xml}
<workflow-app xmlns="uri:oozie:workflow:0.4" name="test-wf">
<start to="a"/>
<action name="a">
<sub-workflow>
<app-path>/tmp/foo/</app-path>
<propagate-configuration/>
</sub-workflow>
<ok to="c"/>
<error to="b"/>
</action>
<kill name="b">
<message>fail</message>
</kill>
<end name="c"/>
</workflow-app>
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)