feat(geo): add nearestApproachDistance, expandSpace, && for TGEOMPOINT#114
feat(geo): add nearestApproachDistance, expandSpace, && for TGEOMPOINT#114estebanzimanyi wants to merge 1 commit into
Conversation
Register three MEOS-backed function overloads needed for portable BerlinMOD queries: - overlaps_tspatial_tspatial → &&(TGEOMPOINT, TGEOMPOINT) - nad_tgeo_tgeo → nearestApproachDistance(TGEOMPOINT, TGEOMPOINT) - tspatial_to_stbox + stbox_expand_space → expandSpace(TGEOMPOINT, DOUBLE)
d88b909 to
e3c62fd
Compare
8b5c566 to
d766a8a
Compare
Consolidation note — overlaps with #99
|
|
Inspected the diffs more carefully: This PR adds 3 things:
#99 Maintainer choice:
I won't blind-resolve since the cherry-pick conflicts in |
|
Superseded by the consolidated parity batch at #126 ( The work on this branch — nearestApproachDistance / expandSpace / && for TGEOMPOINT — is now part of the squashed addressable-parity surface that brings MobilityDuck to 943/943 = 100.0% of the active addressable temporal + geo names. Closing to keep the review queue focused on the three active stacked PRs (#126 → #130 → #129) and the four orthogonal PRs (#105 / #111 / #113 / #117 / #120). Branch |
Summary
Adds three MEOS-backed functions that complete BerlinMOD portable SQL coverage on MobilityDuck:
nearestApproachDistance(TGEOMPOINT, TGEOMPOINT) → DOUBLE— wrapsnad_tgeo_tgeo; returns NULL (not 0) when trips have no overlapping time extent (sentinelDBL_MAX→ SQL NULL viaExecuteWithNulls)expandSpace(TGEOMPOINT, DOUBLE) → STBOX— wrapstspatial_to_stbox+stbox_expand_space; enables thetrip && expandSpace(other, dist)index pre-filter in Q10&&(TGEOMPOINT, TGEOMPOINT) → BOOLEAN— wrapsoverlaps_tspatial_tspatial; STBox overlap pre-filter for cross-trip joinsBerlinMOD impact:
nearestApproachDistanceexpandSpace16/18 queries already worked on the released community extension; this adds the missing 2.
Stacked on: #113 (edge-to-cloud quickstart + SRID/geodetic fix). Merge #113 first; GitHub will rebase this PR onto
mainautomatically.Cross-references:
Test plan
nearestApproachDistance(trip1, trip2)returns correct float, NULL when disjoint in timeexpandSpace(trip, 3.0)returns STBox expanded by 3 units spatially./berlinmod/run_mduck.shfrom MobilitySpark