LuciferYang opened a new issue, #13401: URL: https://github.com/apache/gravitino/issues/13401
### Version main branch ### Describe what's wrong When a catalog supplies a `ProxyPlugin`, `OperationsProxy.invoke` propagates the `InvocationTargetException` that `java.lang.reflect.Method.invoke` wraps around the operation's own exception. Every typed failure (`NoSuchEntityException`, `AlreadyExistsException`, and so on) reaches callers as the reflective wrapper instead of the real exception. Exception-type dispatch downstream then misses. The REST layer's `ExceptionHandlers` is an `instanceof` chain over the domain exception types; a wrapped exception matches none of them and falls through to a generic 500, instead of the correct 404, 409, and so on. ### How to reproduce Configure a catalog that supplies a `ProxyPlugin`, then trigger a typed failure such as loading a table that does not exist. The client receives a 500 rather than a 404. -- 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]
