Skip to content

[GH-3176] Add Geography support for convex hull and collection - #3198

Draft
jiayuasu wants to merge 1 commit into
masterfrom
feature/geography-convex-hull
Draft

[GH-3176] Add Geography support for convex hull and collection#3198
jiayuasu wants to merge 1 commit into
masterfrom
feature/geography-convex-hull

Conversation

@jiayuasu

Copy link
Copy Markdown
Member

Did you read the Contributor Guide?

Is this PR related to a ticket?

What changes were proposed in this PR?

  • Add spherical Geography support for ST_ConvexHull, including geodesic edges, dimensionality preservation, antimeridian handling, and explicit full-sphere rejection.
  • Extend scalar ST_Collect and aggregate ST_Collect_Agg to preserve either the Geometry or Geography logical type.
  • Add the Geography overloads to both Spark and Flink, including Flink's ST_Collect_Aggr alias.
  • Preserve null handling, duplicates, SRIDs, empty values, and aggregate merge behavior.
  • Correct empty Geography LineString WKB serialization and normalize the legacy header-only representation.

How was this patch tested?

  • Common Geography and WKB tests: 111 passed.
  • Spark Geography and SRID suites: 80 passed.
  • Spark aggregate suite: 30 passed.
  • Spark DataFrame aggregate API test: 1 passed.
  • Flink Geography, aggregate, merge, and Geometry regression tests: 39 passed.
  • Spark 4.1 with Scala 2.13 compile: passed.
  • Spotless, pre-commit hooks, and git diff --check: passed.

Did this PR include necessary documentation updates?

  • Yes, I am adding new Geography APIs using the current SNAPSHOT version number, v1.9.1.
  • Yes, I updated the Spark SQL and Flink API pages and function indexes.

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.

Add Geography support for ST_ConvexHull and the geometry-collecting aggregate

1 participant