Please describe why this is necessary.
The proposed json_to_variant implementation relies on serde_json with the "arbitrary_precision" feature flag, in order to allow the library to parse numbers in the way it chooses to - this allows for decimal types being preferred when they are possible. However, some callers might not need to work with precise numbers and would prefer performance even if it means always using floating point numbers to represent fractional values.
Describe the functionality you are proposing.
We should add an "arbitrary_precision" feature flag to the parquet-variant library which controls the "arbitrary_precision" functionality of serde_json code and the variant library code accordingly.
Additional context
https://github.com/apache/arrow-rs/pull/7783/files#r2167763785
Please describe why this is necessary.
The proposed json_to_variant implementation relies on
serde_jsonwith the "arbitrary_precision" feature flag, in order to allow the library to parse numbers in the way it chooses to - this allows for decimal types being preferred when they are possible. However, some callers might not need to work with precise numbers and would prefer performance even if it means always using floating point numbers to represent fractional values.Describe the functionality you are proposing.
We should add an "arbitrary_precision" feature flag to the parquet-variant library which controls the "arbitrary_precision" functionality of
serde_jsoncode and the variant library code accordingly.Additional context
https://github.com/apache/arrow-rs/pull/7783/files#r2167763785