avantgardnerio opened a new issue, #2234: URL: https://github.com/apache/arrow-rs/issues/2234
**Describe the bug** There used to be no standard way of creating native Arrow types, and the documentation [is ambiguous](https://github.com/apache/arrow/blob/master/format/Schema.fbs#L354-L375) as to physical memory layout. As such, I thought it would be a good idea to create standardized `make_value()` and `to_parts()` methods for each type. Due to reasons I no longer remember, I thought months, days, and nanos were stored in reverse order. @alamb found my mistake in [this PR](https://github.com/apache/arrow-datafusion/pull/2984). I have since tracked down the C implementation structs to confirm the implementation (and unit tests) are now correct, as well as adding ascii art documentation to help communicate the memory format to future contributors. **To Reproduce** Invoke `IntervalMonthDayNanoType::make_value()` to create a duration, then attempt to pass it to C/Python/Java for decoding. **Expected behavior** The generated value conforms to specifications. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org