JFinis commented on code in PR #8672:
URL: https://github.com/apache/iceberg/pull/8672#discussion_r1340074863


##########
format/spec.md:
##########
@@ -128,13 +128,13 @@ Tables do not require rename, except for tables that use 
atomic rename to implem
 
 #### Writer requirements
 
-Some tables in this spec have columns that specify requirements for v1 and v2 
tables. These requirements are intended for writers when adding metadata files 
to a table with the given version.
+Some tables in this spec have columns that specify requirements for v1 and v2 
tables. These requirements are intended for writers when adding 
metadata/manifest files to a table with the given version.
 
-| Requirement | Write behavior |
-|-------------|----------------|
-| (blank)     | The field should be omitted |
-| _optional_  | The field can be written |
-| _required_  | The field must be written |
+| Requirement | Write behavior                                        |
+|-------------|-------------------------------------------------------|
+| (blank)     | The field should not be present in the schema         |
+| _optional_  | The field should be in the schema, and can be written |

Review Comment:
   I agree, you can see it that way. But the spec should be as precise as 
possible. 
   
   But this isn't the main problem, as people will figure out what it means. 
The main problem is rather:
   
   > For Avro, it is unclear what it means if a field "can be written".
   
   That's the main point of this issue. We should reason about what fields are 
in the schema and whether they are declared optional or required, as "can be 
written" is not a clearly defined term in Iceberg. (But note that these terms 
are not clearly defined for JSON, as JSON files are not valid Iceberg files. 
That's why I spelled out JSON explicitly.).
   



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