tanmayrauth commented on PR #1371:
URL: https://github.com/apache/iceberg-go/pull/1371#issuecomment-4883301435
@zeroshade Thanks for both good catches. Switched manifest bounds to the
spec coordinate encoding and made geography omit bounds for now.
On table/internal/geo_codec.go (the encodeGeoBound/Bounds area):
Fixed — bounds are now the Iceberg geospatial single-value serialization
(little-endian float64 X, Y[, Z][, M]: 16/24/32 bytes, XYM writes Z=NaN), not
WKB. `LiteralFromBytes` for geometry/geography now validates the 16/24/32
length instead of treating the payload as opaque WKB, and the tests assert
exact byte lengths and the decoded coordinates (including the XYM NaN slot).
On table/internal/parquet_files.go (the AddWKB accumulation loop):
Made accumulation type-aware: the accumulator now knows geometry vs
geography (from the Iceberg field type), and geography bounds are omitted
entirely. Since geography edges are geodesics, vertex min/max isn't a safe box
— latitude can bulge past the endpoints and longitude may need to wrap the
antimeridian — so rather than emit possibly-wrong bounds that silently prune
valid rows, I leave geography unbounded until we add
geodesic/antimeridian-aware computation. Geometry (planar edges) still gets
exact bounds.
--
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]