Uploaded image for project: 'Kylin'
  1. Kylin
  2. KYLIN-4451

ClassCastException when querying on cluster with binary package

    XMLWordPrintableJSON

Details

    • Sprint 49, Sprint 50

    Description

      SELECT seller_id, COUNT(1) 
      FROM kylin_sales 
      GROUP BY seller_id;
      

      kylin.output

      Caused by: java.lang.ClassCastException: cannot assign instance of scala.collection.immutable.List$SerializationProxy to field org.apache.spark.sql.execution.aggregate.HashAggregateExec.aggregateExpressions of type scala.collection.Seq in instance of org.apache.spark.sql.execution.aggregate.HashAggregateExec
      	at java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(ObjectStreamClass.java:2233)
      	at java.io.ObjectStreamClass.setObjFieldValues(ObjectStreamClass.java:1405)
      	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2291)
      	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
      	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
      	at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1973)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1565)
      	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2285)
      	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
      	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
      	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2285)
      	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
      	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
      	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2285)
      	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
      	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
      	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2285)
      	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
      	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
      	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:431)
      	at scala.collection.immutable.List$SerializationProxy.readObject(List.scala:490)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1158)
      	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2176)
      	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
      	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2285)
      	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
      	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
      	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2285)
      	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:2209)
      	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2067)
      	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1571)
      	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:431)
      	at org.apache.spark.serializer.JavaDeserializationStream.readObject(JavaSerializer.scala:75)
      	at org.apache.spark.serializer.JavaSerializerInstance.deserialize(JavaSerializer.scala:114)
      	at org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:88)
      	at org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:55)
      	at org.apache.spark.scheduler.Task.run(Task.scala:121)
      	at org.apache.spark.executor.Executor$TaskRunner$$anonfun$10.apply(Executor.scala:402)
      	at org.apache.spark.util.Utils$.tryWithSafeFinally(Utils.scala:1363)
      	at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:408)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	... 1 more
      

      Now there's a workaround to copy kylin-spark-common-4.0.0-SNAPSHOT.jar from $KYLIN_HOME/tomcat/webapp/kylin/WEB-INF/lib to $SPARK_HOME/jars

      Attachments

        Issue Links

          Activity

            People

              wangrupeng Wang Rupeng
              kaiqi xuekaiqi
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - 24h
                  24h
                  Remaining:
                  Remaining Estimate - 24h
                  24h
                  Logged:
                  Time Spent - Not Specified
                  Not Specified