You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@oozie.apache.org by "Julia Kinga Marton (JIRA)" <ji...@apache.org> on 2018/11/23 14:53:00 UTC

[jira] [Commented] (OOZIE-3386) Misleading error message when workflow application does not exist

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

Julia Kinga Marton commented on OOZIE-3386:
-------------------------------------------

With OOZIE-2339 the functionality was extended with the possibility of uploading the workflow.xml programatically. For more details check [WebServicesAPI.md#embedded-workflow-xml-job-submission|https://github.com/apache/oozie/blob/master/docs/src/site/markdown/WebServicesAPI.md#embedded-workflow-xml-job-submission]

The exception is created when trying to create the workflow.xml. At this point no workflow.xml exist on the defined path and no generated value is defined for the workflow.xml to be created, so int the uploaded patch I only extended the error message to the following one:
{code:bash}
Error: E0307 : E0307: Runtime error [hdfs://localhost:9000/user/test/examples10/apps/java-main/workflow.xml does not exist and it cannot be created because of missing config value oozie.jobs.api.generated.xml]{code}
 

> Misleading error message when workflow application does not exist
> -----------------------------------------------------------------
>
>                 Key: OOZIE-3386
>                 URL: https://issues.apache.org/jira/browse/OOZIE-3386
>             Project: Oozie
>          Issue Type: Bug
>    Affects Versions: 5.1.0
>            Reporter: Attila Sasvari
>            Assignee: Julia Kinga Marton
>            Priority: Major
>             Fix For: 5.1.0
>
>         Attachments: OOZIE-3386-001.patch
>
>
> Using 5.1.0 rc1, I tried to run an example workflow. Because of user error {{oozie.wf.application.path}} in job.properties pointed to a directory in HDFS that did not exist. Upon submitting the workflow, the following was returned
> {code}
> bin/oozie job -oozie http://localhost:11000/oozie   -config examples/apps/demo/job.properties -Dmode=client -Dmaster=yarn -run -DnameNode=hdfs://localhost:9000
> log4j:WARN No appenders could be found for logger (org.apache.hadoop.security.authentication.client.KerberosAuthenticator).
> log4j:WARN Please initialize the log4j system properly.
> log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
> Error: E0307 : E0307: Runtime error [Configuration entry oozie.jobs.api.generated.xml not present]
> {code}
> The server.log contained the following:
> {code}
> 2018-11-19 15:07:13,244  WARN V1JobsServlet:523 - SERVER[Budapests-MacBook-Pro-10.local] USER[-] GROUP[-] TOKEN[-] APP[-] JOB[-] ACTION[-] URL[POST http://localhost:11000/oozie/v2/jobs?action=start&user=asasvari] error[E0307], E0307: Runtime error [Configuration entry oozie.jobs.api.generated.xml not present]
> org.apache.oozie.servlet.XServletException: E0307: Runtime error [Configuration entry oozie.jobs.api.generated.xml not present]
>        at org.apache.oozie.servlet.V1JobsServlet.checkAndWriteApplicationXMLToHDFS(V1JobsServlet.java:172)
>        at org.apache.oozie.servlet.BaseJobsServlet.doPost(BaseJobsServlet.java:111)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
>        at org.apache.oozie.servlet.JsonRestServlet.service(JsonRestServlet.java:305)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
>        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:848)
>        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1772)
>        at org.apache.oozie.servlet.AuthFilter$2.doFilter(AuthFilter.java:171)
>        at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:572)
>        at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:542)
>        at org.apache.oozie.servlet.AuthFilter.doFilter(AuthFilter.java:176)
>        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1759)
>        at org.apache.oozie.servlet.HostnameFilter.doFilter(HostnameFilter.java:86)
>        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1759)
>        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582)
>        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
>        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
>        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512)
>        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
>        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>        at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119)
>        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
>        at org.eclipse.jetty.server.Server.handle(Server.java:534)
>        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
>        at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
>        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283)
>        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108)
>        at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
>        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
>        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
>        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
>        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
>        at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
>        at java.lang.Thread.run(Thread.java:745)
> {code}
> As a user, I expect to see better error message in order to troubleshoot workflow submission failures.
> Note: Earlier (Oozie 5.0) a user got a more descriptive error such as:
> {code}
> Error: E0504 : E0504: App directory [hdfs://test:8020/user/root/examples/apps/demo] does not exist
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)