Fwd: Oozie SparkAction not able to use spark conf values
Hi We are trying to change our existing oozie workflows to use SparkAction instead of ShellAction. We are passing spark configuration in spark-opts with --conf, but these values are not accessible in Spark and it is throwing error. Please note we are able to use SparkAction successfully in yarn-cluster mode if we are not using the spark configurations. I have attached oozie workflow.xml, oozie log and yarncontainer-spark log files. Thanks Raja Log Type: stderr Log Upload Time: Fri Dec 04 10:26:17 -0800 2015 Log Length: 6035 15/12/04 10:26:04 INFO yarn.ApplicationMaster: Registered signal handlers for [TERM, HUP, INT] 15/12/04 10:26:05 INFO yarn.ApplicationMaster: ApplicationAttemptId: appattempt_1447700095990_2804_02 15/12/04 10:26:06 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 15/12/04 10:26:06 INFO spark.SecurityManager: Changing view acls to: dev 15/12/04 10:26:06 INFO spark.SecurityManager: Changing modify acls to: dev 15/12/04 10:26:06 INFO spark.SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users with view permissions: Set(dev); users with modify permissions: Set(dev) 15/12/04 10:26:06 INFO yarn.ApplicationMaster: Starting the user application in a separate Thread 15/12/04 10:26:06 INFO yarn.ApplicationMaster: Waiting for spark context initialization 15/12/04 10:26:06 INFO yarn.ApplicationMaster: Waiting for spark context initialization ... 15/12/04 10:26:06 ERROR yarn.ApplicationMaster: User class threw exception: null java.lang.ExceptionInInitializerError at com.toyota.genericmodule.info.Info$.(Info.scala:20) at com.toyota.genericmodule.info.Info$.(Info.scala) at com.toyota.genericmodule.info.Info.main(Info.scala) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:480) Caused by: com.typesafe.config.ConfigException$UnresolvedSubstitution: application.conf: 53: Could not resolve substitution to a value: ${inputdb} at com.typesafe.config.impl.ConfigReference.resolveSubstitutions(ConfigReference.java:84) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.ConfigConcatenation.resolveSubstitutions(ConfigConcatenation.java:178) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.ConfigDelayedMerge.resolveSubstitutions(ConfigDelayedMerge.java:96) at com.typesafe.config.impl.ConfigDelayedMerge.resolveSubstitutions(ConfigDelayedMerge.java:59) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.ResolveSource.lookupSubst(ResolveSource.java:62) at com.typesafe.config.impl.ConfigReference.resolveSubstitutions(ConfigReference.java:73) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.ConfigConcatenation.resolveSubstitutions(ConfigConcatenation.java:178) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.ResolveSource.lookupSubst(ResolveSource.java:62) at com.typesafe.config.impl.ConfigReference.resolveSubstitutions(ConfigReference.java:73) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.SimpleConfigObject$1.modifyChildMayThrow(SimpleConfigObject.java:340) at com.typesafe.config.impl.SimpleConfigObject.modifyMayThrow(SimpleConfigObject.java:279) at com.typesafe.config.impl.SimpleConfigObject.resolveSubstitutions(SimpleConfigObject.java:320) at com.typesafe.config.impl.SimpleConfigObject.resolveSubstitutions(SimpleConfigObject.java:24) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114)
Oozie SparkAction not able to use spark conf values
Hi We are trying to change our existing oozie workflows to use SparkAction instead of ShellAction. We are passing spark configuration in spark-opts with --conf, but these values are not accessible in Spark and it is throwing error. Please note we are able to use SparkAction successfully in yarn-cluster mode if we are not using the spark configurations. I have attached oozie workflow.xml, oozie log and yarncontainer-spark log files. Thanks Raja Log Type: stderr Log Upload Time: Fri Dec 04 10:26:17 -0800 2015 Log Length: 6035 15/12/04 10:26:04 INFO yarn.ApplicationMaster: Registered signal handlers for [TERM, HUP, INT] 15/12/04 10:26:05 INFO yarn.ApplicationMaster: ApplicationAttemptId: appattempt_1447700095990_2804_02 15/12/04 10:26:06 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 15/12/04 10:26:06 INFO spark.SecurityManager: Changing view acls to: dev 15/12/04 10:26:06 INFO spark.SecurityManager: Changing modify acls to: dev 15/12/04 10:26:06 INFO spark.SecurityManager: SecurityManager: authentication disabled; ui acls disabled; users with view permissions: Set(dev); users with modify permissions: Set(dev) 15/12/04 10:26:06 INFO yarn.ApplicationMaster: Starting the user application in a separate Thread 15/12/04 10:26:06 INFO yarn.ApplicationMaster: Waiting for spark context initialization 15/12/04 10:26:06 INFO yarn.ApplicationMaster: Waiting for spark context initialization ... 15/12/04 10:26:06 ERROR yarn.ApplicationMaster: User class threw exception: null java.lang.ExceptionInInitializerError at com.toyota.genericmodule.info.Info$.(Info.scala:20) at com.toyota.genericmodule.info.Info$.(Info.scala) at com.toyota.genericmodule.info.Info.main(Info.scala) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:480) Caused by: com.typesafe.config.ConfigException$UnresolvedSubstitution: application.conf: 53: Could not resolve substitution to a value: ${inputdb} at com.typesafe.config.impl.ConfigReference.resolveSubstitutions(ConfigReference.java:84) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.ConfigConcatenation.resolveSubstitutions(ConfigConcatenation.java:178) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.ConfigDelayedMerge.resolveSubstitutions(ConfigDelayedMerge.java:96) at com.typesafe.config.impl.ConfigDelayedMerge.resolveSubstitutions(ConfigDelayedMerge.java:59) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.ResolveSource.lookupSubst(ResolveSource.java:62) at com.typesafe.config.impl.ConfigReference.resolveSubstitutions(ConfigReference.java:73) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.ConfigConcatenation.resolveSubstitutions(ConfigConcatenation.java:178) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.ResolveSource.lookupSubst(ResolveSource.java:62) at com.typesafe.config.impl.ConfigReference.resolveSubstitutions(ConfigReference.java:73) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114) at com.typesafe.config.impl.SimpleConfigObject$1.modifyChildMayThrow(SimpleConfigObject.java:340) at com.typesafe.config.impl.SimpleConfigObject.modifyMayThrow(SimpleConfigObject.java:279) at com.typesafe.config.impl.SimpleConfigObject.resolveSubstitutions(SimpleConfigObject.java:320) at com.typesafe.config.impl.SimpleConfigObject.resolveSubstitutions(SimpleConfigObject.java:24) at com.typesafe.config.impl.ResolveSource.resolveCheckingReplacement(ResolveSource.java:110) at com.typesafe.config.impl.ResolveContext.resolve(ResolveContext.java:114)