lasdf1234 opened a new pull request, #14224: URL: https://github.com/apache/gravitino/pull/14224
### What changes were proposed in this pull request? Standalone B8 Spark job slice on `branch-tms-scheduler` (depends on A2 metrics/finish REST already on this branch). - Built-in `IcebergMaintenanceJob` template `builtin-iceberg-maintenance-task` - Metrics / finish callbacks via `MaintenanceActionHttpClient` in `:maintenance:jobs` (`HttpURLConnection` only — does not extend `GravitinoClient` and does not use `client-java`) - Auth reuses iceberg-update-stats `GravitinoAuthSettings` (`--updater-options`: `none` / `simple` / `basic` / `oauth`) - Job id from local staging directory (`job-<id>`), optional `GRAVITINO_JOB_ID` env; `JobHandle` / `JobManager` unchanged - Local trigger re-check via `MaintenanceTriggerGate` + enqueue-time `rules` ### Why are the changes needed? Cron/commit submit pipelines need a single built-in Spark entry for S0/S1 metrics callbacks and Iceberg procedures without growing the public Java client or job runtime. Fix: #14020 Related: #13760 ### Does this PR introduce _any_ user-facing change? No. The callback HTTP client is internal to the maintenance Spark job. ### How was this patch tested? `./gradlew :maintenance:jobs:compileJava :maintenance:jobs:compileTestJava -PskipITs` `./gradlew :maintenance:jobs:test --tests org.apache.gravitino.maintenance.jobs.TestMaintenanceActionHttpClient --tests org.apache.gravitino.maintenance.jobs.iceberg.TestIcebergMaintenanceJob --tests org.apache.gravitino.maintenance.jobs.iceberg.TestMaintenanceTriggerGate -PskipITs -PskipDockerTests=true` Made with [Cursor](https://cursor.com) -- 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]
