Gabriel39 opened a new pull request, #69452:
URL: https://github.com/apache/doris/pull/69452
### What problem does this PR solve?
Issue Number: N/A
Problem Summary:
Iceberg's `JdbcCatalog` implements `ViewCatalog` even when its JDBC metadata
schema is V0, which cannot store views. The SDK throws
`UnsupportedOperationException` for V0 `listViews` and `viewExists`. Doris
calls these methods when listing tables and resolving whether an ordinary table
is a view, so an existing V0 catalog can fail table discovery and queries
despite containing no views.
Treat unsupported JDBC view probes as an empty view list or `false`, and
reuse the same probe path when filtering table names. Preserve working JDBC
view support, explicit view-operation errors, failures from other catalog
types, and SQL/authorization errors. Reading V0 does not require migrating the
catalog to V1.
Add six unit tests using the actual SDK V0 guards and negative coverage.
Extend the JDBC regression suite with an isolated PostgreSQL V0 database and a
SELECT-only reader, covering namespace/table listing, schema inspection, scans,
snapshots, refresh, and time travel. The fixture database is separate because
the SDK inspects columns across PostgreSQL schemas.
### Release note
Fix table discovery and access through Iceberg JDBC catalogs that use the V0
metadata schema without view support.
### Check List (For Author)
- Test
- [x] Unit Test: Iceberg connector reactor build and tests: 1,493 tests,
zero failures/errors, one existing live REST connectivity test skipped. FE
Checkstyle passes. Before the fix, the new tests reproduce two failures from
the actual SDK V0 guards.
- [x] Regression test: `test_iceberg_jdbc_catalog`, including the new V0
reader and existing PostgreSQL/MySQL cases. Local runtime uses existing FE/BE
binaries with the modified connector class compiled from master, PostgreSQL 16,
MySQL 8, and MinIO.
- [x] Manual test: verify the V0 table has no `iceberg_type` column and
the reader has SELECT but lacks INSERT, UPDATE, and schema CREATE privileges.
- Behavior changed:
- [x] Yes. Unsupported JDBC view probes no longer prevent ordinary table
operations.
- Does this need documentation?
- [x] No.
### Check List (For Reviewer who merge this PR)
- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]