[ 
https://issues.apache.org/jira/browse/SPARK-13202?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15133142#comment-15133142
 ] 

Michael Schmitz commented on SPARK-13202:
-----------------------------------------

This issue sounds very similar to what was reported on the Spark mailing list 
in September. 
https://mail-archives.apache.org/mod_mbox/spark-user/201509.mbox/%3CCACeHY2WoJ=5yr8c6m6dsipb9ibadfpxrm4dzpebkkfetcnk...@mail.gmail.com%3E

> Jars specified with --jars do not exist on the worker classpath.
> ----------------------------------------------------------------
>
>                 Key: SPARK-13202
>                 URL: https://issues.apache.org/jira/browse/SPARK-13202
>             Project: Spark
>          Issue Type: Bug
>          Components: Spark Shell
>    Affects Versions: 1.5.2, 1.6.0
>            Reporter: Michael Schmitz
>
> I have a Spark Scala 2.11 application.  To deploy it to the cluster, I create 
> a jar of the dependencies and a jar of the project (although this problem 
> still manifests if I create a single jar with everything).  I will focus on 
> problems specific to Spark Shell, but I'm pretty sure they also apply to 
> Spark Submit.
> I can get Spark Shell to work with my application, however I need to set 
> spark.executor.extraClassPath.  From reading the documentation 
> (http://spark.apache.org/docs/latest/configuration.html#runtime-environment) 
> it sounds like I shouldn't need to set this option ("Users typically should 
> not need to set this option.") After reading about --jars, I understand that 
> this should set the classpath for the workers to use the jars that are synced 
> to those machines.
> When I don't set spark.executor.extraClassPath, I get a kryo registrator 
> exception with the root cause being that a class is not found.
>     java.io.IOException: org.apache.spark.SparkException: Failed to register 
> classes with Kryo
>     java.lang.ClassNotFoundException: org.allenai.common.Enum
> If I SSH into the workers, I can see that we did create directories that 
> contain the jars specified by --jars.
>     /opt/data/spark/worker/app-20160204212742-0002/0
>     /opt/data/spark/worker/app-20160204212742-0002/1
> Now, if I re-run spark-shell but with `--conf 
> spark.executor.extraClassPath=/opt/data/spark/worker/app-20160204212742-0002/0/myjar.jar`,
>  my job will succeed.  In other words, if I put my jars at a location that is 
> available to all the workers and specify that as an extra executor class 
> path, the job succeeds.
> Unfortunately, this means that the jars are being copied to the workers for 
> no reason.  How can I get --jars to add the jars it copies to the workers to 
> the classpath?



--
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