lasdf1234 opened a new issue, #13133: URL: https://github.com/apache/gravitino/issues/13133
### Version main branch ### Describe what's wrong Built-in Iceberg maintenance job templates configure `IcebergSparkSessionExtensions` / `SparkCatalog`, but do not ship `iceberg-spark-runtime`, and templates leave `jars` empty. Spark only warns when the extension class is missing, so jobs continue without Iceberg support. Additionally: 1. JSON parse errors in update-stats jobs report `--json-options` instead of the real flags (`--updater-options` / `--spark-conf`). 2. Empty or unresolved optional placeholders stay in the runtime command as dangling flags (for example `--updater-options --spark-conf`). ### Error message and/or stacktrace ```text WARN SparkSession: Cannot use org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions ... java.lang.ClassNotFoundException: org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions ``` And/or misleading parse errors such as `Option --json-options ...` when the CLI flag is actually `--updater-options`. ### How to reproduce 1. Run a built-in Iceberg job (`builtin-iceberg-update-stats` / rewrite / expire) against a stock Spark install without `iceberg-spark-runtime` on the classpath. 2. Submit with optional `updater_options` / `spark_conf` / similar placeholders omitted or empty, and inspect the generated spark-submit args. ### Additional context Prefer documenting that operators must supply a version-matched `iceberg-spark-runtime` (for example via `spark.jars`), rather than hardcoding jars into templates. Jobs should fail fast when Iceberg Spark classes are missing. -- 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]
