Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GEOMESA-3409: Arrow: axis order request parameter #3224

Merged

Conversation

epyatkevich
Copy link
Contributor

@epyatkevich epyatkevich commented Oct 28, 2024

GEOMESA-3409: Geomesa currently defaults to always reading and writing Arrow encoding as Lat / Lon axis order.

With the new axis order request parameter allow the user to request the encoding to be explicitly specified per request.

Axis Order parameter supported values:

  • LatLon translates to: Latitude = Y Axis = North, Longitude = X Axis = East
  • LonLat translates to: Longitude = X Axis = East, Latitude = Y Axis = North

The request parameter is optional and if not specified axis order defaults to the existing behavior which is LatLon.

Notes:

  • This has been manually tested and working on the 4.0.4 branch and ported to the main line

Geomesa currently defaults to always reading and writing Arrow encoding as NORTH_EAST, with the new axis order parameter allow the user to request the encoding to be explicitly specified per request.

Axis Order parameter supported values:
- NORTH_EAST translates to: North = Latitude = Y Axis, East = Longitude = X Axis
- EAST_NORTH translates to: East = Longitude = X Axis, North = Latitude = Y Axis

The request parameter is optional and if not specified axis order defaults to the existing behavior which is NORTH_EAST.
@epyatkevich epyatkevich changed the title Arrow: introduce an axis order parameter GEOMESA-3409: Arrow: introduce an axis order request parameter Oct 28, 2024
@epyatkevich epyatkevich changed the title GEOMESA-3409: Arrow: introduce an axis order request parameter GEOMESA-3409: Arrow: axis order request parameter Oct 28, 2024
@elahrvivaz
Copy link
Contributor

looks like a good start, thanks for working on it! I think i'd prefer to replace most references to AxisOrder with flipXy: Boolean or maybe longitudeFirst: Boolean. that should simplify things a bit.

Geomesa currently defaults to always reading and writing Arrow geometries in Lat/Lon order, with the new axis order parameter allow the user to request the encoding to be explicitly specified per request.

Axis Order parameter supported values:
- LatLon translates to: Latitude = Y Axis = North, Longitude = X Axis = East
- LonLat translates to: Longitude = X Axis = East, Latitude = Y Axis = North

The request parameter is optional and if not specified axis order defaults to the existing behavior which is LatLon.
Geomesa currently defaults to always reading and writing Arrow geometries in Lat/Lon order, with the new axis order parameter allow the user to request the encoding to be explicitly specified per request.

Axis Order parameter supported values:
- LatLon translates to: Latitude = Y Axis = North, Longitude = X Axis = East
- LonLat translates to: Longitude = X Axis = East, Latitude = Y Axis = North

The request parameter is optional and if not specified axis order defaults to the existing behavior which is LatLon.
@epyatkevich epyatkevich marked this pull request as ready for review November 4, 2024 15:26
@epyatkevich
Copy link
Contributor Author

Added similar logic to all the remaining geometries

Geomesa currently defaults to always reading and writing Arrow geometries in Lat/Lon order, with the new axis order parameter allow the user to request the encoding to be explicitly specified per request.

Axis Order parameter supported values:
- LatLon translates to: Latitude = Y Axis = North, Longitude = X Axis = East
- LonLat translates to: Longitude = X Axis = East, Latitude = Y Axis = North

The request parameter is optional and if not specified axis order defaults to the existing behavior which is LatLon.
Geomesa currently defaults to always reading and writing Arrow geometries in Lat/Lon order, with the new axis order parameter allow the user to request the encoding to be explicitly specified per request.

Axis Order parameter supported values:
- LatLon translates to: Latitude = Y Axis = North, Longitude = X Axis = East
- LonLat translates to: Longitude = X Axis = East, Latitude = Y Axis = North

The request parameter is optional and if not specified axis order defaults to the existing behavior which is LatLon.
@elahrvivaz
Copy link
Contributor

looks good, thanks for bearing with me! I think we can merge after the next round of minor revisions.

Geomesa currently defaults to always reading and writing Arrow geometries in Lat/Lon order, with the new axis order parameter allow the user to request the encoding to be explicitly specified per request.

Axis Order parameter supported values:
- LatLon translates to: Latitude = Y Axis = North, Longitude = X Axis = East
- LonLat translates to: Longitude = X Axis = East, Latitude = Y Axis = North

The request parameter is optional and if not specified axis order defaults to the existing behavior which is LatLon.
Geomesa currently defaults to always reading and writing Arrow geometries in Lat/Lon order, with the new axis order parameter allow the user to request the encoding to be explicitly specified per request.

The request parameter is optional and if not specified axis order defaults to the existing behavior which is Lat/Lon.
Geomesa currently defaults to always reading and writing Arrow geometries in Lat/Lon order, with the new axis order parameter allow the user to request the encoding to be explicitly specified per request.

The request parameter is optional and if not specified axis order defaults to the existing behavior which is Lat/Lon.
Geomesa currently defaults to always reading and writing Arrow geometries in Lat/Lon order, with the new axis order parameter allow the user to request the encoding to be explicitly specified per request.

The request parameter is optional and if not specified axis order defaults to the existing behavior which is Lat/Lon.
Geomesa currently defaults to always reading and writing Arrow geometries in Lat/Lon order, with the new axis order parameter allow the user to request the encoding to be explicitly specified per request.

The request parameter is optional and if not specified axis order defaults to the existing behavior which is Lat/Lon.
@elahrvivaz elahrvivaz merged commit 21d797d into locationtech:main Nov 12, 2024
69 of 70 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants