Stephen0421 opened a new pull request, #9812: URL: https://github.com/apache/paimon/pull/9812
### Purpose Stacked on #9609. Adds Spark `CALL sys.remove_orphan_blobs` for unreferenced primary-key `.managed.blob` packs. - `local` reuses `LocalManagedBlobOrphanFilesClean.executeDatabase` - `distributed` runs a Spark DAG on the same used-pack / sidecar scan as Core (`emitUsedPacks`, pack identity, `SKIP_MANAGED_BLOB_GC`) - Abort if topology or the used-pack set changes; persist mark caches and keep abort keys in the deletion DAG so Spark cache recomputation cannot drop a live pack - `database.*` is one Spark job per table (serial + unpersist), not a union of every table, so abort gates stay per-table - `parallelism` is validated before mode dispatch; docs describe per-mode concurrency (`distributed` stays within the per-table value, `local` may exceed it when several tables run at once) ### Tests - local / distributed: delete unreferenced packs, dry-run, skip GC when sidecar is missing - `database.*` for both modes - reject non-positive parallelism - distributed abort / cache-recompute / used-set freeze / sidecar identity -- 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]
