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]

Reply via email to