'Spark with kubernetes failing for spark upload of code - Cannot get relative path for URI:

I have all these set in spark on conf. doing the spark submit

spark.hadoop.fs.s3a.fast.upload                         true
spark.hadoop.fs.s3a.endpoint                http://server:9000/
spark.hadoop.fs.s3a.access.key              user
spark.hadoop.fs.s3a.secret.key              pass
spark.hadoop.fs.s3a.aws.credentials.provider        org.apache.hadoop.fs.s3a.SimpleAWSCredentialsProvider
spark.kubernetes.container.image.pullSecrets        regcred
spark.kubernetes.file.upload.path           s3a://data/code
spark.hadoop.fs.s3a.impl                org.apache.hadoop.fs.s3a.S3AFileSystem

spark-submit --master k8s://https:k8scluster --deploy-mode cluster  --jars  /apps/externalJars/postgresql.jar --conf spark.kubernetes.namespace=spark --conf spark.kubernetes.authenticate.driver.serviceAccountName=spark --conf spark.kubernetes.container.image=repo/spark:spark3.2.1_hadoop_opensource --conf spark.kubernetes.container.image.pullPolicy=Always --conf spark.hadoop.fs.s3a.path.style.access=true local:///apps/application/Postgres-Minio-Kubernetes.py

I am not sure whats wrong, its failing with the error below

2022-03-28 09:41:58,200 INFO k8s.KubernetesUtils: Uploading file: /apps/externalJars/postgresql.jar to dest: s3a://data/code/spark-upload-c3a3a4c1-6b32-40a0-a814-0fbc2eca060a/postgresql.jar...
2022-03-28 09:41:58,218 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Exception in thread "main" org.apache.spark.SparkException: Uploading file /apps/externalJars/postgresql.jar failed...
    at org.apache.spark.deploy.k8s.KubernetesUtils$.uploadFileUri(KubernetesUtils.scala:296)
    at org.apache.spark.deploy.k8s.KubernetesUtils$.$anonfun$uploadAndTransformFileUris$1(KubernetesUtils.scala:248)
    at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:238)
    at scala.collection.mutable.ResizableArray.foreach(ResizableArray.scala:62)

Caused by: org.apache.spark.SparkException: Error uploading file postgresql.jar
    at org.apache.spark.deploy.k8s.KubernetesUtils$.uploadFileToHadoopCompatibleFS(KubernetesUtils.scala:319)
    at org.apache.spark.deploy.k8s.KubernetesUtils$.uploadFileUri(KubernetesUtils.scala:292)
    ... 30 more
**Caused by: org.apache.hadoop.fs.PathIOException: `Cannot get relative path for URI:file:///apps/externalJars/postgresql.jar': Input/output error**
    at org.apache.hadoop.fs.s3a.impl.CopyFromLocalOperation.getFinalPath(CopyFromLocalOperation.java:360)
    at org.apache.hadoop.fs.s3a.impl.CopyFromLocalOperation.uploadSourceFromFS(CopyFromLocalOperation.java:222)


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source