geyanggang commented on PR #13481: URL: https://github.com/apache/gravitino/pull/13481#issuecomment-5811891514
@yuqi1129 Thanks — the authorization point reshaped this for the better. Changes in this revision: - Resolution moved above the hook layer. It now runs in TableNormalizeDispatcher (above TableHookDispatcher/TableOperationDispatcher), so the resolved name drives the authz hooks, the catalog call and the store key consistently — the drop/rename privilege orphan is fixed. No lock is taken: resolution is best-effort and the locked downstream op re-checks existence, so a concurrent rename just surfaces as NoSuchTableException (matching your own note on the race). - Still a connector SPI, TableCatalog API untouched. SupportsTableNameResolution receives both the requested and normalized names; contract is exact-on-requested → exact-on-normalized → unique case-insensitive → else keep normalized (never guess, never throw when absent). - No behavior change for catalogs that don't opt in — pure identity call. Verified: core + jdbc-common unit suites, plus real-container Postgres/MySQL table-op tests. - Description/issue updated to match; scope and follow-ups listed; marked "Part of #13480" since no backend implements the SPI in this PR yet. -- 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]
