roryqi opened a new issue, #11363: URL: https://github.com/apache/gravitino/issues/11363
### Describe the subtask Wire the async cleanup engine (#11298) into the Iceberg REST request path — the final PR (3 of 3) of the async hard-deletion feature. - Branch `IcebergTableOperationExecutor.dropTable` on the `X-Gravitino-Async-Purge` request header: absent ⇒ synchronous purge (today's default); `true` (auxiliary mode) ⇒ snapshot the table's metadata location, drop the catalog entry, and enqueue an `IcebergCleanupJob` keyed by catalog id instead of deleting files inline. - Enforce the §5.7 name-reuse tombstone: while an active cleanup job occupies an identifier, `createTable` / `registerTable` for the same catalog/namespace/table return `409 Conflict`. - Expose the table metadata location and FileIO config on `IcebergCatalogWrapper`, carry the async flag on `IcebergRequestContext`, and start/stop `IcebergCleanupManager` in `RESTService` (auxiliary mode only; standalone falls back to synchronous purge). - Document the async semantics, the `X-Gravitino-Async-Purge` header, and the `async-cleanup.*` config. Design: `design-docs/async-iceberg-rest-hard-deletion.md` (§5.3, §5.7, §5.10). Prior PRs: persistence layer (#11266, merged), cleanup manager (#11298, merged). ### Parent issue #11265 -- 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]
