You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Praveen Rachabattuni (JIRA)" <ji...@apache.org> on 2014/09/22 12:43:33 UTC

[jira] [Created] (PIG-4192) Make ruby udf's work with Spark

Praveen Rachabattuni created PIG-4192:
-----------------------------------------

             Summary: Make ruby udf's work with Spark
                 Key: PIG-4192
                 URL: https://issues.apache.org/jira/browse/PIG-4192
             Project: Pig
          Issue Type: New Feature
          Components: spark
            Reporter: Praveen Rachabattuni


Related e2e tests: RubyUDFs_1 - RubyUDFs_13

Sample script: 
register './libexec/ruby/scriptingudfs.rb' using jruby as myfuncs;
a = load '/user/pig/tests/data/singlefile/studenttab10k' using PigStorage() as (name, age:int, gpa:double);
b = foreach a generate myfuncs.square(age);
store b into '/user/pig/out/praveenr-1411382446-nightly.conf/RubyUDFs_1.out';

Pig Stack Trace
---------------
ERROR 0: org.apache.spark.SparkException: Job aborted: Task 0.0:0 failed 1 times (most recent failure: Exception failure: java.lang.RuntimeException: org.apache.pig.backend.executionengine.ExecException: ERROR 0: Exception while executing [POUserFunc (Name: POUserFunc(org.apache.pig.scripting.jruby.JrubyEvalFunc)[int] - scope-3 Operator Key: scope-3) children: null at []]: java.lang.NullPointerException)

org.apache.pig.backend.executionengine.ExecException: ERROR 0: org.apache.spark.SparkException: Job aborted: Task 0.0:0 failed 1 times (most recent failure: Exception failure: java.lang.RuntimeException: org.apache.pig.backend.executionengine.ExecException: ERROR 0: Exception while executing [POUserFunc (Name: POUserFunc(org.apache.pig.scripting.jruby.JrubyEvalFunc)[int] - scope-3 Operator Key: scope-3) children: null at []]: java.lang.NullPointerException)
	at org.apache.pig.backend.hadoop.executionengine.HExecutionEngine.launchPig(HExecutionEngine.java:285)
	at org.apache.pig.PigServer.launchPlan(PigServer.java:1378)
	at org.apache.pig.PigServer.executeCompiledLogicalPlan(PigServer.java:1363)
	at org.apache.pig.PigServer.execute(PigServer.java:1352)
	at org.apache.pig.PigServer.executeBatch(PigServer.java:403)
	at org.apache.pig.PigServer.executeBatch(PigServer.java:386)
	at org.apache.pig.tools.grunt.GruntParser.executeBatch(GruntParser.java:170)
	at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:233)
	at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:204)
	at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:81)
	at org.apache.pig.Main.run(Main.java:611)
	at org.apache.pig.Main.main(Main.java:164)
Caused by: org.apache.spark.SparkException: Job aborted: Task 0.0:0 failed 1 times (most recent failure: Exception failure: java.lang.RuntimeException: org.apache.pig.backend.executionengine.ExecException: ERROR 0: Exception while executing [POUserFunc (Name: POUserFunc(org.apache.pig.scripting.jruby.JrubyEvalFunc)[int] - scope-3 Operator Key: scope-3) children: null at []]: java.lang.NullPointerException)
	at org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$abortStage$1.apply(DAGScheduler.scala:1028)
	at org.apache.spark.scheduler.DAGScheduler$$anonfun$org$apache$spark$scheduler$DAGScheduler$$abortStage$1.apply(DAGScheduler.scala:1026)
	at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
	at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
	at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$abortStage(DAGScheduler.scala:1026)
	at org.apache.spark.scheduler.DAGScheduler$$anonfun$processEvent$10.apply(DAGScheduler.scala:619)
	at org.apache.spark.scheduler.DAGScheduler$$anonfun$processEvent$10.apply(DAGScheduler.scala:619)
	at scala.Option.foreach(Option.scala:236)
	at org.apache.spark.scheduler.DAGScheduler.processEvent(DAGScheduler.scala:619)
	at org.apache.spark.scheduler.DAGScheduler$$anonfun$start$1$$anon$2$$anonfun$receive$1.applyOrElse(DAGScheduler.scala:207)
	at akka.actor.ActorCell.receiveMessage(ActorCell.scala:498)
	at akka.actor.ActorCell.invoke(ActorCell.scala:456)
	at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:237)
	at akka.dispatch.Mailbox.run(Mailbox.scala:219)
	at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:386)
	at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
	at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
	at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
	at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
================================================================================




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