stevenzwu commented on code in PR #15830:
URL: https://github.com/apache/iceberg/pull/15830#discussion_r3030922436
##########
open-api/rest-catalog-open-api.yaml:
##########
@@ -1897,6 +1903,143 @@ paths:
5XX:
$ref: '#/components/responses/ServerErrorResponse'
+ /v1/{prefix}/relations/batch-load:
+ parameters:
+ - $ref: '#/components/parameters/prefix'
+
+ post:
+ tags:
+ - Catalog API
+ summary: Batch load relations (tables and views) from the catalog
+ operationId: batchLoadRelations
+ description:
+ "
+ Load metadata for multiple relations in one request. Identifiers may
span different namespaces.
+ Each item includes a `TableIdentifier` and optional per-item
parameters (`etag` and `snapshots`).
+ The server resolves each identifier as a table or view.
+
+
+ The per-item `status` in the response indicates the outcome:
Review Comment:
I did a little more research. Two patterns are common.
1. use http status code
Microsoft Graph API — JSON batching where each item has its own integer HTTP
status, headers, and body.
[Docs](https://learn.microsoft.com/en-us/graph/json-batching)
Facebook/Meta Graph API — Each item has a code field (HTTP integer) plus
optional headers and body.
[Docs](https://developers.facebook.com/docs/graph-api/batch-requests/)
Elasticsearch Bulk API — Each item has an integer status field (e.g. 200,
201, 404, 409) plus a string result field (e.g. "created", "updated",
"not_found").
[Docs](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-bulk.html)
2. split two separate lists. AWS services commonly use this pattern.
AWS DynamoDB BatchGetItem — Found items in Responses, absent items silently
omitted, incomplete items in UnprocessedKeys. No status field.
[Docs](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_BatchGetItem.html)
AWS SQS SendMessageBatch / DeleteMessageBatch — Results split into
Successful and Failed lists. Failed entries have Code (string error code like
"InvalidParameterValue"), not HTTP status integers.
[Docs](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessageBatch.html)
AWS S3 DeleteObjects — In verbose mode, successful deletes listed in
Deleted, failures in Errors with string Code (e.g. "AccessDenied").
[Docs](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjects.html)
--
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]