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

   ### What changes were proposed in this pull request?
   
   Add read-only view operations (`listViews`, `loadView`) for JDBC catalogs 
covering MySQL and PostgreSQL. This is the first of two PRs split from #11123 
per maintainer feedback to facilitate easier review.
   
   Key changes:
   - Introduce `JdbcViewOperations` abstract base with read methods and 
dialect-specific SQL hooks
   - Add `JdbcViewCatalogOperations` helper implementing `ViewCatalog` read 
methods
   - Add `JdbcView` entity class
   - Add `MysqlViewOperations` and `PostgreSqlViewOperations` with 
dialect-specific SQL
   - Wire view support into `MysqlCatalogOperations` and 
`PostgreSQLCatalogOperations`
   - Add `MYSQL` and `POSTGRESQL` constants to `Dialects`
   
   ### Why are the changes needed?
   
   JDBC catalogs (MySQL, PostgreSQL) currently do not support view operations. 
This PR adds the read path so users can discover and inspect views that exist 
in their databases. Write operations (create, alter, drop) will follow in a 
stacked PR.
   
   Fix: #11001
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. `catalog.asViewCatalog().listViews()` and 
`catalog.asViewCatalog().loadView()` now work for MySQL and PostgreSQL JDBC 
catalogs. Write methods (`createView`, `alterView`, `dropView`) throw 
`UnsupportedOperationException` until the follow-up PR.
   
   ### How was this patch tested?
   
   - Unit tests: `TestJdbcViewCatalogOperations`, `TestMysqlViewOperations`, 
`TestPostgreSqlViewOperations`
   - Integration tests: `CatalogMysqlViewReadIT`, `CatalogPostgreSqlViewReadIT` 
(pre-create views via raw JDBC, test list/load through Gravitino API)


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