<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Discrepancies between official spark 3.3.2 and what's provided in Databricks Runtime 12.2 LTS le in missing-QuestionPost</title>
    <link>https://community.databricks.com/t5/missing-questionpost/discrepancies-between-official-spark-3-3-2-and-what-s-provided/m-p/56936#M129</link>
    <description>&lt;P&gt;I ran into the same issue&lt;BR /&gt;Did you happen to find any fix?&lt;/P&gt;</description>
    <pubDate>Thu, 11 Jan 2024 10:12:50 GMT</pubDate>
    <dc:creator>OsamaNabih</dc:creator>
    <dc:date>2024-01-11T10:12:50Z</dc:date>
    <item>
      <title>Discrepancies between official spark 3.3.2 and what's provided in Databricks Runtime 12.2 LTS leads to NoSuchMethodError when creating ParquetToSparkSchemaConverter</title>
      <link>https://community.databricks.com/t5/missing-questionpost/discrepancies-between-official-spark-3-3-2-and-what-s-provided/m-p/2678#M1</link>
      <description>&lt;P&gt;I am trying to run my spark-dependent application on a Databricks cluster:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;spark-3.3.2&lt;/LI&gt;&lt;LI&gt;on a cluster with Databricks Runtime 12.2 LTS (spark-3.3.2, scala-2.12)&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;I end up with:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NoSuchMethodError: org.apache.spark.sql.execution.datasources.parquet.ParquetToSparkSchemaConverter$.$lessinit$greater$default$4()Z&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It seems that the spark included in Databricks Runtime 12.2 LTS does not include the commit that changed the definition of ParquetToSparkSchemaConverter: &lt;A href="https://issues.apache.org/jira/browse/SPARK-40819" target="test_blank"&gt;https://issues.apache.org/jira/browse/SPARK-40819&lt;/A&gt; (spark github: &lt;A href="https://github.com/apache/spark/blame/a7bbaca013ad1ae92a437b12206fadfe93fea10f/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/parquet/ParquetSchemaConverter.scala#L58)" target="test_blank"&gt;https://github.com/apache/spark/blame/a7bbaca013ad1ae92a437b12206fadfe93fea10f/sql/core/src/main/scala/org/apache/spark/sql/execution/datasources/parquet/ParquetSchemaConverter.scala#L58)&lt;/A&gt; . Anyway the difference can be spotted by comparing the release notes of both spark and Databricks Runtime:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;A href="https://spark.apache.org/releases/spark-release-3-3-2.html" target="test_blank"&gt;https://spark.apache.org/releases/spark-release-3-3-2.html&lt;/A&gt;&lt;/LI&gt;&lt;LI&gt;&lt;A href="https://docs.databricks.com/release-notes/runtime/12.2.html" target="test_blank"&gt;https://docs.databricks.com/release-notes/runtime/12.2.html&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anyway, I investigated the case further and disassembled the class that comes with spark 3.3.2&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;```&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Compiled from "ParquetSchemaConverter.scala"&lt;/P&gt;&lt;P&gt;public class org.apache.spark.sql.execution.datasources.parquet.ParquetToSparkSchemaConverter {&lt;/P&gt;&lt;P&gt;  private final boolean assumeBinaryIsString;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  private final boolean assumeInt96IsTimestamp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  private final boolean caseSensitive;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  private final boolean nanosAsLong;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  public static boolean $lessinit$greater$default$4();&lt;/P&gt;&lt;P&gt;    Code:&lt;/P&gt;&lt;P&gt;       0: getstatic     #85                 // Field org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.MODULE$:Lorg/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$;&lt;/P&gt;&lt;P&gt;       3: invokevirtual #87                 // Method org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.$lessinit$greater$default$4:()Z&lt;/P&gt;&lt;P&gt;       6: ireturn&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  public static boolean $lessinit$greater$default$3();&lt;/P&gt;&lt;P&gt;    Code:&lt;/P&gt;&lt;P&gt;       0: getstatic     #85                 // Field org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.MODULE$:Lorg/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$;&lt;/P&gt;&lt;P&gt;       3: invokevirtual #90                 // Method org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.$lessinit$greater$default$3:()Z&lt;/P&gt;&lt;P&gt;       6: ireturn&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  public static boolean $lessinit$greater$default$2();&lt;/P&gt;&lt;P&gt;    Code:&lt;/P&gt;&lt;P&gt;       0: getstatic     #85                 // Field org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.MODULE$:Lorg/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$;&lt;/P&gt;&lt;P&gt;       3: invokevirtual #93                 // Method org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.$lessinit$greater$default$2:()Z&lt;/P&gt;&lt;P&gt;       6: ireturn&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  public static boolean $lessinit$greater$default$1();&lt;/P&gt;&lt;P&gt;    Code:&lt;/P&gt;&lt;P&gt;       0: getstatic     #85                 // Field org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.MODULE$:Lorg/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$;&lt;/P&gt;&lt;P&gt;       3: invokevirtual #96                 // Method org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.$lessinit$greater$default$1:()Z&lt;/P&gt;&lt;P&gt;       6: ireturn&lt;/P&gt;&lt;P&gt;```&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When check on the Databricks-provided jar:&lt;/P&gt;&lt;P&gt;```&lt;/P&gt;&lt;P&gt;Compiled from "ParquetSchemaConverter.scala"&lt;/P&gt;&lt;P&gt;public class org.apache.spark.sql.execution.datasources.parquet.ParquetToSparkSchemaConverter {&lt;/P&gt;&lt;P&gt;  private final boolean assumeBinaryIsString;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  private final boolean assumeInt96IsTimestamp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  private final boolean caseSensitive;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  public static boolean $lessinit$greater$default$3();&lt;/P&gt;&lt;P&gt;    Code:&lt;/P&gt;&lt;P&gt;       0: getstatic     #84                 // Field org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.MODULE$:Lorg/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$;&lt;/P&gt;&lt;P&gt;       3: invokevirtual #86                 // Method org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.$lessinit$greater$default$3:()Z&lt;/P&gt;&lt;P&gt;       6: ireturn&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  public static boolean $lessinit$greater$default$2();&lt;/P&gt;&lt;P&gt;    Code:&lt;/P&gt;&lt;P&gt;       0: getstatic     #84                 // Field org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.MODULE$:Lorg/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$;&lt;/P&gt;&lt;P&gt;       3: invokevirtual #89                 // Method org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.$lessinit$greater$default$2:()Z&lt;/P&gt;&lt;P&gt;       6: ireturn&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  public static boolean $lessinit$greater$default$1();&lt;/P&gt;&lt;P&gt;    Code:&lt;/P&gt;&lt;P&gt;       0: getstatic     #84                 // Field org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.MODULE$:Lorg/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$;&lt;/P&gt;&lt;P&gt;       3: invokevirtual #92                 // Method org/apache/spark/sql/execution/datasources/parquet/ParquetToSparkSchemaConverter$.$lessinit$greater$default$1:()Z&lt;/P&gt;&lt;P&gt;       6: ireturn&lt;/P&gt;&lt;P&gt;```&lt;/P&gt;&lt;P&gt;So in fact `public static boolean $lessinit$greater$default$4()` is &lt;B&gt;&lt;U&gt;NOT&lt;/U&gt; &lt;/B&gt;present. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can someone confirm that this change is in fact expected? How should that be handled &lt;/P&gt;</description>
      <pubDate>Fri, 23 Jun 2023 13:33:09 GMT</pubDate>
      <guid>https://community.databricks.com/t5/missing-questionpost/discrepancies-between-official-spark-3-3-2-and-what-s-provided/m-p/2678#M1</guid>
      <dc:creator>396827</dc:creator>
      <dc:date>2023-06-23T13:33:09Z</dc:date>
    </item>
    <item>
      <title>Re: Discrepancies between official spark 3.3.2 and what's provided in Databricks Runtime 12.2 LTS le</title>
      <link>https://community.databricks.com/t5/missing-questionpost/discrepancies-between-official-spark-3-3-2-and-what-s-provided/m-p/56936#M129</link>
      <description>&lt;P&gt;I ran into the same issue&lt;BR /&gt;Did you happen to find any fix?&lt;/P&gt;</description>
      <pubDate>Thu, 11 Jan 2024 10:12:50 GMT</pubDate>
      <guid>https://community.databricks.com/t5/missing-questionpost/discrepancies-between-official-spark-3-3-2-and-what-s-provided/m-p/56936#M129</guid>
      <dc:creator>OsamaNabih</dc:creator>
      <dc:date>2024-01-11T10:12:50Z</dc:date>
    </item>
  </channel>
</rss>

