Rajesh Balamohan created SPARK-14752:
----------------------------------------

             Summary: LazilyGenerateOrdering throws NullPointerException with 
TakeOrderedAndProject
                 Key: SPARK-14752
                 URL: https://issues.apache.org/jira/browse/SPARK-14752
             Project: Spark
          Issue Type: Bug
          Components: SQL
            Reporter: Rajesh Balamohan


codebase: spark master

DataSet: TPC-DS

Client: $SPARK_HOME/bin/beeline

Example query to reproduce the issue:  
select i_item_id from item order by i_item_id limit 10;

Explain plan output
{noformat}
explain select i_item_id from item order by i_item_id limit 10;
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--+
|                                                                               
                                                          plan                  
                                                                                
                                       |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--+
| == Physical Plan ==
TakeOrderedAndProject(limit=10, orderBy=[i_item_id#1229 ASC], 
output=[i_item_id#1229])
+- WholeStageCodegen
   :  +- Project [i_item_id#1229]
   :     +- Scan HadoopFiles[i_item_id#1229] Format: ORC, PushedFilters: [], 
ReadSchema: struct<i_item_id:string>  |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+--+
{noformat}

Exception:
{noformat}
TaskResultGetter: Exception while getting task result
com.esotericsoftware.kryo.KryoException: java.lang.NullPointerException
Serialization trace:
underlying (org.apache.spark.util.BoundedPriorityQueue)
        at 
com.esotericsoftware.kryo.serializers.ObjectField.read(ObjectField.java:144)
        at 
com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:551)
        at com.esotericsoftware.kryo.Kryo.readClassAndObject(Kryo.java:790)
        at com.twitter.chill.SomeSerializer.read(SomeSerializer.scala:25)
        at com.twitter.chill.SomeSerializer.read(SomeSerializer.scala:19)
        at com.esotericsoftware.kryo.Kryo.readClassAndObject(Kryo.java:790)
        at 
org.apache.spark.serializer.KryoSerializerInstance.deserialize(KryoSerializer.scala:312)
        at 
org.apache.spark.scheduler.DirectTaskResult.value(TaskResult.scala:87)
        at 
org.apache.spark.scheduler.TaskResultGetter$$anon$2$$anonfun$run$1.apply$mcV$sp(TaskResultGetter.scala:66)
        at 
org.apache.spark.scheduler.TaskResultGetter$$anon$2$$anonfun$run$1.apply(TaskResultGetter.scala:57)
        at 
org.apache.spark.scheduler.TaskResultGetter$$anon$2$$anonfun$run$1.apply(TaskResultGetter.scala:57)
        at org.apache.spark.util.Utils$.logUncaughtExceptions(Utils.scala:1791)
        at 
org.apache.spark.scheduler.TaskResultGetter$$anon$2.run(TaskResultGetter.scala:56)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
        at 
org.apache.spark.sql.catalyst.expressions.codegen.LazilyGeneratedOrdering.compare(GenerateOrdering.scala:157)
        at 
org.apache.spark.sql.catalyst.expressions.codegen.LazilyGeneratedOrdering.compare(GenerateOrdering.scala:148)
        at scala.math.Ordering$$anon$4.compare(Ordering.scala:111)
        at java.util.PriorityQueue.siftUpUsingComparator(PriorityQueue.java:669)
        at java.util.PriorityQueue.siftUp(PriorityQueue.java:645)
        at java.util.PriorityQueue.offer(PriorityQueue.java:344)
        at java.util.PriorityQueue.add(PriorityQueue.java:321)
        at 
com.twitter.chill.java.PriorityQueueSerializer.read(PriorityQueueSerializer.java:78)
        at 
com.twitter.chill.java.PriorityQueueSerializer.read(PriorityQueueSerializer.java:31)
        at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:708)
        at 
com.esotericsoftware.kryo.serializers.ObjectField.read(ObjectField.java:125)
{noformat}



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

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to