mchades opened a new pull request, #13367: URL: https://github.com/apache/gravitino/pull/13367
### What changes were proposed in this pull request? - Split `GravitinoEnv` initialization into common components, internal metadata components, and server-side integrations. - Add `initializeMetadataComponents(Config)` as the entry point for initializing the internal metadata layer. - Refactor full-server initialization to reuse the same metadata initialization path before adding hooks, events, auxiliary services, and jobs. - Add a normalized internal partition dispatcher. - Add tests covering component composition, lifecycle behavior, server-integration isolation, and authorization modes. ### Why are the changes needed? `GravitinoEnv` currently initializes internal metadata components and server-side integrations in the same method. This mixes responsibilities and makes component dependencies and lifecycle ownership difficult to understand and maintain. This change makes the initialization hierarchy explicit: 1. Common infrastructure. 2. Internal metadata components. 3. Server-side integrations. The full-server profile continues to initialize the same components, but now composes them through clearly defined initialization layers. This reduces coupling, avoids duplicated initialization logic, and provides a stable metadata initialization boundary for future reuse. ### Does this PR introduce _any_ user-facing change? No REST API or configuration changes. `GravitinoEnv` adds `initializeMetadataComponents(Config)` and `internalPartitionDispatcher()` for internal or embedded use. Existing base and full initialization behavior remains unchanged. ### How was this patch tested? - `./gradlew :core:spotlessApply` - `./gradlew :core:check :core:javadoc -PskipITs` - `./gradlew compileDistribution -PskipITs -x test` - `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]
