You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Use pyarrow.compute.unique on struct arrays once a struct kernel ships #170
Inside the now-removed eager duplicate-detection path we used a Python set over per-row dim tuples instead of pyarrow.compute.unique on a StructArray because pc.unique does not have a struct kernel in pyarrow 23.0.0:
pyarrow.lib.ArrowNotImplementedError: Function 'unique' has no kernel matching input types (struct<lat: double, lon: int64>)
When the dependency floor moves and pyarrow adds the kernel, the Python-side scan can be replaced with a single pc.unique(pa.StructArray.from_arrays([table.column(d) for d in dimension_columns])) and a count check.
Currently the eager reshape path no longer exists in the lazy backend (PR #167 unified eager and lazy), but the same pattern may resurface if a future feature reintroduces row-set uniqueness checks on the SQL output (e.g. for stricter duplicate diagnostics on aggregation results). Filing here so it isn't lost.
Activity
alxmrs commentedon Jun 22, 2026
Is this PR still relevant? Forgive me, I can't remember, but I recall that we got rid of the unique call in the first place.