GH-47657: [C++][Parquet] Check for integer overflow when coercing timestamps#49615
Conversation
|
|
wgtmac
left a comment
There was a problem hiding this comment.
Thanks for fixing this! This fix generally looks good. I've left some inline comments.
wgtmac
left a comment
There was a problem hiding this comment.
+1
Thanks a lot, @ArnavBalyan!
|
Thanks @wgtmac! Could this be merged |
|
Merged. Thanks @ArnavBalyan! |
|
Thanks @wgtmac! |
|
After merging your PR, Conbench analyzed the 0 benchmarking runs that have been run so far on merge-commit b3dcb6d. None of the specified runs were found on the Conbench server. The full Conbench report has more details. |
|
After merging your PR, Conbench analyzed the 2 benchmarking runs that have been run so far on merge-commit b3dcb6d. There were no benchmark performance regressions. 🎉 The full Conbench report has more details. |
…ng timestamps (apache#49615) ### Rationale for this change - When writing Arrow timestamps to Parquet, timestamp values are multiplied to convert units - This multiplication was performed without overflow checking which can silently write corrupt data. ### What changes are included in this PR? - Use MultiplyWithOverflowGeneric to handle/detect overflow ### Are these changes tested? - Yes ### Are there any user-facing changes? - Yes * GitHub Issue: apache#47657 Authored-by: Arnav Balyan <arnavbalyan1@gmail.com> Signed-off-by: Gang Wu <ustcwg@gmail.com>
Rationale for this change
What changes are included in this PR?
Are these changes tested?
Are there any user-facing changes?