mchades opened a new pull request, #12565: URL: https://github.com/apache/gravitino/pull/12565
Depends on #12499. This branch is based on the current Semantic Model Java API head and will be rebased onto `main` after #12499 is merged. ### What changes were proposed in this pull request? Add the core management framework for first-class Semantic Models: - Add the Semantic Model dispatcher contract and normalization layer. - Add the operation dispatcher with relational catalog checks, parent schema validation, and tree locking. - Wire the dispatcher chain into `GravitinoEnv`. - Add `Capability.Scope.SEMANTIC_MODEL` and Semantic Model name normalization. - Add the managed-operation boundary, with persistence methods intentionally left unsupported until the entity storage implementation is added. - Add focused tests for capability handling, normalization, dispatching, and unsupported managed operations. ### Why are the changes needed? This framework establishes where Semantic Model lifecycle operations, normalization, locking, and persistence coordination belong in Gravitino core, while keeping entity persistence and business validation in independently reviewable follow-up changes. Fix: #12564 ### Does this PR introduce _any_ user-facing change? Yes. `Capability.Scope` gains the `SEMANTIC_MODEL` value. No Semantic Model CRUD operation becomes functional in this PR. ### How was this patch tested? - `git diff HEAD^ HEAD --check` - `./gradlew spotlessApply` - `./gradlew :core:check -PskipITs` -- 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]
