gaborkaszab commented on code in PR #16425: URL: https://github.com/apache/iceberg/pull/16425#discussion_r4452950400
########## format/spec.md: ########## @@ -1801,6 +1804,44 @@ If a delete column in an equality delete file is later dropped from the table, i Manifests hold the same statistics for delete files and data files. For delete files, the metrics describe the values that were deleted. +### Column Files + +Starting in v4, a data file or v4 leaf manifest may store fields in column files listed in [`column_files`](#column-file-fields). A column file can use any supported Iceberg file format and must have rows that align with the file it modifies. + +A column file stores the fields listed in its `field_ids`, each as a whole, including all of its nested fields. Each ID must identify a field in the schema of the file it modifies, which is the table schema for a data file and the tracked file schema for a leaf manifest, or a row lineage field required by [Writing Column Files](#writing-column-files). Fields nested within a list or map must not be listed in `field_ids`. + +#### Writing Column Files + +The rules below apply to column files of data files. Rules for writing column files of leaf manifests are not defined here. Review Comment: I believe there is a decent overlap between the rules for data files and leaf manifests. Can we remove this sentence here, and have the common rule right below, and then the data file and leaf manifest specific ones broken down separately after that. _lusn makes sense for data files only IMO, maybe also partition. But the tracking related one, the modified/replaced related ones, and many more seem common to me. -- 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]
