dannycjones commented on code in PR #2933:
URL: https://github.com/apache/iceberg-rust/pull/2933#discussion_r3950522738


##########
crates/iceberg/src/spec/datatypes.rs:
##########
@@ -43,6 +43,8 @@ pub const MAP_VALUE_FIELD_NAME: &str = "value";
 
 pub(crate) const MAX_DECIMAL_BYTES: u32 = 24;
 pub(crate) const MAX_DECIMAL_PRECISION: u32 = 38;
+const DEFAULT_GEOSPATIAL_CRS: &str = "OGC:CRS84";
+const EQUIVALENT_DEFAULT_GEOSPATIAL_CRS: &str = "EPSG:4326";

Review Comment:
   Got it, thank you. I think follow the argument, but we should capture this 
in a code comment. Not only that they're equivalent due to the ordering and 
point to the spec, but I think we should clarify why this is the right place 
for the normalization to be applied.
   
   In this PR, it is normalizing when parsing the Iceberg schema, including if 
creating a table for the first time, meaning any future metadata JSON, new 
Parquet data files, and the engine interacting with the table will all see 
`OGC:CRS84` rather than the `ESPG:4326` as set by either the user or a previous 
writer. I want to be explicit on that decision.
   
   Has this conversation happened elsewhere? I have taken a look at 
iceberg-java and the mailing list but haven't found anything. I'd appreciate a 
pointer if I've missed it!



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