yuqi1129 opened a new issue, #14335: URL: https://github.com/apache/gravitino/issues/14335
### Describe the subtask Two small P2 items from #13303 (rows 8 and 10 of the priority comment): 1. **Job and job template deletes leave owner and privilege rows live.** `JobMetaService.deleteJob` leaves the job's `owner_meta` row. `JobTemplateMetaService.deleteJobTemplate` leaves the template's `owner_meta` and `role_meta_securable_object` rows and the owner rows of the jobs it deletes with it. The orphan relation GC collects them eventually, but until then a role still lists a privilege on a template that no longer exists. Fix: soft-delete these rows in the same transaction as the delete, as the policy and model deletes do. 2. **The load path has no guard for a catalog that returns `columns() == null`.** `updateColumnsIfNecessary` treats a missing column list as "all columns dropped", which would delete every column with its tags, policies and owners. This is not reachable today, because `DTOConverters.toDTO(Table)` throws an NPE on `null` columns first, so such a load fails. Fix: keep `null` in `toDTO`, and keep the stored columns when the catalog reports no column list. ### Parent issue https://github.com/apache/gravitino/issues/13303 -- 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]
