You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Shenghua Wan (JIRA)" <ji...@apache.org> on 2014/12/15 20:27:13 UTC
[jira] [Created] (SPARK-4854) Custom UDTF with Lateral View throws
ClassNotFound exception in Spark SQL CLI
Shenghua Wan created SPARK-4854:
-----------------------------------
Summary: Custom UDTF with Lateral View throws ClassNotFound exception in Spark SQL CLI
Key: SPARK-4854
URL: https://issues.apache.org/jira/browse/SPARK-4854
Project: Spark
Issue Type: Bug
Affects Versions: 1.1.0, 1.1.1
Reporter: Shenghua Wan
Hello,
I met a problem when using Spark sql CLI. A custom UDTF with lateral view throws ClassNotFound exception. I did a couple of experiments in same environment (spark version 1.1.0, 1.1.1):
select + same custom UDTF (Passed)
select + lateral view + custom UDTF (ClassNotFoundException)
select + lateral view + built-in UDTF (Passed)
I have done some googling there days and found one related issue ticket of Spark
https://issues.apache.org/jira/browse/SPARK-4811
which is about "Custom UDTFs not working in Spark SQL".
It should be helpful to put actual code here to reproduce the problem. However, corporate regulations might prohibit this. So sorry about this. Directly using explode's source code in a jar will help anyway.
Here is a portion of stack print when exception, just in case:
java.lang.ClassNotFoundException: XXX
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at org.apache.spark.sql.hive.HiveFunctionFactory$class.createFunction(hiveUdfs.scala:81)
at org.apache.spark.sql.hive.HiveGenericUdtf.createFunction(hiveUdfs.scala:247)
at org.apache.spark.sql.hive.HiveGenericUdtf.function$lzycompute(hiveUdfs.scala:254)
at org.apache.spark.sql.hive.HiveGenericUdtf.function(hiveUdfs.scala:254)
at org.apache.spark.sql.hive.HiveGenericUdtf.outputInspectors$lzycompute(hiveUdfs.scala:261)
at org.apache.spark.sql.hive.HiveGenericUdtf.outputInspectors(hiveUdfs.scala:260)
at org.apache.spark.sql.hive.HiveGenericUdtf.outputDataTypes$lzycompute(hiveUdfs.scala:265)
at org.apache.spark.sql.hive.HiveGenericUdtf.outputDataTypes(hiveUdfs.scala:265)
at org.apache.spark.sql.hive.HiveGenericUdtf.makeOutput(hiveUdfs.scala:269)
at org.apache.spark.sql.catalyst.expressions.Generator.output(generators.scala:60)
at org.apache.spark.sql.catalyst.plans.logical.Generate$$anonfun$1.apply(basicOperators.scala:50)
at org.apache.spark.sql.catalyst.plans.logical.Generate$$anonfun$1.apply(basicOperators.scala:50)
at scala.Option.map(Option.scala:145)
at org.apache.spark.sql.catalyst.plans.logical.Generate.generatorOutput(basicOperators.scala:50)
at org.apache.spark.sql.catalyst.plans.logical.Generate.output(basicOperators.scala:60)
at org.apache.spark.sql.catalyst.plans.logical.LogicalPlan$$anonfun$resolveChildren$1.apply(LogicalPlan.scala:79)
at org.apache.spark.sql.catalyst.plans.logical.LogicalPlan$$anonfun$resolveChildren$1.apply(LogicalPlan.scala:79)
at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:251)
at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:251)
at scala.collection.immutable.List.foreach(List.scala:318)
at scala.collection.TraversableLike$class.flatMap(TraversableLike.scala:251)
at scala.collection.AbstractTraversable.flatMap(Traversable.scala:105)
....the rest is omitted.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org