yuqi1129 opened a new pull request, #12235:
URL: https://github.com/apache/gravitino/pull/12235

   ### What changes were proposed in this pull request?
   
   - Delete an unmanaged table's stored registration only when the external 
catalog confirms the drop.
   - Surface store update failures after an external table rename instead of 
reporting success.
   - Add regression tests for both scenarios.
   
   ### Why are the changes needed?
   
   A concurrent drop and rename can cause the drop to return `false` because 
the table has already been renamed externally. Deleting the old stored 
registration in this case removes the surviving table's owner, tag, policy, 
privilege, statistic, and version relations.
   
   The rename path also swallowed the subsequent store update failure, causing 
the client to observe a successful rename despite an inconsistent registration.
   
   Fix: #12232
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. An external-backed table drop that returns `false` no longer deletes 
its stored registration. If an external rename succeeds but Gravitino cannot 
update the stored registration, the operation now returns an error instead of 
reporting success.
   
   No API or configuration changes are introduced.
   
   ### How was this patch tested?
   
   - Added regression coverage to `TestTableOperationDispatcher`.
   - Ran `./gradlew :core:check -PskipITs`.
   - Ran `git diff --check`.
   


-- 
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