Incase if you are facing the Exception : java.lang.Interruption after executing the workflow then use the below spark configuration before executing the workflow inorder to resolve the issue :
–conf spark.sql.legacy.timeParserPolicy=LEGACY
–conf spark.sql.parquet.int96RebaseModeInRead=CORRECTED
–conf spark.sql.parquet.int96RebaseModeInWrite=CORRECTED
–executor-memory 20g
–executor-cores 4
–num-executors 6
What each config means :
-
spark.sql.legacy.timeParserPolicy=LEGACY
→ Allows backward-compatible date/time parsing (important for old timestamps) -
spark.sql.parquet.int96RebaseModeInRead=CORRECTED
→ Correct handling of INT96 timestamps when reading Parquet -
spark.sql.parquet.int96RebaseModeInWrite=CORRECTED
→ Correct handling of INT96 timestamps when writing Parquet -
--executor-memory 20g
→ Each executor gets 20 GB RAM -
--executor-cores 4
→ Each executor uses 4 CPU cores -
--num-executors 6
→ Total 6 executors in the Spark job
