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

   ### What changes were proposed in this pull request?
   
   Screen Glue `VIRTUAL_VIEW` objects out of the table entry points in
   `GlueCatalogOperations`. `dropTable()` now fetches the object before deleting
   it, since Glue's `DeleteTable` has no type filter.
   
   Also compare `table_type` case-insensitively when deciding whether an Iceberg
   table is register-mode, matching the connector's other `table_type` checks.
   
   ### Why are the changes needed?
   
   None of the table entry points looked at `Table.tableType()`, so a Glue view
   was listed and loaded as an ordinary table, and could be deleted through the
   table API.
   
   The case-sensitive `table_type` comparison routed a table written with a
   lower-case `iceberg` to the register-mode update path instead of the Iceberg
   SDK path.
   
   Fix: #13010
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. Glue views no longer appear in table listings, and loading, altering or
   dropping one through the table API returns 404 with a message saying the
   object is a view. Representing Glue views as views is not part of this PR.
   
   ### How was this patch tested?
   
   Unit tests in `TestGlueCatalogTableOperations` and
   `TestGlueCatalogOperationsForIceberg`, plus integration tests in
   `AbstractGlueCatalogIT` run against Moto (`MotoGlueCatalogIT`, 27/27 
passing).
   


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