danielcweeks commented on code in PR #15830:
URL: https://github.com/apache/iceberg/pull/15830#discussion_r3119654782


##########
open-api/rest-catalog-open-api.yaml:
##########
@@ -1931,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:
+
+        - `200` - Relation exists and metadata is returned. The `result` field 
contains a
+          `LoadRelationResult` with `object-type` and the type-specific 
payload.
+
+        - `304` - The relation is a table and the provided ETag matches the 
current metadata version.
+          No payload is returned. The current `etag` value is included.
+
+        - `404` - No table or view exists for the identifier.
+
+
+        Servers MAY cap the amount of computation or response payload size per 
request and return
+        `unprocessed-identifiers` for items they did not process. Clients 
SHOULD retry unprocessed
+        identifiers in a subsequent request.

Review Comment:
   Do we want to describe how to handle if too many items are requested?  I 
understand the server can process a subset and return the unprocessed list, but 
what if someone lists an entire catalog and then asks for 100K resources?  What 
error code can/should the server return if they consider the request 
unreasonable  (400 might fit that)



-- 
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