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]

Reply via email to