rdblue commented on a change in pull request #1141:
URL: https://github.com/apache/iceberg/pull/1141#discussion_r449917181



##########
File path: site/docs/spec.md
##########
@@ -646,6 +646,18 @@ Each partition field in the fields list is stored as an 
object. See the table fo
 
 In some cases partition specs are stored using only the field list instead of 
the object format that includes the spec ID, like the deprecated 
`partition-spec` field in table metadata. The object format should be used 
unless otherwise noted in this spec.
 
+#### Partition Field ID handling
+
+A partition field id is an integer (starting at 1000) used to identify a 
partition field.
+
+Since iceberg release 0.8.0, partition fields are present in every partition 
field of partition specs in a table metadata.
+
+* For backward compatibility, if field ids are missing in a table metadata, 
iceberg will sequentially generate ids for each field starting at 1000 based on 
its position in the list of fields.
+* For forward compatibility, if field ids are not supported, iceberg will 
ignore field ids.
+
+Additionally, in table metadata format v2, partition fields are required to 
have unique field IDs to support partition spec evolution.
+
+For tables without partition field IDs, iceberg will generate an 
auto-increment unique field id starting at 1000 for every partition field.

Review comment:
       This should state that old versions of the "reference implementation 
will generate..."
   
   I think this should also give some context at the top about what breaks if 
compatibility recommendations are not followed for v1. 




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

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