danielcweeks commented on code in PR #15630:
URL: https://github.com/apache/iceberg/pull/15630#discussion_r3261862069


##########
format/spec.md:
##########
@@ -1777,6 +1886,24 @@ Note that these requirements apply when writing data to 
a v2 table. Tables that
 
 This section covers topics not required by the specification but 
recommendations for systems implementing the Iceberg specification to help 
maintain a uniform experience.
 
+### Path Construction
+
+Path construction is the process by which new file locations are created for 
output files referenced by metadata. While the specific construction logic is 
not strictly required by the spec, the following guidance is provided for 
reference implementations to encourage consistency.
+
+The table properties `write.metadata.path` and `write.data.path` control where 
metadata and data files are written relative to the table location. When not 
specified, these default to the values `metadata` and `data` respectively.
+
+For all metadata files:
+
+* If `write.metadata.path` is an absolute path, it is used directly as the 
base for new metadata files.
+* If `write.metadata.path` is a relative path, the metadata base is the table 
location joined to the `write.metadata.path` value with a URI separator `/`.
+
+For data files:
+
+* If `write.data.path` is an absolute path, it is used directly as the base 
for new data files.
+* If `write.data.path` is a relative path, the base is the table location 
joined to the `write.data.path` value with a URI separator `/`.
+
+When persisting paths into metadata, writers should relativize paths against 
the table location (see [Path Relativization](#path-relativization)). If a 
file's absolute path shares a common prefix with the table location, the 
relative portion should be stored. Otherwise, the absolute path should be 
stored.

Review Comment:
   Fixed



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

Reply via email to