You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Kohki Nishio (JIRA)" <ji...@apache.org> on 2017/02/21 07:10:44 UTC

[jira] [Reopened] (SPARK-19675) ExecutorClassLoader loads classes from SystemClassLoader

     [ https://issues.apache.org/jira/browse/SPARK-19675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kohki Nishio reopened SPARK-19675:
----------------------------------

SBT can manage 2.11 applications, an applicaiton runs completely with 2.11 binary however SBT is built on top of 2.10. 

If application handles ClassLoaders properly, the sbt-launch jar will never cause a problem, however this is an issue inside ExecutorClassLoader implementation.

> ExecutorClassLoader loads classes from SystemClassLoader
> --------------------------------------------------------
>
>                 Key: SPARK-19675
>                 URL: https://issues.apache.org/jira/browse/SPARK-19675
>             Project: Spark
>          Issue Type: Bug
>          Components: Spark Core
>    Affects Versions: 2.1.0, 2.2.0
>         Environment: sbt / Play Framework
>            Reporter: Kohki Nishio
>            Priority: Minor
>
> Spark Executor loads classes from SystemClassLoader which contains sbt-launch.jar and it contains Scala2.10 binary, however Spark itself is built on Scala2.11, thus it's throwing InvalidClassException
> java.io.InvalidClassException: scala.Option; local class incompatible: stream classdesc serialVersionUID = -114498752079829388, local class serialVersionUID = 5081326844987135632
> 	at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:616)
> 	at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1630)
> 	at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1521)
> 	at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1630)
> 	at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1521)
> 	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1781)
> 	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
> 	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2018)
> 	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1942)
> 	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)
> ExecutorClassLoader's desired class loder (parentLoader) actually contains the correct path (scala-library-2.11.8.jar) but it is not being used.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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