-
Notifications
You must be signed in to change notification settings - Fork 4k
GH-15058: [C++][Python] Native support for UUID #37298
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
Conversation
|
|
|
mentioned #15058 (comment) , do we need to remove that? |
184e96c to
e738540
Compare
16329bc to
a5283b6
Compare
Looks Ruby already got support for UUID? |
3baa0a0 to
d8bfaf8
Compare
|
Ping @jorisvandenbossche |
|
Thanks everyone! |
|
After merging your PR, Conbench analyzed the 4 benchmarking runs that have been run so far on merge-commit 2328b6e. There were no benchmark performance regressions. 🎉 The full Conbench report has more details. It also includes information about 24 possible false positives for unstable benchmarks that are known to sometimes produce them. |
|
Thanks a lot @rok! As another possible follow-up, would we want to support inferring and converting |
|
@jorisvandenbossche that sounds convenient! I've opened #43855 and will get around to it if someone else doesn't sooner :). |
### Rationale for this change See apache#15058. UUID datatype is common in throughout the ecosystem and Arrow as supporting it as a native type would reduce friction. ### What changes are included in this PR? This PR implements logic for Arrow canonical extension type in C++ and a Python wrapper. ### Are these changes tested? Yes. ### Are there any user-facing changes? Yes, new extension type is added. * Closes: apache#15058 Authored-by: Rok Mihevc <[email protected]> Signed-off-by: Antoine Pitrou <[email protected]>
### Rationale for this change UUID extension types were made canonical in #41299 and are getting native support in C++ and Python in #37298. As such, it makes sense to provide an alternative user-defined extension type as an example that is unlikely to become a canonical extension type anytime soon. After discussion in #43809, we determined a `RationalType` would make sense. Please note that this is a redo of #43849 as I made a blunder and accidentally pushed a branch that was in a wonky state. ### What changes are included in this PR? A change in several doc locations which reference a `UuidType` extension type have been changed to a `RationalType`. For consistency, this PR also changes single quotes (`''`) to double quotes (`""`) throughout the Python examples that it modifies. Also, seemingly unrelated to this change, some doctests began failing as numpy changed the `repr` of `float16`'s between 1.x and 2.x. We have updated the failing doctest so that it supports both styles. ### Are these changes tested? These are documentation changes and `archery docker run conda-python-docs` succeeds locally. ### Are there any user-facing changes? No. cc @ianmcook @rok * GitHub Issue: #43809 --------- Co-authored-by: Ian Cook <[email protected]>
…/from Parquet (#45866) ### Rationale for this change After #37298, the UUID canonical extension type is supported in Arrow C++ and PyArrow; however, it is not converted to the Parquet UUID type on write and is not inferred when on Parquet read. ### What changes are included in this PR? - Infer the Parquet UUID type from the Arrow UUID extension type - Infer the Arrow UUID type from Parquet UUID when arrow_extensions_enabled is set (like the JSON extension type) - Wire up arrow_extensions_enabled to pyarrow and add Python tests ### Are these changes tested? Yes! ### Are there any user-facing changes? Yes! (Documentation will be added) * GitHub Issue: #43807 --------- Co-authored-by: Gang Wu <[email protected]>
Rationale for this change
See #15058.
UUID datatype is common in throughout the ecosystem and Arrow as supporting it as a native type would reduce friction.
What changes are included in this PR?
This PR implements logic for Arrow canonical extension type in C++ and a Python wrapper.
Are these changes tested?
Yes.
Are there any user-facing changes?
Yes, new extension type is added.