Uploaded image for project: 'Spark'
  1. Spark
  2. SPARK-13651

Generator outputs are not resolved correctly resulting in runtime error

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 2.0.0
    • SQL
    • None

    Description

      Seq(("id1", "value1")).toDF("key", "value").registerTempTable("src")
      sqlContext.sql("SELECT t1.* FROM src LATERAL VIEW explode(map('key1', 100, 'key2', 200)) t1 AS key, value")

      Running above repro results in :

      java.lang.ClassCastException: java.lang.Integer cannot be cast to org.apache.spark.unsafe.types.UTF8String
      at org.apache.spark.sql.catalyst.expressions.BaseGenericInternalRow$class.getUTF8String(rows.scala:46)
      at org.apache.spark.sql.catalyst.expressions.GenericInternalRow.getUTF8String(rows.scala:221)
      at org.apache.spark.sql.catalyst.expressions.GeneratedClass$SpecificUnsafeProjection.apply(generated.java:42)
      at org.apache.spark.sql.execution.Generate$$anonfun$doExecute$1$$anonfun$apply$9.apply(Generate.scala:98)
      at org.apache.spark.sql.execution.Generate$$anonfun$doExecute$1$$anonfun$apply$9.apply(Generate.scala:96)
      at scala.collection.Iterator$$anon$11.next(Iterator.scala:370)
      at scala.collection.Iterator$$anon$11.next(Iterator.scala:370)
      at scala.collection.Iterator$class.foreach(Iterator.scala:742)
      at scala.collection.AbstractIterator.foreach(Iterator.scala:1194)
      at scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala:59)
      at scala.collection.mutable.ArrayBuffer.$plus$plus$eq(ArrayBuffer.scala:104)
      at scala.collection.mutable.ArrayBuffer.$plus$plus$eq(ArrayBuffer.scala:48)
      at scala.collection.TraversableOnce$class.to(TraversableOnce.scala:308)
      at scala.collection.AbstractIterator.to(Iterator.scala:1194)
      at scala.collection.TraversableOnce$class.toBuffer(TraversableOnce.scala:300)
      at scala.collection.AbstractIterator.toBuffer(Iterator.scala:1194)
      at scala.collection.TraversableOnce$class.toArray(TraversableOnce.scala:287)
      at scala.collection.AbstractIterator.toArray(Iterator.scala:1194)
      at org.apache.spark.rdd.RDD$$anonfun$collect$1$$anonfun$13.apply(RDD.scala:876)
      at org.apache.spark.rdd.RDD$$anonfun$collect$1$$anonfun$13.apply(RDD.scala:876)
      at org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:1794)
      at org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:1794)
      at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:69)
      at org.apache.spark.scheduler.Task.run(Task.scala:82)
      at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:227)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:745)

      Attachments

        Issue Links

          Activity

            People

              dkbiswal Dilip Biswal
              dkbiswal Dilip Biswal
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: