amogh-jahagirdar commented on code in PR #9695:
URL: https://github.com/apache/iceberg/pull/9695#discussion_r1750965732


##########
open-api/rest-catalog-open-api.yaml:
##########
@@ -3647,6 +4080,105 @@ components:
             type: integer
           description: "List of equality field IDs"
 
+    PlanTableScanRequest:
+      type: object
+      properties:
+        snapshot-id:
+          description:
+            Identifier for the snapshot to scan in a point-in-time scan
+          type: integer
+          format: int64
+        select:
+          description: List of selected schema fields
+          type: array
+          items:
+            $ref: '#/components/schemas/FieldName'
+        filter:
+          description:
+            Expression used to filter the table data
+          $ref: '#/components/schemas/Expression'
+        case-sensitive:
+          description: Enables case sensitive field matching for filter and 
select
+          type: boolean
+          default: true
+        use-snapshot-schema:
+          description:
+            Whether to use the schema at the time the snapshot was written.
+
+            When time travelling, the snapshot schema should be used (true).

Review Comment:
   @flyrain All good! To clarify, the distinction in the schema that gets used 
during time travel is a convention that got established in the reference 
implementation but is not actually defined in the spec itself. 
   
   As for the rationale behind this behavior in the reference implementation 
please refer to
   https://github.com/apache/iceberg/pull/9131/files.
   
   I don't think I'd spec out which ones clients should use in which situation 
because the schema resolution behavior is not defined in the table spec itself.
   
   I do think it's probably beneficial to provide some more context as to why 
this field exists, which is to enable clients to align with the reference 
implementation. 
   
   Edit:
   A concrete suggestion on a description that provides some context:
   ```
   This flag is useful when a client wants to read from a branch and use the 
table schema or time travel to a specific a snapshot and use the snapshot 
schema (aligning with the reference implementation)
   ```



-- 
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: issues-unsubscr...@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org
For additional commands, e-mail: issues-h...@iceberg.apache.org

Reply via email to