Created 01-20-2016 03:17 AM
Unable to use expression language functions in oozie workflow with Falcon. It seems some jar files are missing but unsure what.
Here is the exception when using - http://hortonworks.com/hadoop-tutorial/defining-processing-data-end-end-data-pipeline-apache-falcon/
The error occurs at this step -
falcon entity -type process -schedule -name rawEmailIngestProcess
2016-01-19 21:08:31,969 ERROR CoordSubmitXCommand:517 - SERVER[sandbox.hortonworks.com] USER[-] GROUP[-] TOKEN[-] APP[-] JOB[-] ACTION[-] XException, org.apache.oozie.command.CommandException: E1004: Expression language evaluation error, Unable to evaluate :${now(0,0)}: at org.apache.oozie.command.coord.CoordSubmitXCommand.submitJob(CoordSubmitXCommand.java:259) at org.apache.oozie.command.coord.CoordSubmitXCommand.submit(CoordSubmitXCommand.java:203) at org.apache.oozie.command.SubmitTransitionXCommand.execute(SubmitTransitionXCommand.java:82) at org.apache.oozie.command.SubmitTransitionXCommand.execute(SubmitTransitionXCommand.java:30) at org.apache.oozie.command.XCommand.call(XCommand.java:286) at org.apache.oozie.CoordinatorEngine.dryRunSubmit(CoordinatorEngine.java:561) at org.apache.oozie.servlet.V1JobsServlet.submitCoordinatorJob(V1JobsServlet.java:228) at org.apache.oozie.servlet.V1JobsServlet.submitJob(V1JobsServlet.java:95) 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:304) 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:595) at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:554) 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.coord.CoordinatorJobException: E1004: Expression language evaluation error, Unable to evaluate :${now(0,0)}: at org.apache.oozie.command.coord.CoordSubmitXCommand.resolveTagContents(CoordSubmitXCommand.java:1003) at org.apache.oozie.command.coord.CoordSubmitXCommand.resolveIOEvents(CoordSubmitXCommand.java:889) at org.apache.oozie.command.coord.CoordSubmitXCommand.resolveInitial(CoordSubmitXCommand.java:797) at org.apache.oozie.command.coord.CoordSubmitXCommand.basicResolveAndIncludeDS(CoordSubmitXCommand.java:606) at org.apache.oozie.command.coord.CoordSubmitXCommand.submitJob(CoordSubmitXCommand.java:229) ... 32 more Caused by: java.lang.Exception: Unable to evaluate :${now(0,0)}: at org.apache.oozie.coord.CoordELFunctions.evalAndWrap(CoordELFunctions.java:723) at org.apache.oozie.command.coord.CoordSubmitXCommand.resolveTagContents(CoordSubmitXCommand.java:999) ... 36 more Caused by: javax.servlet.jsp.el.ELException: No function is mapped to the name "now" at org.apache.commons.el.Logger.logError(Logger.java:481) at org.apache.commons.el.Logger.logError(Logger.java:498) at org.apache.commons.el.Logger.logError(Logger.java:525) at org.apache.commons.el.FunctionInvocation.evaluate(FunctionInvocation.java:150) at org.apache.commons.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:263) at org.apache.commons.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:190) at org.apache.oozie.util.ELEvaluator.evaluate(ELEvaluator.java:204) at org.apache.oozie.coord.CoordELFunctions.evalAndWrap(CoordELFunctions.java:714) ... 37 more
Created 01-20-2016 03:22 AM
This looks like a configuration issue where Oozie is probably not setup correctly for Falcon in the sandbox (Assuming you are using sandbox). Please refer to http://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.3.0/bk_installing_manually_book/content/configur... This document should explain all the configs Oozie should have for Falcon to work successfully. My guess is that the Coord EL Functions Properties are missing.
Created 01-21-2016 07:20 PM
The entry is incorrect. https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.3.4/bk_installing_manually_book/content/configu... has the correct instructions. The line after dataIn should be as follows.
instanceTime=org.apache.oozie.coord.CoordELFunctions#ph3_coord_nominalTime,
Created 01-21-2016 07:21 PM
Hi Team,
The information in 2.3.0 docs had an error. Please use information at https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.3.4/bk_installing_manually_book/content/configu... , I will work with documentation team to get 2.3.0 doc fixed.
Created 01-21-2016 07:22 PM
Created 01-22-2016 08:36 PM
Back to the original error.
Created 01-22-2016 08:38 PM
@bsaini @zblanco @Rafael Coss @Balu I was able to run through the tutorial on my own built machine with HDP 2.3.4, albeit doing something wrong with paths, it works. Granted I was using the latest HDP 2.3 tutorial https://github.com/ZacBlanco/hwx-tutorials/blob/master/2-3/tutorials/define-and-process-data-pipelin... where there are no CLI commands for falcon.