Commits


Anthony Louis authored and GitHub committed ec44a129de2
ARROW-16738: [C++][Gandiva] Fix TO_TIMESTAMP(INTEGER) function for big integer values (#13298) When to_timestamp function gets a big value, the function returns an incorrect date due integer overflow: - TO_TIMESTAMP(1626255099[INT32]) -> '1969-12-14 04:54:53.816' The correct response would be: - TO_TIMESTAMP(1626255099[INT32]) -> '2021-07-14 09:31:39' The error is because we cast the integers to timestamp(int64) after multiplying the result for the total of millis. It is necessary to change the order and convert it to int64 before multiplying by the number of seconds Authored-by: Anthony Louis <anthony@simbioseventures.com> Signed-off-by: Pindikura Ravindra <ravindra@dremio.com>