Skip to content

feat(vortex-geo): Arrow import/export for the native Point type#8374

Open
HarukiMoriarty wants to merge 1 commit into
nemo/geo-pointfrom
nemo/geo-point-arrow
Open

feat(vortex-geo): Arrow import/export for the native Point type#8374
HarukiMoriarty wants to merge 1 commit into
nemo/geo-pointfrom
nemo/geo-point-arrow

Conversation

@HarukiMoriarty

Copy link
Copy Markdown

Summary

This PR adds support for import/export to Arrow for the Point extension type, as the
geoarrow.point Arrow extension with separated (struct) coordinates.

Stacked on #8372.

Testing

Unit tests are added to exercise both code paths, plus a Vortex → Arrow → Vortex round-trip.

Register ArrowImportVTable/ArrowExportVTable for the Point extension
type, mapping geoarrow.point fields (separated coordinates) to and from
vortex.geo.point with the CRS carried through. Interleaved coordinates
are rejected at field import. The CRS metadata conversion is shared
with the WKB vtables, and the coordinate storage dtype now has a
canonical constructor inverse to coordinate_dimension.

Signed-off-by: Nemo Yu <zyu379@wisc.edu>
@codspeed-hq

codspeed-hq Bot commented Jun 11, 2026

Copy link
Copy Markdown

Merging this PR will improve performance by 13.08%

⚠️ Unknown Walltime execution environment detected

Using the Walltime instrument on standard Hosted Runners will lead to inconsistent data.

For the most accurate results, we recommend using CodSpeed Macro Runners: bare-metal machines fine-tuned for performance measurement consistency.

⚡ 5 improved benchmarks
❌ 2 regressed benchmarks
✅ 1525 untouched benchmarks

Warning

Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Mode Benchmark BASE HEAD Efficiency
Simulation bitwise_not_vortex_buffer_mut[128] 215.3 ns 244.4 ns -11.93%
Simulation chunked_varbinview_canonical_into[(100, 100)] 273.3 µs 309.3 µs -11.65%
Simulation take_10k_random 254.5 µs 196.8 µs +29.34%
Simulation patched_take_10k_contiguous_patches 289.2 µs 230.5 µs +25.49%
Simulation patched_take_10k_random 301.2 µs 242.4 µs +24.23%
Simulation take_10k_contiguous 310.5 µs 251.9 µs +23.25%
Simulation chunked_varbinview_canonical_into[(1000, 10)] 197.9 µs 161.8 µs +22.28%

Tip

Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.


Comparing nemo/geo-point-arrow (638d514) with nemo/geo-point (491f49f)

Open in CodSpeed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/feature A new feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant