markhoerth opened a new issue, #10707:
URL: https://github.com/apache/gravitino/issues/10707

   ### Version
   
   main branch
   
   ### Describe what's wrong
   
   While investigating the multi-level namespace issue #10698 , I attempted to 
enable Iceberg support via the Gravitino Spark connector using 
enableIcebergSupport=true on a standard Apache Spark 3.5.5 installation (not 
spark-bin-irc). The connector fails to initialize with the following error at 
session startup:
   
   ### Error message and/or stacktrace
   
   WARN SparkSession: Cannot use 
org.apache.gravitino.spark.connector.iceberg.extensions.GravitinoIcebergSparkSessionExtensions
 to configure session extensions.
   java.lang.NoClassDefFoundError: 
org/apache/spark/sql/execution/datasources/v2/ExtendedDataSourceV2Strategy
   
   ### How to reproduce
   
   Environment:
   
   Gravitino: 1.2.0
   Spark: 3.5.5 (standard Apache distribution)
   Connector JAR: gravitino-spark-connector-runtime-3.5_2.12-1.2.0.jar (Maven, 
19MB, confirmed real fat JAR)
   
   Investigation:
   
   ExtendedDataSourceV2Strategy is present in 
iceberg-spark-runtime-3.5_2.12-1.4.3.jar but not in 1.5.x or 1.6.x
   Tried iceberg-spark-runtime-3.5_2.12 versions 1.4.3, 1.5.2, and 1.6.1 — all 
fail with the same error
   The Gravitino fat JAR contains IcebergExtendedDataSourceV2Strategy which 
depends on ExtendedDataSourceV2Strategy from Iceberg, but the class is not 
visible at runtime regardless of which Iceberg runtime JAR is on the classpath
   The same configuration works with spark-bin-irc (a locally-built Spark 
distribution), but spark-bin-irc is not a public artifact
   
   Documentation gap:
   The docs state "download Iceberg Spark runtime jar to Spark classpath" with 
no version specified and no compatibility matrix. This makes it impossible for 
users to reproduce a working setup from public artifacts alone.
   Request:
   
   Confirm which exact iceberg-spark-runtime version is compatible with 
Gravitino 1.2.0's Spark connector
   Investigate whether the classloader isolation in 
GravitinoIcebergSparkSessionExtensions prevents ExtendedDataSourceV2Strategy 
from being found even when the correct JAR is on the classpath
   Update the docs with explicit version requirements
   
   ### Additional context
   
   _No response_


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to