csurong opened a new issue, #4345: URL: https://github.com/apache/amoro/issues/4345
### What happened? When AMS lists tables for an Iceberg-backed catalog, mixed-format discovery eagerly loads every Iceberg table. If one table points to a missing metadata JSON file, loading that table throws `NotFoundException` and aborts the entire namespace listing. The upper catalog layer then converts the failure into `NoSuchDatabaseException`, even though the database exists. Expected behavior: skip only the unavailable table with a warning, continue returning healthy tables, and convert only an actual missing namespace into `NoSuchDatabaseException`. ### Affects Versions master ### What table formats are you seeing the problem on? Iceberg, Mixed-Iceberg ### What engines are you seeing the problem on? AMS ### How to reproduce 1. Register an Iceberg catalog backed by Hive Metastore. 2. Ensure the namespace contains at least one healthy Iceberg table. 3. Add or retain another Hive table whose `metadata_location` points to a metadata JSON file that no longer exists. 4. List the namespace tables through AMS or open the namespace in the dashboard. 5. Observe that listing fails instead of returning the healthy tables, and the error is reported as if the database does not exist. ### Relevant log output ```shell org.apache.iceberg.exceptions.NotFoundException: Failed to open input stream for file: ...metadata.json Caused by: java.io.FileNotFoundException: File does not exist The failure is later exposed as: org.apache.amoro.NoSuchDatabaseException: Database does not exist ``` ### Anything else _No response_ ### Are you willing to submit a PR? - [x] Yes I am willing to submit a PR! ### Code of Conduct - [x] I agree to follow this project's Code of Conduct -- 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]
