xxubai opened a new pull request, #11248: URL: https://github.com/apache/gravitino/pull/11248
### What changes were proposed in this pull request? This PR adds the initial `catalog-fluss` metadata integration as a subtask of #6578. - Add a new `catalogs/catalog-fluss` module and register the `fluss` catalog provider. - Implement Fluss catalog operations for connection validation, schema/database CRUD, table CRUD, table property updates, column changes, and identity partition management. ### Why are the changes needed? Issue #6578 tracks support for Apache Fluss catalog integration in Gravitino. This patch enables Gravitino to manage Fluss metadata through the existing catalog, schema, table, and partition APIs, which provides the foundation for later query engine integration and governance workflows. Part of #6578 ### Does this PR introduce _any_ user-facing change? Yes. Users can create a relational catalog with `provider=fluss` and configure it with: - `bootstrap.servers`: required Fluss bootstrap servers. - `gravitino.bypass.*`: optional Fluss Java client options passed through without the prefix. - `table.*`: optional Fluss table options. The new provider supports Fluss metadata operations for schemas, tables, columns, properties, primary keys, identity partitions, and hash distribution. Unsupported Fluss metadata features, such as schema alteration, table rename/comment changes, sort orders, non-identity partition transforms, and non-primary-key indexes, are rejected explicitly. ### How was this patch tested? - `./gradlew :catalogs:catalog-fluss:test -PskipITs` - `./gradlew :catalogs:catalog-fluss:test -PskipTests -PskipDockerTests=false` -- 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]
