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
Add arrow-avro support for Duration type and minor fixes for UUID decoding (#7889)
# Which issue does this PR close?
- Part of #4886
- Related to #6965
# Rationale for this change
The `arrow-avro` crate currently lacks support for the Avro `duration`
type, which is a standard and commonly used type in Avro schemas. This
omission prevents users from reading Avro files containing duration
types, limiting the crate's utility.
This change introduces support for decoding Avro duration types by
mapping them to the Arrow `Interval` type. This is a logical and
efficient representation. Implementing this feature brings the
`arrow-avro` crate closer to full Avro specification compliance and
makes it more robust for real-world use cases.
# What changes are included in this PR?
This PR contains:
* arrow-avro decoder support for Duration types.
* Minor fixes UUID decoding. UUID types now map to `utf8` type to better
align with the [Avro
specification](https://avro.apache.org/docs/1.11.1/specification/#uuid)
* New integration test using a temporary `duration_uuid.avro` file crate
using this python script:
https://gist.github.com/jecsand838/cbdaaf581af78f357778bf87d2f3cf15
# Are these changes tested?
Yes, this PR includes for integration and unit tests covering these
modifications.
# Are there any user-facing changes?
N/A
# Follow-Up PRs
1. PR to update `test_duration_uuid` once
apache/arrow-testing#108 is merged in.
---------
Co-authored-by: Matthijs Brobbel <[email protected]>
0 commit comments