https://delta.io logo
r

Rambabu Posa

05/05/2023, 8:12 PM
Hi, I’m trying to covert a
parquet
file to
delta
using the below code snippet
Copy code
public static void main(String[] args){

        SparkConf conf = new SparkConf();
        conf.setAppName("Parquet to Delta Converter");
        conf.setMaster("local[*]");

        SparkSession session = SparkSession.builder()
                .config("spark.sql.extensions", "io.delta.sql.DeltaSparkSessionExtension")
                .config("spark.sql.catalog.spark_catalog", "org.apache.spark.sql.delta.catalog.DeltaCatalog")
                .config(conf)
                .getOrCreate();

        DeltaTable.convertToDelta(session, "parquet.`table/betting`");

        session.stop();
    }
All my parquet files are available at
table/betting
. but getting this error:
Copy code
java.lang.NoSuchMethodError: org.apache.spark.sql.execution.datasources.parquet.ParquetToSparkSchemaConverter$.$lessinit$greater$default$4()Z
	at org.apache.spark.sql.delta.commands.ParquetTable.$anonfun$mergeSchemasInParallel$2(ConvertToDeltaCommand.scala:595)
	at org.apache.spark.rdd.RDD.$anonfun$mapPartitions$2(RDD.scala:855)
	at org.apache.spark.rdd.RDD.$anonfun$mapPartitions$2$adapted(RDD.scala:855)
	at org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:52)
	at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:365)
	at org.apache.spark.rdd.RDD.iterator(RDD.scala:329)
	at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:90)
	at org.apache.spark.scheduler.Task.run(Task.scala:136)
	at org.apache.spark.executor.Executor$TaskRunner.$anonfun$run$3(Executor.scala:548)
	at org.apache.spark.util.Utils$.tryWithSafeFinally(Utils.scala:1504)
	at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:551)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Many thanks
t

Theo LEBRUN

05/05/2023, 8:17 PM
Sounds like the Spark version used for runtime and development are different. I would check the versions and make sure they’re all the same.
r

Rambabu Posa

05/05/2023, 8:29 PM
Thanks @Theo LEBRUN am using this pom.xml
Copy code
<dependencies>  
    <dependency>  
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-core_2.12</artifactId>
      <version>3.3.0</version>
    </dependency>
    <dependency>
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-sql_2.12</artifactId>
      <version>3.3.0</version>
    </dependency>
    <dependency>
      <groupId>io.delta</groupId>
      <artifactId>delta-core_2.12</artifactId>
      <version>2.3.0</version>
    </dependency>
    <dependency>
      <groupId>io.delta</groupId>
      <artifactId>delta-contribs_2.12</artifactId>
      <version>2.3.0</version>
    </dependency>
  </dependencies>
Am running this application in my local machine
t

Theo LEBRUN

05/05/2023, 8:34 PM
try with Spark version
3.3.2
instead of
3.3.0
1
20 Views