yuqi1129 opened a new issue, #13174: URL: https://github.com/apache/gravitino/issues/13174
### Describe the subtask `TableHookDispatcher.dropTable`/`purgeTable` call `AuthorizationUtils.authorizationPluginRemovePrivileges` regardless of the boolean returned by the dispatcher. #12232 made the dispatcher keep the store registration when the external drop returns `false` (the table was renamed or dropped out of band), but the authorization plugin still removes the privileges of the entity that is alive under its new name. The same shape exists in the schema, fileset, topic, model and view hook dispatchers. Proposed change: - Skip the plugin call when the dispatcher returned `false`. - Carry the entity id (not only the name) in the plugin event so a delayed event cannot remove a newer object's privileges. - Test: rename × drop on two servers; Ranger-style plugin mock keeps the renamed entity's privileges. Design: implementation design Part 1 (F8) and Part 4 (S1). Gate G1/G4. ### Parent issue https://github.com/apache/gravitino/issues/10238 -- 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]
