sumimakito opened a new pull request, #45712: URL: https://github.com/apache/arrow/pull/45712
### Rationale for this change A previous PR #43117 to fulfill the missing support for MONTH_DAY_NANO Intervals in Arrow JS reported in #43118 went inactive for a long while. This issue has also caused some downstream projects to break while using MONTH_DAY_NANO Intervals. Therefore, I cloned the branch and added more fixes to the code and tests. ### What changes are included in this PR? - Fixed the JSON Vector assembler for Intervals - Exported types and utils for Intervals - Refactored `encodeIntervalMonthDayNano` into `toIntervalMonthDayNanoInt32Array` and used bit operations to speed up bigint splitting by 2x ([Perf.link](https://perf.link/#eyJpZCI6InYxbzI5dmVpZjQ3IiwidGl0bGUiOiJGaW5kaW5nIG51bWJlcnMgaW4gYW4gYXJyYXkgb2YgMTAwMCIsImJlZm9yZSI6ImNvbnN0IGk2NCA9IEJpZ0ludCgxMDI0MjA0ODQwOTY4MTkyKSIsInRlc3RzIjpbeyJuYW1lIjoiRmluZCBpdGVtIDEwMCIsImNvZGUiOiJjb25zdCBpMzJzID0gbmV3IEludDMyQXJyYXkobmV3IEJpZ0ludDY0QXJyYXkoW2k2NF0pLmJ1ZmZlcik7XG5jb25zdCBhID0gaTMyc1swXTtcbmNvbnN0IGIgPSBpMzJzWzFdOyIsInJ1bnMiOlsxNTUzMDAwLDEwOTAwMCwxMTQ2MDAwLDEwMDAsMjE1MzAwMCw1MTMwMDAsMjUzMDAwLDEwMTMwMDAsMTUxODAwMCw3ODQwMDAsOTk3MDAwLDg2NDAwMCw0MjcwMDAsOTExMDAwLDQ3MTAwMCw4MjQwMDAsNzg0MDAwLDk0MDAwMCwxNjM2MDAwLDQwMjAwMCw5OTIwMDAsMTI1MDAwLDc5MTAwMCwxMTM5MDAwLDU2ODAwMCw2MTYwMDAsNzc5MDAwLDczMTAwMCw5OTcwMDAsMjMxNzAwMCw3NjAwMDAsNDkzMDAwLDY2MDAwLDE1MTYwMDAsMTQ3ODAwMCw5NzYwMDAsOTc3MDAwLDIyNDAwMCwxMTExMDAwLDEyODIwMDAsNjY0MDAwLDEzMjUwMDAsNzIzMDAwLDIyODUwMDAsMTc3MjAwMCw0NjQwMDAsNzU2MDAwLDU0MDAwMCwxMT Y0MDAwLDE3OTUwMDAsNzI4MDAwLDExOTYwMDAsNjMzMDAwLDIzMjYwMDAsMjYwMDAsMTAzNDAwMCw4NDkwMDAsNzY3MDAwLDEyMzAwMDAsMTA1NjAwMCw2ODkwMDAsOTk3MDAwLDUyODAwMCw2MjMwMDAsMTAwMCw5OTcwMDAsOTk3MDAwLDc0MDAwMCw1MDkwMDAsMTEwMDAwMCwxMzgxMDAwLDk5NzAwMCw0ODAwMDAsODQ5MDAwLDkwNTAwMCwyMzQ0MDAwLDg1MDAwMCw5OTcwMDAsNjc3MDAwLDk5NzAwMCwyMDMyMDAwLDczMTAwMCw5OTcwMDAsNzU5MDAwLDQ3MTAwMCwxMzkxMDAwLDk5NzAwMCw1NjIwMDAsMTExOTAwMCw2NTAwMDAsMTIwNTAwMCwyMjMxMDAwLDc2NzAwMCwxMTcxMDAwLDI0MDAwMCw3NjMwMDAsMjExODAwMCw3NTQwMDAsMTMxODAwMCw2MzUwMDBdLCJvcHMiOjk1MTM5MH0seyJuYW1lIjoiRmluZCBpdGVtIDgwMCIsImNvZGUiOiJjb25zdCBhID0gTnVtYmVyKGk2NCA%2BPiBCaWdJbnQoMzIpKTtcbmNvbnN0IGIgPSBOdW1iZXIoaTY0ICYgQmlnSW50KDB4RkZGRkZGRkYpKTsiLCJydW5zIjpbNDg2MjAwMCwzMzkwMDAsMzIzODAwMCwxMDAwLDY4NjYwMDAsOTgzMDAwLDY2NTAwMCwyNjA2MDAwLDQ5MjcwMDAsMTYxOTAwMCwyMjI2MDAwLDE4NDcwMDAsOTgzMDAwLDIwMjcwMDAsOTgzMDAwLDE3MDgwMDAsMTY3MzAwMCwyMDIyMDAwLDU0NDMwMDAsOTgzMDAwLDI1MDEwMDAsMzk0MDAwLDE4MTQwMDAsMzI3MzAwMCwxMTc2MDAwLDEyODAwMDAsMTkwOTAwMCwxNTI3MDAwLDI0MzAwMDAsNzMxOTAwMCwxO TkwMDAwLDEwNDMwMDAsMjU2MDAwLDQ4MDQwMDAsNDIwNzAwMCwyMTQ2MDAwLDIzMzIwMDAsNzAwMDAwLDI5NTcwMDAsMzcxNzAwMCwxMzU4MDAwLDM5MDUwMDAsMTc1MTAwMCw3NTU4MDAwLDUzMzcwMDAsOTgzMDAwLDE1MzkwMDAsMTA2NjAwMCwzNTc1MDAwLDUzMzEwMDAsMTQ3MTAwMCwzNTMzMDAwLDEzODkwMDAsNzM1NzAwMCwxMjQwMDAsMjUzMTAwMCwxODk2MDAwLDE2MDUwMDAsMzQ5ODAwMCwyOTcyMDAwLDE0NzMwMDAsMjQ5NDAwMCwxMTE5MDAwLDEzMjEwMDAsMzkzOTAwMCwyODY1MDAwLDIxMjcwMDAsMTUyODAwMCwxMDU4MDAwLDIzMzIwMDAsMzkzNTAwMCwyMjk2MDAwLDk4MzAwMCwxODA0MDAwLDE5NjgwMDAsNzMzMDAwMCwxODEyMDAwLDI1MjEwMDAsMTQxMDAwMCwyMjYwMDAwLDYxNjAwMDAsMTUxMDAwMCwyNTM3MDAwLDE2NTIwMDAsOTgzMDAwLDQyMjMwMDAsMjIwODAwMCwxMTEwMDAwLDMzNTcwMDAsMTMwNzAwMCwzNTM2MDAwLDcyMzYwMDAsMTUzOTAwMCwzMzQ0MDAwLDY2MTAwMCwxNTc3MDAwLDcwMDEwMDAsMTU4NDAwMCwzOTA4MDAwLDEzNzEwMDBdLCJvcHMiOjI1NTkzNDB9XSwidXBkYXRlZCI6IjIwMjUtMDMtMDhUMTQ6Mzg6NDcuNTgyWiJ9)) - Added two new util functions to convert MONTH_DAY_NANO Intervals in Int32Array back to objects - Fixed failing tests - Previous work in #43117 (Credits: @handstuyennn and @hangxingliu) ### Are these changes tested? Yes Closes #43117 #43118 -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
