dimas-b commented on code in PR #8982:
URL: https://github.com/apache/iceberg/pull/8982#discussion_r1687279691
##########
format/spec.md:
##########
@@ -1370,3 +1370,16 @@ Writing v2 metadata:
* `sort_columns` was removed
Note that these requirements apply when writing data to a v2 table. Tables
that are upgraded from v1 may contain metadata that does not follow these
requirements. Implementations should remain backward-compatible with v1
metadata requirements.
+
+## Appendix F: Implementation Notes
+
+This section covers topics not required by the specification but
recommendations for systems implementing the Iceberg specification
+to help maintain a uniform experience.
+
+### Point in Time Reads (Time Travel)
+
+Iceberg supports two types of histories for tables. A history of previous
"current snapshots" stored in ["snapshot-log" table
metadata](#table-metadata-fields) and [parent-child lineage stored in
"snapshots"](#table-metadata-fields). These two histories
+might indicate different snapshot IDs for a specific timestamp. The
discrepancies can be caused by a variety of table operations (e.g. updating the
`current-snapshot-id` of the table).
+
+When processing point in time queries the Iceberg community has chosen to use
"snapshot-log" metadata to lookup the table state
Review Comment:
`snapshot-log` is optional in both v1 and v2 spec:
https://iceberg.apache.org/spec/#table-metadata-fields
Given that this PR suggests how engines should process that information so
that users can expect similar behaviour from different engines, it would be
nice to provide a suggestion of how to deal with missing `snapshot-log` in a
common way too. In other words, how to produce a user-friendly message as
opposed to some internal and engine-specific 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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]