diqiu50 opened a new issue, #14516:
URL: https://github.com/apache/gravitino/issues/14516
### Version
main branch
### Describe what's wrong
The Glue catalog reports many client-side or configuration problems as HTTP
500 `RuntimeException`, and accepts catalog properties that can never work:
- Rejected AWS credentials, Glue `ValidationException`, throttling and an
unreachable endpoint all return HTTP 500. A region/endpoint mismatch is
reported as rejected credentials.
- Partition operations wrap every Glue error as HTTP 500, and the partition
REST handler maps `ForbiddenException` to 500.
- Iceberg rename/create errors (name taken, access denied, missing database)
return HTTP 500 and expose the internal Iceberg catalog name.
- `aws-region`, `aws-glue-catalog-id`, `aws-glue-endpoint`, `warehouse`,
`default-table-format`, `table-format-filter`, partial key pairs and temporary
(`ASIA`) keys are not validated at create.
- An endpoint that does not answer blocks each request for about 64 seconds.
- Dropping a missing database without cascade returns 404 instead of `false`.
- `table-format-filter` only hides tables from list; load, alter and drop
still work on them.
### Error message and/or stacktrace
```
GET /api/metalakes/m/catalogs/glue/schemas (wrong secret key)
HTTP 500 {"code":1002,"type":"RuntimeException","message":"... AWS rejected
the configured credentials ... [UnrecognizedClientException] ..."}
```
### How to reproduce
1. Create a Glue catalog with a wrong `aws-secret-access-key`, or
`aws-region=US-EAST-2`, or `table-format-filter=icebrg`. The create succeeds.
2. List schemas or tables: HTTP 500, or an empty list without an error.
--
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]