Skip to content

ClassNotFoundException when using SparkBatchClient #1071

Open
@ShahdNara

Description

@ShahdNara

My goal is to trigger a .NET Spark job programmatically. I'm following this tutorial , but I keep getting ClassNotFoundException (for my WordCount C# class).
It works only when I trigger the Spark job using Synapse Studio UI (by creating an Apache Spark Job definition).

The .zip file for the .NET application has the .dll for the class.

Code

SparkBatchClient client = new SparkBatchClient(new Uri(endpoint), sparkPoolName, new DefaultAzureCredential());

string name = "name";
string file = "abfss://xxx.core.windows.net/jobs/WordCount.zip";

SparkBatchJobOptions request = new SparkBatchJobOptions(name, file)
{
    ClassName = "WordCount",
    DriverMemory = "28g",
    DriverCores = 4,
    ExecutorMemory = "28g",
    ExecutorCores = 4,
    ExecutorCount = 2
};

SparkBatchOperation createOperation = await client.StartCreateSparkBatchJobAsync(request);
SparkBatchJob jobCreated = await createOperation.WaitForCompletionAsync();

Error
Livy:
22/06/14 20:36:58 WARN DependencyUtils: Skip remote jar abfss://xxx.core.windows.net/jobs/WordCount.zip.

Driver (stderr):

22/06/13 19:54:27 ERROR ApplicationMaster: Uncaught exception: 
java.lang.ClassNotFoundException: WordCount
	at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
	at org.apache.spark.deploy.yarn.ApplicationMaster.startUserApplication(ApplicationMaster.scala:722)
	at org.apache.spark.deploy.yarn.ApplicationMaster.runDriver(ApplicationMaster.scala:496)
	at org.apache.spark.deploy.yarn.ApplicationMaster.run(ApplicationMaster.scala:268)
	at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$3.run(ApplicationMaster.scala:905)
	at org.apache.spark.deploy.yarn.ApplicationMaster$$anon$3.run(ApplicationMaster.scala:904)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:422)
	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1732)
	at org.apache.spark.deploy.yarn.ApplicationMaster$.main(ApplicationMaster.scala:904)
	at org.apache.spark.deploy.yarn.ApplicationMaster.main(ApplicationMaster.scala)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions