roryqi opened a new pull request, #13829: URL: https://github.com/apache/gravitino/pull/13829
### What changes were proposed in this pull request? - Prevent schema, table, and view imports from overwriting retained entity identifiers. - Return an explicit error requiring manual cleanup when an identifier conflicts with retained metadata. - Atomically restore soft-deleted Kafka topic metadata during catalog re-registration while rejecting active identifier conflicts. - Normalize schema, table, and view names for direct Hive-backed Iceberg catalogs. - Add regression tests for retained identifiers, Kafka re-registration, and Hive case-insensitive names. ### Why are the changes needed? External identifiers may be reused after catalog re-registration or out-of-band metadata changes. Overwriting the retained entity may incorrectly associate old governance metadata with a different entity. Kafka topic UUIDs cannot be removed from the backend, so a soft-deleted topic row must be restored safely instead. Fix: #13770 ### Does this PR introduce _any_ user-facing change? Yes. Schema, table, and view imports now report a clear identifier conflict and require users to clean up retained metadata manually. Kafka catalog re-registration can safely reload existing topics whose metadata was soft-deleted. ### How was this patch tested? - Ran focused core dispatcher, metadata service, and SQL provider tests. - Ran Iceberg catalog capability tests. - Ran Hive identifier cleanup integration tests. - Ran Kafka catalog re-registration integration test. - Ran Spark 3.5 direct Hive case-insensitive table-name integration test. - Ran `./gradlew spotlessApply`. -- 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]
